以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  根据物料需求汇总生成采购订单  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=49568)

--  作者:kunmails
--  发布时间:2014/4/20 15:42:00
--  根据物料需求汇总生成采购订单

大家好,能否帮忙写个代码。

 

根据选中的物料需求行 汇总生成采购订单 谢谢!

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.rar


--  作者:有点甜
--  发布时间:2014/4/20 15:53:00
--  

 按钮代码,如下

 

Dim t As Table = e.Form.Controls("Table1").Table
Dim bh As String = Format(Date.Now, "MMddssmmdd")
For Each r As Row In t.GetCheckedRows
    Dim nr As Row = Tables("表B").AddNew
    nr("第四列") = bh
    nr("第一列") = r("第二列")
    nr("第二列") = r("第三列")
    nr("第三列") = r("第四列")
Next
Forms("采购订单新增").Show()


--  作者:kunmails
--  发布时间:2014/4/20 15:58:00
--  
以下是引用有点甜在2014-4-20 15:53:00的发言:

 按钮代码,如下

 

Dim t As Table = e.Form.Controls("Table1").Table
Dim bh As String = Format(Date.Now, "MMddssmmdd")
For Each r As Row In t.GetCheckedRows
    Dim nr As Row = Tables("表B").AddNew
    nr("第四列") = bh
    nr("第一列") = r("第二列")
    nr("第二列") = r("第三列")
    nr("第三列") = r("第四列")
Next
Forms("采购订单新增").Show()

主要是 要将需求表中的数据根据物料编码 汇总 “数量” 生成 采购单表!


--  作者:有点甜
--  发布时间:2014/4/20 16:08:00
--  

 哦,这样改,参考代码

 

Dim t As Table = e.Form.Controls("Table1").Table
Dim bh As String = Format(Date.Now, "MMddssmmdd")
Dim dic As new Dictionary(of String, Row)

For Each r As Row In t.GetCheckedRows
    Dim nr As Row
    If dic.ContainsKey(r("第二列")) = False Then
        nr = Tables("表B").AddNew
        nr("第四列") = bh
        nr("第一列") = r("第二列")
        nr("第二列") = r("第三列")
        dic.Add(r("第二列"), nr)
    Else
        nr = dic(r("第二列"))
    End If
   
    nr("第三列") = val(nr("第三列")) + val(r("第四列"))
Next
Forms("采购订单新增").Show()


--  作者:lsy
--  发布时间:2014/4/20 16:29:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:生成采购单.foxdb


--  作者:kunmails
--  发布时间:2014/4/20 16:53:00
--  

谢谢 “有点甜”,“LSY”

 

非常感谢!