Foxtable(狐表)用户栏目专家坐堂 → [公告]关于BOM的展开


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

主题:[公告]关于BOM的展开

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


加好友 发短信
等级:一尾狐 帖子:456 积分:7267 威望:0 精华:0 注册:2012/2/6 12:27:00
[公告]关于BOM的展开  发帖心情 Post By:2017/8/26 14:25:00 [只看该作者]

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


当前物料清单是已经加载好的,但是在实际应用中,物料清单默认是不加载的。在调用BOM时才加载 。如果要对附件中的产品101展开BOM,那么会先加载物料清单,但这时仅仅只会加载当前主件为101的物料,而下级物料会缺失,请指导下

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


加好友 发短信
等级:超级版主 帖子:112436 积分:572454 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/8/26 15:12:00 [只看该作者]

Dim dt As DataTable = DataTables("物料清单")
DataTables("表c").DataRows.Clear
Dim txt1 = e.Form.Controls("textbox1").text
Dim txt2 = val(e.Form.Controls("textbox2").text)
Dim filter As String
If txt1 > "" Then
    filter = "主物料 = '" & txt1 & "'"
Else
    filter = "主物料 is null"
End If
Dim drs As List(of DataRow) =dt.SQLSelect(filter)
Dim lst As new List(of String)
Do While drs.Count > 0
    lst.Clear
    For Each dr As DataRow In drs
        Dim bh As String = dr("子物料")
        Dim ndr As DataRow = DataTables("表c").AddNew
        ndr("物料编码") = bh
        lst.Add(bh)
        Dim fdr As DataRow = DataTables("产品表").Find("物料编码 = '" & bh & "'")
        If fdr IsNot Nothing Then
            ndr("物料名称") = fdr("物料名称")
        End If
        ndr("用量") = dr("用量")
        ndr("需求量") = dr("用量") * txt2
        'Functions.Execute("sum",dr, txt2)
    Next
    drs = dt.SQLSelect("主物料 in ('" & String.Join("','",lst.ToArray) & "')")
Loop

 回到顶部