以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 超级郁闷的问题,能否帮我远程调试一下 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=55472) |
-- 作者:蓝色理想 -- 发布时间:2014/8/17 18:02:00 -- 超级郁闷的问题,能否帮我远程调试一下 主要是数据库是SQL server,没办法打包啊 |
-- 作者:蓝色理想 -- 发布时间:2014/8/17 18:03:00 -- 问题真心郁闷,我是有程序设计底子的,弄了一下午也没搞定 |
-- 作者:有点甜 -- 发布时间:2014/8/17 18:07:00 -- sqlserver需要安装才能使用的,只要你搭建了一个外网可以访问的sqlserver,项目就是不需要打包数据库的, |
-- 作者:蓝色理想 -- 发布时间:2014/8/17 18:09:00 -- 问题描述如下: 我要实现 主表--》二级明细表——》三级明细表的联动 可用于联动的依据为四列数据 开发项目 开发产品 合同名称 乙方 1、点击主表数据行时,二级明细表 三级明细表 按照主表数据的“乙方”进行过滤并显示数据 2、点击二级明细表具体数据行时,三级明细表按照 当前选定行的 开发项目 开发产品 合同名称 乙方 进行过滤并显示数据 问题是: 点击二级明细表中某些 没有三级明细数据的行时,二级明细表的显示情况 由有数据变为 无任何数据
|
-- 作者:蓝色理想 -- 发布时间:2014/8/17 18:10:00 -- 全局事件CurrentChanged代码如下: If e.Table.Form Is Nothing Then \'判断一下是不是在数据表是不是在Form中 \' MessageBox.Show("不在Form中") If Forms("乙方情况汇总表").Opened Then If e.Table.Current Is Nothing Or DataTables(e.Table.Name).DataCols.Contains("乙方")=False Then \' MessageBox.Show(e.Table.Name & " noting [乙方] = \'" & e.Table.Current("乙方") & "\'") Tables("乙方情况汇总表_Table1").Filter = "[乙方] = \'\'" Else \' MessageBox.Show(e.Table.Name & " not noting [乙方] = \'" & e.Table.Current("乙方") & "\'") Tables("乙方情况汇总表_Table1").Filter = "[乙方] = \'" & e.Table.Current("乙方") & "\'" End If End If If Forms("付款情况").Opened Then If e.Table.Current Is Nothing Or DataTables(e.Table.Name).DataCols.Contains("乙方")=False Then Tables("付款情况_Table1").Filter = "[乙方] = \'\'" Forms("付款情况").Text= "付款情况:当前未选定有效行" Else Tables("付款情况_Table1").Filter = "[乙方] = \'" & e.Table.Current("乙方") & "\'" _ & " and [付款金额] not is null and [付款金额]<> \'0\'" Tables("付款情况_Table1").Sort ="所属期间 DESC" Forms("付款情况").Text= "全部合同-付款情况" End If End If If Forms("产值情况").Opened Then If e.Table.Current Is Nothing Or DataTables(e.Table.Name).DataCols.Contains("乙方")=False Then Tables("产值情况_Table1").Filter = "[乙方] = \'\'" Forms("产值情况").Text= "产值情况:当前未选定有效行" Else Tables("产值情况_Table1").Filter = "[乙方] = \'" & e.Table.Current("乙方") & "\'" _ & " and ([申报产值] not is null or [本月付款比例] not Is null) and [是否差额调整]=false and [是否预估数]=false" Tables("产值情况_Table1").Sort ="所属期间 DESC" Forms("产值情况").Text= "全部合同-产值情况" End If End If Else \'在Form中的Row发生变化 If e.Table.Focused Then If e.Table.Name = "乙方情况汇总表_Table1" Then If Forms("付款情况").Opened Then If e.Table.Current Is Nothing Then \'如果Current为Nothing Tables("付款情况_Table1").Filter = "[乙方] = \'\'" Forms("付款情况").Text="付款情况" Else Tables("付款情况_Table1").Filter = "[开发项目] = \'" & e.Table.Current("开发项目") & "\'" _ & " and " & "[开发产品] = \'" & e.Table.Current("开发产品") & "\'" _ & " and " & "[合同名称] = \'" & e.Table.Current("合同名称") & "\'" _ & " and " & "[乙方] = \'" & e.Table.Current("乙方") & "\'" _ & " and [付款金额] not is null and [付款金额]<> \'0\'" Tables("付款情况_Table1").Sort ="所属期间 DESC" Forms("付款情况").Text= "单合同-付款情况" End If End If If Forms("产值情况").Opened Then If e.Table.Current Is Nothing Then \'如果Current为Nothing Tables("产值情况_Table1").Filter = "[乙方] = \'\'" Else Tables("产值情况_Table1").Filter = "[开发项目] = \'" & e.Table.Current("开发项目") & "\'" _ & " and " & "[开发产品] = \'" & e.Table.Current("开发产品") & "\'" _ & " and " & "[合同名称] = \'" & e.Table.Current("合同名称") & "\'" _ & " and " & "[乙方] = \'" & e.Table.Current("乙方") & "\'" _ & " and ([申报产值] not is null or [本月付款比例] not Is null) and [是否差额调整]=false and [是否预估数]=false" Tables("产值情况_Table1").Sort ="所属期间 DESC" Forms("产值情况").Text= "单合同-产值情况" End If End If Else \'若窗口=乙方情况汇总表时的 else Exit Sub End If \'若窗口=乙方情况汇总表时的 end if Else \'数据表所在窗口为focus的 else Exit Sub End If \'数据表所在窗口为focus的 end if End If |
-- 作者:jianjingmaoyi -- 发布时间:2014/8/17 18:27:00 -- 为啥用全局事件?表是动态加载的? |
-- 作者:蓝色理想 -- 发布时间:2014/8/17 18:28:00 -- 用最无奈的办法,自己搞定了 汗。。。。。。。。。。。。 真心呼唤老大弄一个调试器啊 在负责情况下,没调试器,跨表的事件处理 真的是一个噩梦啊
|