以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 选最后一行的时候提示,未将对象引用设置到对象的实例。 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=125734) |
||||
-- 作者:yetle -- 发布时间:2018/10/5 14:08:00 -- 选最后一行的时候提示,未将对象引用设置到对象的实例。 DoubleClick: If Forms("生产制造单").Opened Then Dim tb As Table = Tables("选择销售明细尺码_Table1") Dim tbl1 As Table = Tables("生产制造单_Table1") Dim pd As WinForm.ComboBox = Forms("生产制造单").Controls("ComboBox7") Dim dt2 As DataTable = Tables("生产制造单_Table2").DataTable For i As Integer=tb.BottomPosition To tb.TopPosition Step -1 Dim str1 As String = "XS,S,M,L,XL,2XL,3XL,4XL,5XL,6XL,F,XF" Dim str2 As String = "65,70,75,80,85,90,95,100" Dim fdr As DataRow = dt2.Find("销售明细行ID = \'" & tb.Current("销售明细行ID") & "\' ") If fdr Is Nothing Then fdr = dt2.AddNew fdr("生产单号") = tbl1.Current("生产单号") fdr("订单号")=tb.Current("订单号") fdr("款号")=tb.Current("款号") fdr("颜色")=tb.Current("颜色") fdr("杯型")=tb.Current("杯型") fdr("要求货期")=tb.Current("要求货期") fdr("款号ID")=tb.Current("款号ID") fdr("物供号")=tb.Current("物供号") fdr("销售明细行ID")=tb.Current("销售明细行ID") tb.Current("已安排制单")=True For Each s As String In str1.Split(",") If tb.Cols.Contains("衣裤尺码明细_" & s) Then fdr("衣裤尺码明细_" & s)=val(tb.Current("衣裤尺码明细_" & s)) End If Next For Each s As String In str2.Split(",") If tb.Cols.Contains("文胸尺码明细_" & s) Then fdr("文胸尺码明细_" & s)=val(tb.Current("文胸尺码明细_" & s)) End If Next End If Next Syscmd.Table.Lock() dt2.save End If Forms("选择销售明细尺码").Close()
|
||||
-- 作者:有点甜 -- 发布时间:2018/10/5 16:14:00 -- DoubleClick 事件,在最开始的地方,加入代码
e.cancel = true |
||||
-- 作者:yetle -- 发布时间:2018/10/6 11:38:00 -- 还是有这个提示: .NET Framework 版本:2.0.50727.3655 Foxtable 版本:2018.9.9.1 错误所在事件:销售明细尺码,DoubleClick 详细错误信息: 未将对象引用设置到对象的实例。 |
||||
-- 作者:有点甜 -- 发布时间:2018/10/6 11:43:00 -- 那就是 tbl1.Current 或者 tbl.Current 有问题,也就是对应的表,是空白的,没有数据。
如果自己无法排错,上传实例测试。 |
||||
-- 作者:yetle -- 发布时间:2018/10/6 11:50:00 -- tbl.CurrentChanged没有代码 tbl.AfterLoad代码: If Forms("生产制造单").Opened Then Dim tbl As Table = Tables("生产制造单_Table1") Dim pd As WinForm.ComboBox = Forms("生产制造单").Controls("ComboBox7") If Tables("选择销售明细尺码_Table1").current IsNot Nothing Tables("选择销售明细尺码_Table1").Filter = "[款号ID]= \'" & tbl.current("款号ID") & "\'and [已安排制单] = false " End If End If tbl1.CurrentChanged代码: If Forms("生产制造单").Opened() Dim t As Table = Tables("生产制造单_table2") Dim d As Table = Tables("生产制造单_table1") If d.Current Is Nothing Then t.Filter = "False" Else If d.Current("生产单号") IsNot Nothing Then t.Filter = "生产单号 = \'" & d.Current("生产单号") & "\'" End If End If |
||||
-- 作者:有点甜 -- 发布时间:2018/10/6 11:52:00 -- 上传具体实例测试。 |
||||
-- 作者:yetle -- 发布时间:2018/11/22 17:26:00 -- 把实例和数据导进来了,麻烦帮我看看,生产制造单--选择订单按钮
|
||||
-- 作者:有点甜 -- 发布时间:2018/11/22 19:08:00 -- 我测试了一下你给的例子,测试没问题。请说明下面这个例子的测试步骤。
|
||||
-- 作者:yetle -- 发布时间:2018/11/23 9:22:00 -- 是同时选了所有行的时候,或者选完之后,选到最后一行,点选择后会弹出提示, 另外每个尺码的数量没有给过来
[此贴子已经被作者于2018/11/23 9:32:57编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2018/11/23 9:24:00 -- 以下是引用yetle在2018/11/23 9:22:00的发言:
是同时选了多行的时候,点选择后会弹出提示
测试也没有问题。 |