以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  动态增加表时,怎么读取表的标题和列名称,因为代码中有时候要用?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=127268)

--  作者:gslxgl
--  发布时间:2018/11/9 16:24:00
--  动态增加表时,怎么读取表的标题和列名称,因为代码中有时候要用?
Dim dr As DataRow = e.DataRow
Dim dt As DataTable = DataTables("订单")
If e.DataCol.Name = "产品" Then
    dr("数量") = dt.Compute("Sum(数量)","[产品] = \'" & dr("产品") & "\'")
    dr("金额") = dt.Compute("Sum(金额)","[产品] = \'" & dr("产品") & "\'")
End If

如果订单表为动态增加的表,数量,金额为增加的列,代码怎么改

--  作者:有点甜
--  发布时间:2018/11/9 17:02:00
--  

1、动态增加的表,表名称、列名称是否都固定?如果固定,代码不用改;

 

2、如果不固定,上传具体实例,说明你的具体问题,要实现的效果。


--  作者:gslxgl
--  发布时间:2018/11/9 17:05:00
--  
如:增加订单表的列为数量金额
            产品表的的列为产品名称,数量等,列名称不固定

--  作者:有点甜
--  发布时间:2018/11/9 17:10:00
--  

循环每一个列,如果是数值类型,就统计,比如

 

Dim dr As DataRow = e.DataRow
Dim dt As DataTable = DataTables("订单")
If e.DataCol.Name = "产品" Then
    For Each dc As DataCol In dt.DataCols
        If dc.IsNumeric Then
            dr(dc.name) = dt.Compute("Sum(" & dc.name & ")","[产品] = \'" & dr("产品") & "\'")
        End If
    Next
End If


--  作者:gslxgl
--  发布时间:2018/11/9 17:23:00
--  
像这样的,按生成表,弹出表标题和列名称并输入,然后读取表标题和列名称进行汇总等计算
--  作者:gslxgl
--  发布时间:2018/11/9 17:24:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:50(zl@_ouwkc8kmna_vm(t.png
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2018/11/9 17:32:00
--  
看懂4楼代码。不然,做个实例发上来测试。