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


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

主题:[求助]非关联表之间的数据同步问题

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
[求助]非关联表之间的数据同步问题  发帖心情 Post By:2023/4/5 16:23: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 IsNot Nothing Then
            dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name)
        
End If
End
 Select
求教一个问题,如果产品表中产品名称列是一个分层表头,比如列名为产品名称_A,而库存表中的列名是产品名称,示例中的代码要如何调整。新手不太会,求赐教。

[此贴子已经被作者于2023/4/5 16:28:15编辑过]

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/6 10:46:00 [显示全部帖子]

修改后没有效果是怎么回事?编写的代码如下:
Select Case e.DataCol.name
    Case "姓名"
        Dim dt As DataRow = DataTables("LOA").Find("姓名 = '" & e.OldValue & "'")
        If dt Is Nothing Then
            dt = DataTables("LOA").AddNew()
            dt("姓名") = e.DataRow("姓名")
            dt("工龄_年") = e.DataRow("工龄") 
        Else
            dt("姓名") = e.DataRow("姓名")
        End If
    Case "工龄"
        Dim dt As DataRow = DataTables("LOA").Find("姓名 = '" & e.DataRow("姓名") & "'")
        If dt IsNot Nothing Then
            dt(e.DataCol.Name) = e.DataRow(e.DataCol.Name)
        End If
End Select
请老师指点
[此贴子已经被作者于2023/4/6 11:50:52编辑过]

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/6 12:10:00 [显示全部帖子]

按照示例里说的,示例里的产品表相当于我的A表,库存表相当我的B表,我的代码是放在A表,工龄_年是A表里的,B表里的列是工龄

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/6 14:23:00 [显示全部帖子]

是把A表数据填入到B表

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/6 14:31:00 [显示全部帖子]

还是不行,A表的工龄输入数据后,B表工龄那里还是没有数据,之前试过把两个列名改成一样是没有问题的
[此贴子已经被作者于2023/4/6 14:31:41编辑过]

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/6 14:33:00 [显示全部帖子]

我在想是不是这段代码的问题,dt(e.DataCol.Name) = e.DataRow(e.DataCol.Name)

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/6 14:35:00 [显示全部帖子]

会不会是这一段代码的问题
dt(e.DataCol.Name) = e.DataRow(e.DataCol.Name)

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/6 17:46:00 [显示全部帖子]

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

[此贴子已经被作者于2023/4/6 17:57:28编辑过]

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


加好友 发短信
等级:幼狐 帖子:85 积分:722 威望:0 精华:0 注册:2018/5/2 16:58:00
  发帖心情 Post By:2023/4/7 9:24:00 [显示全部帖子]

谢谢蓝老师,虽然我的分层表头没有改回来,但是通过你给的代码我自己摸索解决了。

 回到顶部