以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  打开窗口时报错  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=140513)

--  作者:Jaime
--  发布时间:2019/9/7 10:38:00
--  打开窗口时报错

此主题相关图片如下:333.png
按此在新窗口浏览图片


Forms("新建计划").Open()


老师好!  用按钮打开窗口时报错,我试了下,如果子表无内容时报错,子表有最少一行内容就不报错,不知道我判断的对不对,请问老师这问题应该如何解决

--  作者:有点蓝
--  发布时间:2019/9/7 10:44:00
--  
afterload事件代码有问题


--  作者:Jaime
--  发布时间:2019/9/7 11:24:00
--  
谢谢蓝老师,我屏蔽了此处,错误提示不出现了。

在窗口afterload事件中的代码我贴下面,我希望实现这样的情况:
计划单和计划明细关联,我想鼠标点在(计划单.计划明细)表上某行时,  在旁边的计划明细表能找出同物资ID和单位名称的行,加载日期最近的三行显示出来,我写的代码不对,请老师指点

Dim dr1 As DataRow = Tables("计划单.计划明细").Current.DataRow
Dim dr2 As DataRow = Tables("计划明细")
If Tables("计划单.计划明细").Current IsNot Nothing Then
dr2 = DataTables("计划明细").Find("[单位名称]  = \'" & dr1("单位名称") & "\'And [物资ID] = \'" & dr1("物资ID") & "\'")
DataTables("计划明细").LoadFilter
DataTables("计划明细").load()

[此贴子已经被作者于2019/9/7 11:25:42编辑过]

--  作者:有点蓝
--  发布时间:2019/9/7 11:28:00
--  
先判断再使用。

第一行已经使用就出错了,到第三行再判断有毛用

--  作者:Jaime
--  发布时间:2019/9/7 11:56:00
--  
试着改了会,一直出错,我知道是自己基础太差图片点击可在新窗口打开查看,请老师指点下,我比对区别记住

--  作者:有点蓝
--  发布时间:2019/9/7 13:54:00
--  
If Tables("计划单.计划明细").Current IsNot Nothing Then
Dim dr1 As DataRow = Tables("计划单.计划明细").Current.DataRow
DataTables("计划明细").LoadFilter = "[单位名称]  = \'" & dr1("单位名称") & "\' And [物资ID] = \'" & dr1("物资ID") & "\'"
DataTables("计划明细").load()
end if