Foxtable(狐表)用户栏目专家坐堂 → [求助]求教多表在使用光标同步定位的问题


  共有3433人关注过本帖树形打印复制链接

主题:[求助]求教多表在使用光标同步定位的问题

帅哥哟,离线,有人找我吗?
zxy_jedi
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:11 积分:346 威望:0 精华:0 注册:2012/4/9 19:06:00
[求助]求教多表在使用光标同步定位的问题  发帖心情 Post By:2014/8/28 16:59:00 [只看该作者]

请教,已使用以下语句实现在操作“电梯信息”表时其他几个表(无关联)光标定位,请问如果要想实现在操作以下任意一个表时所有的表的光标都能定位该怎么做?

If e.Table.Current Is Nothing Then
    Return
End If

Dim wz As Integer
Dim dr As DataRow
dr = DataTables("电梯信息").Find("[设备ID] = '" & e.Table.Current("设备ID") & "'")
If dr IsNot Nothing
    wz = Tables("电梯信息").FindRow(dr)
    If wz >= 0
        Tables("设备技术参数").Position = wz
        Tables("定期检验时间").Position = wz
        Tables("设备注册登记信息").Position = wz
        Tables("定期检验时间查询").Position = wz
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/8/28 17:00:00 [只看该作者]

每个表的图片点击可在新窗口打开查看PositionChanged事件都写上代码

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/28 17:03:00 [只看该作者]

 没理解你的意思,其它表,定位到对应的哪一行?

 回到顶部
帅哥哟,离线,有人找我吗?
zxy_jedi
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:11 积分:346 威望:0 精华:0 注册:2012/4/9 19:06:00
  发帖心情 Post By:2014/9/1 11:08:00 [只看该作者]

就是操作哪张表都能使这些表的光标对应到当前行“设备ID”的那一行,我无论操作哪张表光标指定的都是我操作上一张表时编辑的同一个“设备ID”那行。

按2楼的方法试了试。总是有冲突,程序无响应了。我是放在CurrentChanged事件里了。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/1 11:19:00 [只看该作者]

 真心没看到你想说什么

 

If e.Table.Current Is Nothing Then
    Return
End If


Dim wz As Integer
Dim dr As DataRow
Dim filter As String = "[设备ID] = '" & e.Table.Current("设备ID") & "'"
wz = Tables("电梯信息").FindRow(filter)
If wz >= 0
    Tables("电梯信息").Position = wz 
End If

wz = Tables("设备技术参数").FindRow(filter)
If wz >= 0
    Tables("设备技术参数").Position = wz 
End If

wz = Tables("定期检验时间").FindRow(filter)
If wz >= 0
    Tables("定期检验时间").Position = wz 
End If

wz = Tables("设备注册登记信息").FindRow(filter)
If wz >= 0
    Tables("设备注册登记信息").Position = wz 
End If

wz = Tables("定期检验时间查询").FindRow(filter)
If wz >= 0
    Tables("定期检验时间查询").Position = wz 
End If


 回到顶部