以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于统计订单带出对应产品编码和产品型态的代码??  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=50115)

--  作者:wealthwind
--  发布时间:2014/4/29 16:16:00
--  关于统计订单带出对应产品编码和产品型态的代码??

现有的按钮代码是:

Dim g As New GroupTableBuilder("统计表1", DataTables("订单"))
g.Groups.AddDef("产品")
g.Totals.AddDef("数量")
g.Totals.AddDef("金额")
g.VerticalTotal = True
e.Form.controls("Table1").Table.Datasource = g.BuildDataSource

 

以上代码统计完成后,会形成,产品、数量、金额、项目,我想增加,这个产品对应的产品编码和产品型态,那计算的按钮代码如何写??

也就是计算出来原本是三列,现在是5列(产品、数量、金额、编码、产品型态)


图片点击可在新窗口打开查看此主题相关图片如下:360截图20140429161346312.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:360截图20140429161404515.jpg
图片点击可在新窗口打开查看

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

 告诉你一个便捷的方法,可以自动生成代码的,看看

 

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

 


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

Dim g As New GroupTableBuilder("统计表1", DataTables("订单"))

g.Groups.AddDef("产品编码")

g.Groups.AddDef("产品形态")
g.Groups.AddDef("产品")

g.Totals.AddDef("数量")
g.Totals.AddDef("金额")
g.VerticalTotal = True
e.Form.controls("Table1").Table.Datasource = g.BuildDataSource


--  作者:wealthwind
--  发布时间:2014/4/29 16:34:00
--  

老师,还有一个问题

 

Dim dtb As New DataTableBuilder("统计2")
dtb.AddDef("产品", Gettype(String), 20)
dtb.AddDef("数量", Gettype(Integer))
dtb.AddDef("金额", Gettype(Integer))

With e.Form.Controls("Table2").Table
    .datasource = dtb.BuildDataSource
    .allowedit = True
    .AllowResizeRow = False
    .DataTable.SysStyles("EmptyArea").BackColor = Color.Whitesmoke
    .Grid.Styles.Normal.Border.Color = Color.Blue
.SetColVisibleWidth("产品|80|数量|60|金额|60|")
.SetHeaderRowHeight(20)
End With

 

这段代码是从临时统计表中获取列的代码,如果我增加了产品型态和产品编码后,我的代码是不是这样写呢??

Dim dtb As New DataTableBuilder("统计2")
dtb.AddDef("产品", Gettype(String), 20)
dtb.AddDef("数量", Gettype(Integer))
dtb.AddDef("金额", Gettype(Integer))

dtb.AddDef("产品型态", Gettype(Integer))
dtb.AddDef("产品编码", Gettype(Integer))

With e.Form.Controls("Table2").Table
    .datasource = dtb.BuildDataSource
    .allowedit = True
    .AllowResizeRow = False
    .DataTable.SysStyles("EmptyArea").BackColor = Color.Whitesmoke
    .Grid.Styles.Normal.Border.Color = Color.Blue
.SetColVisibleWidth("产品|80|数量|60|金额|60|")
.SetHeaderRowHeight(20)
End With

 

 

 

 

 

 

 


图片点击可在新窗口打开查看此主题相关图片如下:360截图20140429163246734.jpg
图片点击可在新窗口打开查看

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

大概吧,这句得改一下,加入

 

.SetColVisibleWidth("产品|80|数量|60|金额|60|")


--  作者:wealthwind
--  发布时间:2014/4/29 16:41:00
--  

Dim dtb As New DataTableBuilder("统计2")
dtb.AddDef("产品", Gettype(String), 20)
dtb.AddDef("数量", Gettype(Integer))
dtb.AddDef("金额", Gettype(Integer))
dtb.AddDef("产品编码", Gettype(Integer))
dtb.AddDef("产品型态", Gettype(Integer))
With e.Form.Controls("Table2").Table
    .datasource = dtb.BuildDataSource
    .allowedit = True
    .AllowResizeRow = False
    .DataTable.SysStyles("EmptyArea").BackColor = Color.Whitesmoke
    .Grid.Styles.Normal.Border.Color = Color.Blue
.SetColVisibleWidth("产品编码|60|产品|80|产品型态|60|数量|60|金额|60|")
.SetHeaderRowHeight(20)
End With

 出现以下窗口提示

 


图片点击可在新窗口打开查看此主题相关图片如下:360截图20140429164037234.jpg
图片点击可在新窗口打开查看

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

这两句改一下

 

dtb.AddDef("产品编码", Gettype(String), 20)
dtb.AddDef("产品型态", Gettype(String), 20)


--  作者:wealthwind
--  发布时间:2014/4/29 21:17:00
--  
好的,谢谢老师~~