以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  按钮统计  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=17458)

--  作者:caoxy
--  发布时间:2012/3/14 9:20:00
--  按钮统计

师傅你好:

现有按钮统计代码如下:

Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("规格", Gettype(String), 32)
dtb.AddDef("订单数", Gettype(Integer), 32)
dtb.AddDef("加工数", Gettype(Integer))
dtb.AddDef("结存数", Gettype(Double),"订单数 - 加工数")
dtb.Build()
Dim lst As List(of String) = DataTables("导线订单").GetUniqueValues("","规格")
Dim dr As DataRow
For Each dd As String In lst
    dr = DataTables("统计").AddNew()
    dr("规格")  = dd
    dr("订单数")  = DataTables("导线订单").Compute("Sum(订单数)","规格 = \'" & dd & "\'")
    dr("加工数")  = DataTables("订单加工").Compute("Sum(加工数)","规格 = \'" & dd & "\'")
Next
dr = DataTables("统计").AddNew()
dr("规格")  = "合计"
dr("订单数")  = DataTables("导线订单").Compute("Sum(订单数)")
dr("加工数")  = DataTables("订单加工").Compute("Sum(加工数)")

上述代码只有一个规格列,如果再增加部门、性质、订单号列,其它不变,不知如何处理,请师傅帮忙把代码改一下。谢谢!

 


--  作者:caoxy
--  发布时间:2012/3/14 10:46:00
--  

师傅你好:

1楼代码能再增加四项内容吗,谢谢!


--  作者:狐狸爸爸
--  发布时间:2012/3/14 15:08:00
--  

细看:

 

http://www.foxtable.com/help/topics/0679.htm

 


--  作者:caoxy
--  发布时间:2012/3/16 11:37:00
--  

师傅你好:

现有两张表,A表是铁盘订单表,B表是铁盘组装表,在B表录入窗口增加了一个统计按钮,增加下列代码,统计无结果。主要是对两张表中,同部门、同订单编号、同规格尺寸的订单数量和加工数量进行统计。对底行有合计。请师傅帮助把代码修正一下,谢谢!

 

Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("部门", Gettype(String), 32)
dtb.AddDef("订单编号", Gettype(String), 32)
dtb.AddDef("规格尺寸", Gettype(String), 32)
dtb.AddDef("订单数量", Gettype(Integer))
dtb.AddDef("加工数量", Gettype(Integer))
dtb.AddDef("结存数", Gettype(Double),"订单数量 - 加工数量")
dtb.Build()
For Each nm() As String In DataTables("铁盘订单").GetUniqueValues("","部门","订单编号","规格尺寸")
    Dim dr As DataRow = DataTables("统计").AddNew()
    dr("部门") = nm(0)
    dr("订单编号") = nm(1)
    dr("规格尺寸") = nm(2)
    dr("订单数量") = DataTables("铁盘订单").Compute("Sum(订单数量)","[部门] = \'" & nm(0) & "\' And [订单编号] = \'" & nm(1) & "\' And [规格尺寸] = \'" & nm(2) & "\'")
    dr("铁盘组装") = DataTables("铁盘组装").Compute("Sum(加工数量)","[部门] = \'" & nm(0) & "\' And [订单编号] = \'" & nm(1) & "\' And [规格尺寸] = \'" & nm(2) & "\'")
Next

dr = DataTables("统计").AddNew()
dr("部门")  = "合计"
dr("订单数量")  = DataTables("铁盘订单").Compute("Sum(订单数量)")
dr("加工数量")  = DataTables("铁盘组装").Compute("Sum(加工数量)")


--  作者:狐狸爸爸
--  发布时间:2012/3/16 11:57:00
--  

设计好两个表,输入一点测试数据,然后发上来。


--  作者:caoxy
--  发布时间:2012/3/16 12:10:00
--  

谢谢师傅:

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


--  作者:mr725
--  发布时间:2012/3/16 13:01:00
--  
 dr("铁盘组装") = DataTables("铁盘组装").Compute("Sum(加工数量)","[部门] = ······
--  作者:caoxy
--  发布时间:2012/3/16 13:33:00
--  

师傅你好:

保存代码时,运行时出现dr未声明,不知如何解决,还请师傅帮忙,谢谢!


--  作者:caoxy
--  发布时间:2012/3/16 13:35:00
--  
是此代码:dr = DataTables("统计").AddNew()

--  作者:mr725
--  发布时间:2012/3/16 13:43:00
--  

····

Next

Dim dr0 As DataRow = = DataTables("统计").AddNew()
dr0("部门")  = "合计"
dr0("订单数量")  = DataTables("铁盘订单").Compute("Sum(订单数量)")
dr0("加工数量")  = DataTables("铁盘组装").Compute("Sum(加工数量)")