以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]重新加载当前窗口  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=150821)

--  作者:crazyfengyu
--  发布时间:2020/6/8 16:42:00
--  [求助]重新加载当前窗口
我再领料单的 positionChanged 中写了下面的代码,这三张表在其他窗口有但是里面的代码只需要在“生产出入库”中使用:理想效果根据选择不同的领料单,显示当前领料单里面所有明细的领料情况,直接使用关联表的话,只显示
了一条明细的领料情况,所有领料情况没有使用关联表,手动过滤,目前按照下面代码已经实现,但是使用页面自制 刷新按钮开关窗口就会报错,但是从其他窗口切入就是正常的,只有刷新操作会报错
错误提示:
.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2019.10.26.1
错误所在事件:领料明细,PositionChanged
详细错误信息:
未将对象引用设置到对象的实例。


Dim tb As WinForm.TabControl = e.Form.Controls("TabControl2")
If Forms.ActiveForm.Name = "生产出入库" Then
    If tb.SelectedIndex = 1 Then
        Dim lld As Row = Tables("生产控制列表.领料单").Current
        If lld IsNot Nothing Then
            Dim idstring As String = "("
            For Each llmx As DataRow In DataTables("领料明细").Select("[id]=\'" & lld("_Identify") & "\'")
                idstring = idstring & "\'" & llmx("_Identify")  & "\',"
            Next
            idstring = idstring.SubString(0,idstring.Length -1)
            idstring = idstring & ")"
            Tables("领料情况").Filter = "[id] In " & idstring
            If lld("模式") = "超领" Then
                Tables("生产控制列表.领料单.领料明细").Cols("超领数量").Visible = True
            Else
                Tables("生产控制列表.领料单.领料明细").Cols("超领数量").Visible = False
            End If
        Else
            Tables("领料情况").Filter = "false"
        End If
    End If
End If

--  作者:有点蓝
--  发布时间:2020/6/8 16:50:00
--  
Dim tb As WinForm.TabControl = e.Form.Controls("TabControl2")
If Forms.ActiveForm.Name = "生产出入库" Then

改为


If Forms("生产出入库").opened andalso Forms.ActiveForm.Name = "生产出入库" Then
Dim tb As WinForm.TabControl = Forms("生产出入库").Controls("TabControl2")

--  作者:crazyfengyu
--  发布时间:2020/6/8 17:05:00
--  
还是会报下面错误,会不会因为我的那3张表在生产出入库的一个tab控件里面的第二页,但是我也加了    
Dim tb As WinForm.TabControl = Forms("生产出入库").Controls("TabControl1")
    If tb.SelectedIndex = 1 Then
   end if
才会进行操作

.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2019.10.26.1
错误所在事件:领料明细,PositionChanged
详细错误信息:
未将对象引用设置到对象的实例。

--  作者:有点蓝
--  发布时间:2020/6/8 17:21:00
--  
看是那一句代码出错,调试技巧:http://www.foxtable.com/webhelp/scr/1485.htm
--  作者:crazyfengyu
--  发布时间:2020/6/8 17:25:00
--  
去掉了 AndAlso Forms.ActiveForm.Name = "生产出入库" 就正常了