Foxtable(狐表)用户栏目专家坐堂 → 关于多表内容同步的问题


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

主题:关于多表内容同步的问题

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


加好友 发短信
等级:婴狐 帖子:20 积分:366 威望:0 精华:0 注册:2018/1/24 16:26:00
关于多表内容同步的问题  发帖心情 Post By:2018/11/30 16:01:00 [只看该作者]

老师,您好,我这有个项目,有“设计部出图”和商品信息总表两个表格,要求当在设计部出图表中更增加、删除或更改内容后,商品信息总表中的内容能事实更改,且商品信息总表中的内容是设计部出图表中内容的唯一值(内容值不能多也不能少),我写了一段代码,当代码中用到Find的时候,软件运行是能满足我的要求的,但是将代码中的Find换成SQLFind时,商品信息总表中的内容就不是我想要的了,您帮我看看要
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1 - 副本.foxdb

怎么改可以吗?谢谢了,具体代码请看附件。

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


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

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1 - 副本.foxdb

 


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


加好友 发短信
等级:婴狐 帖子:20 积分:366 威望:0 精华:0 注册:2018/1/24 16:26:00
  发帖心情 Post By:2018/11/30 17:33:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:4.png
图片点击可在新窗口打开查看,老师,我在“设计部出图”表中修改了第三行第二列,以及复制粘贴了第7、8、9行,结果“商品信息总表”中的数据出现了重复值了,而且DM-H14从动轴1SUS304这个值被删除了,您再帮我看看吧,这个目标还是有点费脑细胞的。

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


加好友 发短信
等级:婴狐 帖子:20 积分:366 威望:0 精华:0 注册:2018/1/24 16:26:00
  发帖心情 Post By:2018/11/30 17:33:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:5.png
图片点击可在新窗口打开查看

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


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

代码没问题,删除全部表格数据重新测试。

 

 


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


加好友 发短信
等级:婴狐 帖子:20 积分:366 威望:0 精华:0 注册:2018/1/24 16:26:00
  发帖心情 Post By:2018/11/30 21:05:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看

还是不行哦,如图,我在“设计部出图”表中复制粘贴了第6行,然后“商品信息总表”中自动增加了第6行,这一行与第3行重复了,我是希望“商品信息总表”中的数据是“设计部出图”表中的数据的唯一值,老师,再帮我看看吧,谢谢了!


 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110581 积分:562801 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/11/30 22:09:00 [只看该作者]

请重新上传有问题的实例

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


加好友 发短信
等级:婴狐 帖子:20 积分:366 威望:0 精华:0 注册:2018/1/24 16:26:00
  发帖心情 Post By:2018/11/30 22:44:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1 - 副本.foxdb

实例就是之前您发给我的,我没改,我看了一下,怀疑是Delete语句没起到作用

 回到顶部
帅哥,在线噢!
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110581 积分:562801 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/11/30 23:36:00 [只看该作者]

Dim tuhao As String=e.DataRow("图号")
Dim mingcheng As String=e.DataRow("名称")
Dim caizhi As String= e.DataRow("材质")
Dim chuli As String= e.DataRow("处理")
Dim chuku As Integer=0

If tuhao="" Then
    tuhao="V"
End If
If mingcheng="" Then
    mingcheng="V"
End If
If caizhi="" Then
    caizhi="V"
End If
If chuli="" Then
    chuli="V"
End If

e.DataRow("零件全称")=tuhao & mingcheng & caizhi & chuli

Select Case e.DataCol.name
    Case "零件全称"
        Dim dr As DataRow
        Dim cnt As Integer = e.DataTable.SQLCompute("count(零件全称)","零件全称 = '" & e.OldValue & "'")
        If cnt <= 1 Then
            dr = DataTables("商品信息总表").sqlFind("零件全称 = '" & e.OldValue & "'")
            If dr IsNot Nothing Then
                '在 商品信息总表 中 找到了 零件全称 的 旧值
                dr.Delete() '将 商品信息总表 中的 旧值删除
                dr.Save
            End If
            
        End If
        dr = DataTables("商品信息总表").sqlFind("零件全称 = '" & e.NewValue & "'")
        If dr Is Nothing Then
            '在 商品信息总表 中 没找到 零件全称 的 新值,则创建新的行,将 设计部出图 中的信息写入 商品信息总表 中
            dr = DataTables("商品信息总表").AddNew()
        End If
        dr("图号") = e.DataRow("图号")
        dr("名称") = e.DataRow("名称")
        dr("材质") = e.DataRow("材质")
        dr("处理") = e.DataRow("处理")
        dr("零件全称") = e.NewValue
        dr.save
        e.DataRow.save
End Select

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


加好友 发短信
等级:婴狐 帖子:20 积分:366 威望:0 精华:0 注册:2018/1/24 16:26:00
  发帖心情 Post By:2018/12/1 9:48:00 [只看该作者]

这下可以了,非常感谢

 回到顶部