以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 窗体中动态加载失败 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=187408) |
-- 作者:creastzh -- 发布时间:2023/7/15 14:55:00 -- 窗体中动态加载失败 我在进行窗体动态加载后出现无法满足条件的加载项时,屏幕出现如下提示,不知如何处理,请狐友帮忙,谢谢! |
-- 作者:creastzh -- 发布时间:2023/7/15 14:57:00 -- 补充一下:如果有满足条件的数据行加载正常,只有当不存在满足给定条件的数据行时,窗体才出现这个提示 |
-- 作者:有点蓝 -- 发布时间:2023/7/15 15:07:00 -- 调试哪一句代码出错:http://www.foxtable.com/webhelp/topics/1485.htm 这种提示就是没有做判断是否【存在满足给定条件的数据行】,使用了空值的对象
|
-- 作者:creastzh -- 发布时间:2023/7/15 15:21:00 -- 问题就出在下面红色标记的语句上: \'1 按RadioButton的要求完成数据加载(这个已经在CheckedChanged中完成刷新 \'2 按各选项组合框、文本框对加载后的数据进行筛选 \'Dim wo As e.Form.Controls("TBox_WO").Value \'e.Form.Controls("cmbProduct").Value = Nothing \'Dim PN As e.form.controls("TBox_PN").Value \'Dim Res As e.form.controls("TBox_Res").Value Dim Filter As String With e.Form.Controls("TBox_WO") If .Value IsNot Nothing Then Filter = "[WO] like \'%" & .Value.toupper.trim & "%\'" \'[型号] Like \'A[*]%\' End If End With With e.Form.Controls("TBox_PN") If .Value IsNot Nothing Then If Filter > "" Then Filter = Filter & " And " End If Filter = Filter & "[PartID] like \'%" & .Value.ToUpper.Trim & "%\'" End If End With With e.Form.Controls("TBox_Res") If .Value IsNot Nothing Then If Filter > "" Then Filter = Filter & " And " End If Filter = Filter & "ResID = \'" & .Value.ToUpper.trim & "\'" End If End With With e.Form.Controls("ComboBox2") If .Value IsNot Nothing Then If Filter > "" Then Filter = Filter & " And " End If Filter = Filter & "处理班组 = \'" & .Value & "\'" End If End With With e.Form.Controls("ComboBox3") If .Value IsNot Nothing Then If Filter > "" Then Filter = Filter & " And " End If Filter = Filter & "责任班组 = \'" & .Value & "\'" End If End With With e.Form.Controls("StartDate") If .Value IsNot Nothing Then If Filter > "" Then Filter = Filter & " And " End If Filter = Filter & "发现时间 >= #" & .Value & "#" End If End With With e.Form.Controls("EndDate") If .Value IsNot Nothing Then If Filter > "" Then Filter = Filter & " And " End If Filter = Filter & "发现时间 < #" & .Value.adddays(1) & "#" End If End With \'If e.Form.Controls("rdoYifu").Checked = True Then\' 如果付款状态选择了"已付" \' If Filter > "" Then \' Filter = Filter & " And " \' End If \' Filter = Filter & "已付款 = True" \'End If \'If e.Form.Controls("rdoWeifu").Checked = True Then\' 如果付款状态选择了"未付" \' If Filter > "" Then \' Filter = Filter & " And " \' End If \' Filter = Filter & "已付款 = False Or 已付款 Is Null" \'End If If Filter > "" Then Tables("AddtionalWOData").Filter = Filter End If 我知道就是这个问题,如果是Table的显示,我知道如何处理,但这个加载我找了帮助,还是没有解决方案 [此贴子已经被作者于2023/7/15 15:22:22编辑过]
|
-- 作者:creastzh -- 发布时间:2023/7/15 15:25:00 -- 我目前的窗体窗口方案是,仅加载我点选的部分,而非全部加载+显示点选的部分,如果是后者,我能解决了,但前者我不知道如何屏蔽这个错误 |
-- 作者:有点蓝 -- 发布时间:2023/7/15 15:33:00 -- 弹出合成的条件看看:msgbox(Filter) 看错误提示应该不是这句代码的问题。勾选“显示详细信息”显示的是什么事件出错?
|
-- 作者:creastzh -- 发布时间:2023/7/15 15:56:00 -- 能帮我再看一下吗?这个我解决不了呀,谢谢! |
-- 作者:有点蓝 -- 发布时间:2023/7/15 15:58:00 -- 弹出合成的条件看看啊,看看条件是否正常:msgbox(Filter) 勾选“显示详细信息”显示的是什么事件出错都不会?
|
-- 作者:creastzh -- 发布时间:2023/7/15 21:04:00 -- 看起来不应该有问题呀,这个是加载条件,不是表内筛选呀 Msgbox.show(Filter): 发现时间 >= #2023-07-16# And 发现时间 < #2023-07-22# .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2022.8.18.1 错误所在事件:AddtionalWOData,CurrentChanged 详细错误信息: Object reference not set to an instance of an object. |
-- 作者:chnfo -- 发布时间:2023/7/16 19:09:00 -- if t.current isnot nothing then …… end if
|