以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助][求助]为何调试过程中会出错? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=53504) |
-- 作者:瞩望星空 -- 发布时间:2014/7/9 14:57:00 -- [求助][求助]为何调试过程中会出错? 先按“对账”,把所有“出库”表的记录标志为“已对账”, 再把“测试”窗口中的左下角中的“出库”表,逻辑列清空,再按“对账”按钮时,出错了。 [此贴子已经被作者于2014-7-9 14:58:09编辑过]
|
-- 作者:有点甜 -- 发布时间:2014/7/9 14:59:00 -- 报什么错。 |
-- 作者:Bin -- 发布时间:2014/7/9 14:59:00 -- 文件呢? |
-- 作者:瞩望星空 -- 发布时间:2014/7/9 15:03:00 -- 现在不能上传附件了。 我上传了好几次,都没有反应。 我这边电脑没有问题,我用QQ邮箱测试过,能很快上传附件。 |
-- 作者:有点甜 -- 发布时间:2014/7/9 15:04:00 -- 代码改一下
SystemReady = False |
-- 作者:瞩望星空 -- 发布时间:2014/7/9 15:11:00 -- 加了这二个语句后,正常了。 但不知道原来的项目文件中是哪个事件代码引起错误的?
|
-- 作者:有点甜 -- 发布时间:2014/7/9 15:17:00 -- CurrentChanged 的代码引发的错误 |
-- 作者:瞩望星空 -- 发布时间:2014/7/9 15:25:00 -- 哦,谢谢。我去加一些判断语句。 还有,能不能看一看原贴? 我这个处理过程还需要加入其他处理,所以再好能按我的执行过程来修改: 我用了"tables",而没有用“datatables”,我想记录多时,先筛选需要处理的数据,这样能少一些记录数。 Dim mcs As List(Of String) \'领料部门集合 mcs = DataTables("领料部门").GetValues("部门名称","[是否对账] = true") ‘根据领料部门表的“是否对账”,确定是否对出库主表进行标志 For Each mc As String In mcs \'按名称循环 Tables(e.form.name & "_出库明细表").StopRedraw Tables(e.form.name & "_出库明细表").Filter = "领用部门 = \'" & mc & "\' and 已对账 = false" If Tables(e.form.name & "_出库明细表").Rows.Count>0 \'有明细表记录才进行 Tables(e.form.name & "_出库主表").Filter = "领用部门 = \'" & mc & "\' and 已对账 = false" \'Return For Each r As Row In Tables(e.form.name & "_出库主表").Rows r("已对账") = True Next \'Return End If Tables(e.form.name & "_出库明细表").ResumeRedraw Next
|
-- 作者:瞩望星空 -- 发布时间:2014/7/9 15:39:00 -- 回复7楼贴, CurrentChanged 的代码已想到Tables(e.form.name & "_出库主表")的记录数为0,所以没有记录时, 右下方的Tables(e.form.name & "_出库明细表")应该为空的。 If Tables(e.form.name & "_出库主表").Rows.Count > 0 Then Tables(e.form.name & "_出库明细表").Filter = "出库单编号 = \'" & Tables(e.form.name & "_出库主表").Current("出库单编号") & "\'" Else Tables(e.form.name & "_出库明细表").Filter = "2 = 1" End If
|
-- 作者:有点甜 -- 发布时间:2014/7/9 15:39:00 -- 加入其他处理,也是这样写,有什么问题吗?你那样写代码不合规范。 |