Foxtable(狐表)用户栏目专家坐堂 → 产品与模具的关系


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

主题:产品与模具的关系

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


加好友 发短信
等级:七尾狐 帖子:1505 积分:9756 威望:0 精华:0 注册:2014/12/18 16:12:00
产品与模具的关系  发帖心情 Post By:2018/12/15 17:06:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:产品与模具的关系.xls


请看附页excel档案。我有两个数据表,即“物料字典”和“模具清单”。“模具清单”里面的一个模具型号在“物料字典”里面可能会包含多个物料编号,这些物料编号会在“模具清单”的“所应用的产品”这个数据列反映出来。那么,当“物料字典”里面增加、删除数据行或者修改其“模具型号”内容时,希望“模具清单”里面的“所应用的产品”这栏的数据能够得到立即更新。请赐教代码如何写。谢谢。

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


加好友 发短信
等级:七尾狐 帖子:1505 积分:9756 威望:0 精华:0 注册:2014/12/18 16:12:00
  发帖心情 Post By:2018/12/17 10:40:00 [显示全部帖子]

不要意思,我的foxtable版本低了,打不开你给的档案。可否请你将代码发给我即可?谢谢。

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


加好友 发短信
等级:七尾狐 帖子:1505 积分:9756 威望:0 精华:0 注册:2014/12/18 16:12:00
  发帖心情 Post By:2018/12/17 16:32:00 [显示全部帖子]

Select Case e.DataCol.Name

    Case "模具型号"

        If e.DataRow("模具型号") <> "不适用"

            Dim dr As DataRow = DataTables("模具清单").Find("模具型号='" & e.DataRow("模具型号") & "'")

            dr("所应用的产品") = e.DataTable.GetComboListString("物料编号","模具型号='" & e.DataRow("模具型号") & "'").Replace("|",",")

        End If

End Select

If e.DataCol.Name = "模具型号" AndAlso e.OldValue > "" AndAlso e.newvalue <> "不适用" Then

    Dim dr As DataRow = DataTables("模具清单").Find("模具型号='" & e.DataRow("模具型号") & "'")

    dr = DataTables("模具清单").Find("模具型号='" & e.OldValue  & "'")

    If dr IsNot Nothing Then

        dr("所应用的产品") = e.DataTable.GetComboListString("物料编号","模具型号='" & e.OldValue & "'").Replace("|",",")

    End If

End If


我将你的代码更改上面那样。我在“物料字典”里面增加和删除数据行时,能够正常运行,满足我们的要求。但是当我在“物料字典”里面执行“模具型号”的“重置列”时,会出现如下警告:


.NET Framework 版本:2.0.50727.8793

Foxtable 版本:2017.3.18.1

错误所在事件:表,物料字典, DataColChanged

详细错误信息:

调用的目标发生了异常。

未将对象引用设置到对象的实例。


为什么呢?


 回到顶部