以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]临时表  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=145541)

--  作者:江南小镇
--  发布时间:2020/1/29 9:00:00
--  [求助]临时表
老师,新年好,怎样把下面代码变成在窗口中生成临时表


Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("产品", Gettype(String), 16)
dtb.AddDef("数量", Gettype(Integer))
dtb.AddDef("金额", Gettype(Double))
dtb.Build()
For Each nm As String In DataTables("订单").GetValues("产品")
    Dim dr As DataRow = DataTables("统计").AddNew()
    dr("产品") = nm
    dr("数量") = DataTables("订单").Compute("Sum(数量)","[产品] = \'" & dr("产品") & "\'")
    dr("金额") = DataTables("订单").Compute("Sum(金额)","[产品] = \'" & dr("产品") & "\'")
Next
MainTable= Tables("统计")

--  作者:y2287958
--  发布时间:2020/1/29 10:16:00
--  
可以用Tables("窗口1_Table1").DataSource = b.BuildDataSource()绑定到窗口表的
--  作者:江南小镇
--  发布时间:2020/1/29 12:16:00
--  
老师,怎样绑定谢谢老师给我设置一下。
--  作者:有点蓝
--  发布时间:2020/1/29 13:10:00
--  
添加一个窗口表,使用1楼+2楼的代码
--  作者:江南小镇
--  发布时间:2020/1/29 13:24:00
--  
老师,行不显示。

图片点击可在新窗口打开查看此主题相关图片如下:image 1.png
图片点击可在新窗口打开查看
 
--  作者:有点蓝
--  发布时间:2020/1/29 14:26:00
--  
订单表有加载数据吗?

Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("产品", Gettype(String), 16)
dtb.AddDef("数量", Gettype(Integer))
dtb.AddDef("金额", Gettype(Double))
Tables("窗口1_Table1").DataSource = b.BuildDataSource()
For Each nm As String In DataTables("订单").GetValues("产品")
    Dim dr As DataRow = DataTables("窗口1_Table1").AddNew()
    dr("产品") = nm
    dr("数量") = DataTables("订单").Compute("Sum(数量)","[产品] = \'" & nm & "\'")
    dr("金额") = DataTables("订单").Compute("Sum(金额)","[产品] = \'" & nm & "\'")
Next

--  作者:江南小镇
--  发布时间:2020/1/29 19:02:00
--  
谢谢老师
--  作者:江南小镇
--  发布时间:2020/1/30 8:51:00
--  
老师好,怎样把列名称“合计金额”改成“入库_合计金额”。


Dim dtb As New DataTableBuilder("统计")
dtb.AddDef("客户名称", Gettype(String), 16)
dtb.AddDef("商品名称", Gettype(String), 16)
dtb.AddDef("入库_数量", Gettype(Integer))
dtb.AddDef("合计金额", Gettype(Double))
dtb.Build()
Tables("入库明细_Table1").DataSource = dtb.BuildDataSource()

For Each nm() As String In DataTables("入库明细").GetValues("客户名称|商品名称")
    
    Dim dr As DataRow = DataTables("入库明细_Table1").AddNew()
    \'Dim dr As DataRow = DataTables("统计").AddNew()
    dr("客户名称") = nm(0)
    dr("商品名称") = nm(1)
    dr("入库_数量") = DataTables("入库明细").Compute("Sum(入库_数量)","客户名称 = \'" & nm(0) & "\' And [商品名称] = \'" & nm(1) & "\'")
    dr("合计金额") = DataTables("入库明细").Compute("Sum(合计金额)","客户名称 = \'" & nm(0) & "\' And [商品名称] = \'" & nm(1) & "\'")
Next
MainTable= Tables("统计")


Tables("入库明细_table1").SetColVisibleWidth ("客户名称|260|商品名称|120|入库_数量|70|合计金额|100")                     
Tables("入库明细_table1").DefaultRowHeight = 30
For Each c As Col In Tables("入库明细_table1").Cols
    C.TextAlign  =TextAlignEnum.Center
Next
Tables("入库明细_table1").grid.Styles("Normal").border.Color = Color.DodgerBlue
Tables("入库明细_table1").Font = New Font("微软雅体",12,FontStyle.Regular)

--  作者:有点蓝
--  发布时间:2020/1/30 8:57:00
--  
dtb.AddDef("入库_合计金额", Gettype(Double))
--  作者:江南小镇
--  发布时间:2020/1/30 9:23:00
--  
老师,改后不显示了。


im dtb As New DataTableBuilder("统计")
dtb.AddDef("客户名称", Gettype(String), 16)
dtb.AddDef("商品名称", Gettype(String), 16)
dtb.AddDef("入库_数量", Gettype(Integer))
dtb.AddDef("入库_合计金额", Gettype(Double))

\'dtb.AddDef("合计金额", Gettype(Double))