Foxtable(狐表)用户栏目专家坐堂 → [求助]产品分解统计代码怎样写?


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

主题:[求助]产品分解统计代码怎样写?

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/3/3 8:43:00 [显示全部帖子]

这样可以的

 

Dim Cus As List(Of String)
For Each dr1 As DataRow In DataTables("计划产品表").datarows
    For Each dr2 As DataRow In DataTables("产品基础表").Select("[产品名称] = '" & dr1("产品名称") & "'")
        Dim dr3 As DataRow = DataTables("计划产品分解表").AddNew()
        dr3("第一列") = dr2("产品一级分类名称")
        dr3("第二列") = dr1("计划数量") * dr2("产品一级分类数量")
    Next
Next
MainTable = Tables("计划产品分解表")

 

不过我估计你要的不仅仅是产品一级分类数量。

这样的问题,你自己不应该太懒,居然连产品计划表的结构也懒得设计,别人怎么知道你要的是什么?

表结构设计好,多输入一点测试数据,让别人明白你的问题,才能更快获得答案。


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/3/5 8:01:00 [显示全部帖子]

Dim Cus As List(Of String)
Dim dic As new Dictionary(of String,Integer)
For Each dr1 As DataRow In DataTables("计划产品表").datarows
    For Each dr2 As DataRow In DataTables("产品基础表").Select("[产品名称] = '" & dr1("产品名称") & "'")
        Dim nm As String = dr2("产品一级分类名称")
        Dim vl As Integer = dr1("计划数量") * dr2("产品一级分类数量")
        If dic.ContainsKey(nm) = False
            dic.Add(nm,vl)
        Else
            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("第二列") = dic(key)
Next
MainTable = Tables("计划产品分解表")


 回到顶部