以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 关于表同步的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=69774) |
-- 作者:dj68301367 -- 发布时间:2015/6/10 17:00:00 -- 关于表同步的问题 有二个表,分别是BOM,物料管理表 如何可以实现,先判断物料管理表中的某张订单中某个产品 是否有BOM的物料,如果没有就在物料管理表上把BOM的料号复制到物料表当中,如果物料表有一部分,就把没有的部分复制过去。 |
-- 作者:大红袍 -- 发布时间:2015/6/10 17:04:00 -- http://www.foxtable.com/help/topics/1451.htm
|
-- 作者:dj68301367 -- 发布时间:2015/6/10 17:14:00 -- 以下是引用大红袍在2015/6/10 17:04:00的发言:
http://www.foxtable.com/help/topics/1451.htm
这里没有介绍,两个表针对产品型号列做对比,如果有的话就不增加,没有的话就增加。
|
-- 作者:大红袍 -- 发布时间:2015/6/10 17:51:00 -- 可以参考这里,用find函数查找是否存在。
看不懂,可以上传例子
http://www.foxtable.com/help/topics/1533.htm
http://www.foxtable.com/help/topics/0680.htm
|
-- 作者:大红袍 -- 发布时间:2015/6/10 17:56:00 -- 参考
http://www.foxtable.com/help/topics/0680.htm
http://www.foxtable.com/help/topics/1533.htm
|
-- 作者:dj68301367 -- 发布时间:2015/6/11 15:14:00 --
谢谢大红袍 看完帮助,基本实现了我的要求,但现在又出现了一个问题,如图片所示,以下代码只是把BOM里的料号复制了过来,可是那几列共用数据我想它自己会填上Textbox上的数据。最终效果如下图。
Dim f As New Filler f.Fill() 此主题相关图片如下:最终效果.jpg |
-- 作者:大红袍 -- 发布时间:2015/6/11 15:18:00 -- 那就必须用下面这种方法,外加上Find函数查找是否重复。
http://www.foxtable.com/help/topics/1533.htm
|
-- 作者:dj68301367 -- 发布时间:2015/6/11 15:25:00 -- 我昨天就想到了find的方法了,可是还是没有吃透。 大红袍兄,可以给段实际的代码吗?
|
-- 作者:大红袍 -- 发布时间:2015/6/11 15:31:00 -- 参考代码
Dim Cols1() As String = {"物料编码"} |
-- 作者:dj68301367 -- 发布时间:2015/6/15 14:38:00 -- 大红袍 如以下代码,在实际应用当中会出现有少复制或多复制的问题。 Dim Cols1() As String = {"序号","物料编码","数量"} Dim Cols2() As String = {"物料_序号","物料_物料编码","物料_单用量"} For Each dr1 As DataRow In DataTables("bom").Select("成品编码 = \'" & mbtname & "\'") If DataTables("物料管理系统").Find("物料_物料编码 = \'" & dr1("物料编码") & "\' And 通知单号 = \'" & mtz & "\'" ) Is Nothing Then Dim dr2 As DataRow = DataTables("物料管理系统").AddNew() For i As Integer = 0 To Cols1.Length -1 dr2(Cols2(i)) = dr1(Cols1(i)) Next dr2("通知单号") = mtz dr2("成品编码") = mbtname End If Next |