Foxtable(狐表)用户栏目专家坐堂 → 请老师,帮助修正,谢谢


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

主题:请老师,帮助修正,谢谢

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


加好友 发短信
等级:六尾狐 帖子:1257 积分:8555 威望:0 精华:0 注册:2019/6/13 9:57:00
请老师,帮助修正,谢谢  发帖心情 Post By:2020/1/15 17:29:00 [只看该作者]

Dim dic As new Dictionary(of String,Integer)
DataTables("材料需求").DataRows.Clear()                                                          
For Each dr1 As DataRow In DataTables("生产工单").DataRows                                       
    For Each dr2 As DataRow In DataTables("产品BOM明细").Select("[产品名称] = '" & dr1("产品名称") & "'")   '
        Dim nd As String = dr2("物料号")
        Dim nm As String = dr2("材料名称")                                                            
        Dim vl As Integer = dr1("下单数量") * dr2("材料用量")                           
        If dic.ContainsKey(nm) = False
            dic.Add(nm,vl)
        Else
            dic(nd) = dic(nd)+ vl
            dic(nm) = dic(nm)+ vl
        End If
    Next
Next
For Each key As String In dic.keys
    Dim dr As DataRow = DataTables("材料需求").AddNew()   ' 
    dr("物料号") = key                                          
    dr("品名") = key                                          
    dr("订单用量") = dic(key)                                                                
Next

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


加好友 发短信
等级:狐神 帖子:4755 积分:34583 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2020/1/16 8:16:00 [只看该作者]

If dic.ContainsKey(nm) = False
    dic.Add(nm,vl)
Else
    dic(nm) = dic(nm)+ vl
End If
If dic.ContainsKey(nd) = False
    dic.Add(nd,vl)
Else
    dic(nd) = dic(nd)+ vl
End If

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


加好友 发短信
等级:超级版主 帖子:110662 积分:563224 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/1/16 9:12:00 [只看该作者]

Dim dic As new Dictionary(of String,Integer)
DataTables("材料需求").DataRows.Clear()
For Each dr1 As DataRow In DataTables("生产工单").DataRows
    For Each dr2 As DataRow In DataTables("产品BOM明细").Select("[产品名称] = '" & dr1("产品名称") & "'")   '
        Dim nd As String = dr2("物料号") & "|" & dr2("材料名称")
        Dim vl As Integer = dr1("下单数量") * dr2("材料用量")
        If dic.ContainsKey(nd) = False
            dic.Add(nd,vl)
        Else
            dic(nd) = dic(nd)+ vl
        End If
    Next
Next
For Each key As String In dic.keys
    Dim dr As DataRow = DataTables("材料需求").AddNew()   '
    Dim ar() As String = key.Split("|")
    dr("物料号") = ar(0)
    dr("品名") = ar(1)
    dr("订单用量") = dic(key)
Next

 回到顶部