Foxtable(狐表)用户栏目专家坐堂 → 重复问题


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

主题:重复问题

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


加好友 发短信
等级:婴狐 帖子:32 积分:318 威望:0 精华:0 注册:2018/7/26 21:12:00
重复问题  发帖心情 Post By:2018/8/2 21:49:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:捕获11.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:捕获12.jpg
图片点击可在新窗口打开查看
老师,我从检验明细(逻辑列选项形式)自动生成到入库明细,怎样编写代码避免入库明细重复?

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


加好友 发短信
等级:婴狐 帖子:32 积分:318 威望:0 精华:0 注册:2018/7/26 21:12:00
  发帖心情 Post By:2018/8/2 21:50:00 [显示全部帖子]


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

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


加好友 发短信
等级:婴狐 帖子:32 积分:318 威望:0 精华:0 注册:2018/7/26 21:12:00
  发帖心情 Post By:2018/8/3 10:34:00 [显示全部帖子]


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

图片点击可在新窗口打开查看此主题相关图片如下:捕获1.jpg
图片点击可在新窗口打开查看
老师,我尝试几种编辑,还是会重复产生

 


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


加好友 发短信
等级:婴狐 帖子:32 积分:318 威望:0 精华:0 注册:2018/7/26 21:12:00
  发帖心情 Post By:2018/8/3 11:04:00 [显示全部帖子]


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

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

图片点击可在新窗口打开查看此主题相关图片如下:捕获.jpg
图片点击可在新窗口打开查看
老师,我是从A表写第一段代码,生成到B表,但是出现了重复问题,我编写了图3的代码来防止,功能无法实现
[此贴子已经被作者于2018/8/3 11:05:52编辑过]

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


加好友 发短信
等级:婴狐 帖子:32 积分:318 威望:0 精华:0 注册:2018/7/26 21:12:00
  发帖心情 Post By:2018/8/3 11:17:00 [显示全部帖子]

If e.DataCol.Name = "处理结果_入库" AndAlso e.DataRow("处理结果_入库") = True Then
    Dim nma() As String = {"送货单号","收料编号","采购编号","物料代码","物料描述","规格型号","单位","来料数量","入库数量","供应商简称"} 'A表数据来源列
    Dim nmb() As String = {"送货单号","收料编号","采购编号","物料代码","物料描述","规格型号","单位","来料数量","入库数量","供应商简称"} 'B表数据接收列
    Dim dr As DataRow = DataTables("入库明细").AddNew
    For i As Integer = 0 To nma.Length - 1
        dr(nmb(i)) = e.DataRow(nma(i))
    Next
End If

 

 

If e.DataCol.Name = "收料编号" Then  '如果内容发生变动的是品名列

    If e.NewValue Is Nothing Then  '如果新值是空白,也就是品名列的内容为空

        e.DataRow("采购编号") = Nothing '那么清空此行单价列的内容

        e.DataRow("物料代码") = Nothing

        e.DataRow("物料描述") = Nothing

        e.DataRow("规格型号") = Nothing

        e.DataRow("单位") = Nothing

        e.DataRow("来料数量") = Nothing

        e.DataRow("送货单号") = Nothing

        e.DataRow("入库数量") = Nothing

        e.DataRow("供应商简称") = Nothing

    Else

        Dim dr  As  DataRow'否则在产品表查找同名的产品行,将找到的行赋值给变量dr

        dr =  DataTables("检验明细").Find("[收料编号] = '" & e.NewValue &  "'")

        If dr IsNot Nothing Then  '如果找到了同名的产品行,也就是dr不是Nothing

            e.DataRow("采购编号") = dr("采购编号")

            e.DataRow("物料代码") = dr("物料代码")

            e.DataRow("物料描述") = dr("物料描述")

            e.DataRow("规格型号") = dr("规格型号")

            e.DataRow("单位") = dr("单位")

            e.DataRow("来料数量") = dr("来料数量")

            e.DataRow("送货单号") = dr("送货单号")

            e.DataRow("入库数量") = dr("入库数量")

            e.DataRow("供应商简称") = dr("供应商简称")

        End  If

    End  If

End If

 

 


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


加好友 发短信
等级:婴狐 帖子:32 积分:318 威望:0 精华:0 注册:2018/7/26 21:12:00
  发帖心情 Post By:2018/8/9 8:51:00 [显示全部帖子]

If e.DataCol.Name = "处理结果_入库" AndAlso e.DataRow("处理结果_入库") = True Then
    Dim nma() As String = {"送货单号","收料编号","采购编号","物料代码","物料描述","规格型号","单位","来料数量","入库数量","供应商简称"} 'A表数据来源列
    Dim nmb() As String = {"送货单号","收料编号","采购编号","物料代码","物料描述","规格型号","单位","来料数量","入库数量","供应商简称"} 'B表数据接收列
    Dim dr As DataRow = DataTables("入库明细").Find("[收料编号] = '" & e.DataRow("收料编号") &  "'")
    If dr Is Nothing Then dr = DataTables("入库明细").AddNew
    For i As Integer = 0 To nma.Length - 1
        dr(nmb(i)) = e.DataRow(nma(i))
    Next
End If

 

老师,这段代码有点问题,刚写进去的时候可以执行,现在点击选择,他不添加执行


 回到顶部