以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  当选择关联表中的一行时如何让对应子表也自动选择这一行  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=123825)

--  作者:ZJZK2018
--  发布时间:2018/8/23 22:10:00
--  当选择关联表中的一行时如何让对应子表也自动选择这一行
当选择关联表中的一行时如何让对应子表也自动选择这一行,因为窗口中关联表没有CurrentChanged事件?
--  作者:有点蓝
--  发布时间:2018/8/23 22:16:00
--  
到子表的CurrentChanged事件写

if e.table.name = "表A"
子表的代码
elseif e.table.name = "表A.表B"
关联表的代码
end if

--  作者:ZJZK2018
--  发布时间:2018/8/24 12:07:00
--  
老师我在子表的CurrentChanged事件写:

If e.Table.Name = "收款合同信息.开票明细" Then
    If Forms("合同款项明细").Opened() Then
        If e.Table.Current IsNot Nothing Then
            Dim dr As DataRow = Tables("收款合同信息.开票明细").Current.DataRow
            Dim wz As Integer = Tables("开票明细").FindRow(dr)
            If wz >= 0 Then
                Tables("开票明细").Position = wz
            End If
        End If
    End If
End If

出现错误提示:

.NET Framework 版本:2.0.50727.8762
Foxtable 版本:2018.7.9.1
错误所在事件:收款明细,CurrentChanged
详细错误信息:
未将对象引用设置到对象的实例。


--  作者:有点蓝
--  发布时间:2018/8/24 12:24:00
--  
CurrentChanged事件还有没有其他代码?

If e.Table.Name = "收款合同信息.开票明细" Then
    If e.Table.Current IsNot Nothing Then
        Dim dr As DataRow = e.Table.Current.DataRow
        Dim wz As Integer = Tables("开票明细").FindRow(dr)
        If wz >= 0 Then
            Tables("开票明细").Position = wz
        End If
    End If
End If

--  作者:ZJZK2018
--  发布时间:2018/8/24 13:01:00
--  
没有其他代码了,老师我感觉8月份前的新版本是否有问题,以前在CurrentChanged事件中可以用的代码,现在不能用了,不知道为什么?
[此贴子已经被作者于2018/8/24 13:07:31编辑过]

--  作者:有点蓝
--  发布时间:2018/8/24 13:56:00
--  
我测试没有问题,请上传实例测试