Foxtable(狐表)用户栏目专家坐堂 → 非关联表之间的数据同步


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

主题:非关联表之间的数据同步

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


加好友 发短信
等级:小狐 帖子:380 积分:3094 威望:0 精华:0 注册:2019/4/13 16:10:00
非关联表之间的数据同步  发帖心情 Post By:2020/4/11 22:22:00 [只看该作者]

老师您好,我想问下,因为库存表是采用动态加载每页显示50行,商品资料修改了其中一个产品名称,但是库存表在第三页没有加载出来,用下面的代码无法同步更新修改后的产品名称


设计步骤

1、将产品表的DataColChanged事件代码设置为:

Select Case e.DataCol.name
    Case "产品编号"
        Dim dr As DataRow = DataTables("库存").Find("产品编号 = '" & e.OldValue & "'")
        
If dr Is Nothing Then
            dr = DataTables(
"
库存").AddNew()
            dr(
"
产品编号") = e.DataRow("产品编号")
            dr(
"
产品名称") = e.DataRow("产品名称")
            dr(
"
产品规格") = e.DataRow("产品规格")
        Else
            dr(
"
产品编号") = e.DataRow("产品编号")
        End If
    Case 
"
产品名称","产品规格"
        Dim dr As DataRow = DataTables(
"
库存").Find("产品编号 = '" & e.DataRow("产品编号"& "'")
        If dr IsNot Nothing Then
            dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name)
        
End If
End
 Select

2、将产品表的DataRowDeleting事件代码设置为:

Dim dr As DataRow = DataTables("库存").Find("产品编号 = '" & e.DataRow("产品编号"& "'")
If
 dr IsNot Nothing Then
    dr.
Delete()

End
 If


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


加好友 发短信
等级:小狐 帖子:380 积分:3094 威望:0 精华:0 注册:2019/4/13 16:10:00
  发帖心情 Post By:2020/4/11 23:55:00 [只看该作者]

改成下面代码好像有效,老师帮忙看看下面代码可以吗

Select Case e.DataCol.name
    Case "产品编号"
        Dim dr As DataRow = DataTables("库存").Find("产品编号 = '" & e.OldValue & "'")
        If dr Is Nothing Then
            dr = DataTables("库存").AddNew()
            dr("产品编号") = e.DataRow("产品编号")
            dr("产品名称") = e.DataRow("产品名称")
            dr("产品规格") = e.DataRow("产品规格")
        Else
            dr("产品编号") = e.DataRow("产品编号")
        End If
    Case "产品名称","产品规格"
        Dim dr As DataRow = DataTables("库存").Find("产品编号 = '" & e.DataRow("产品编号") & "'")
        If dr Is Nothing Then
            dr = DataTables("库存").SqlFind("商品编号 = '" & e.DataRow("商品编号") & "'")
        End If        
        If dr IsNot Nothing Then
            dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name)
        End If
End Select

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


加好友 发短信
等级:超级版主 帖子:106680 积分:542589 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/4/12 21:48:00 [只看该作者]

就这样用

 回到顶部