以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  如何在一个控件上统计出商品订单的总价  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=125541)

--  作者:460197572
--  发布时间:2018/9/30 13:20:00
--  如何在一个控件上统计出商品订单的总价

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20180930131810.png
图片点击可在新窗口打开查看


[此贴子已经被作者于2018/9/30 13:20:27编辑过]

--  作者:460197572
--  发布时间:2018/9/30 13:26:00
--  

If e.DataCol.Name = "企业电子订单编号" Then  

    If e.NewValue Is Nothing Then 

        e.DataRow("订单总价") = Nothing 



--  作者:有点蓝
--  发布时间:2018/9/30 13:57:00
--  
datacolchanged事件

If e.DataCol.Name = "企业电子订单编号" OrElse e.DataCol.Name = "商品总价" Then  
    e.DataRow("订单总价") = e.DataTable.Compute("sum(商品总价)","企业电子订单编号 = \'" & e.DataRow("企业电子订单编号") & "\'")
End If

--  作者:460197572
--  发布时间:2018/9/30 14:21:00
--  
谢谢老师 ,非常感激
--  作者:460197572
--  发布时间:2018/9/30 15:05:00
--  
老师,这个代码 还是没有达到我想要的结果 
我想要的结果是只要订单号相同,全部订单总价就等于商品总价之和
如图,我想要的就是红色的结果
[此贴子已经被作者于2018/9/30 15:06:29编辑过]

--  作者:460197572
--  发布时间:2018/9/30 15:07:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:66.png
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2018/9/30 15:54:00
--  
If e.DataCol.Name = "企业电子订单编号" OrElse e.DataCol.Name = "商品总价" Then
    For Each dr As DataRow In e.DataTable.Select("企业电子订单编号 = \'" & e.DataRow("企业电子订单编号") & "\'")
        dr("订单总价") = e.DataTable.Compute("sum(商品总价)","企业电子订单编号 = \'" & e.DataRow("企业电子订单编号") & "\'")
    Next
End If

--  作者:460197572
--  发布时间:2018/9/30 15:55:00
--  
收到 ,感谢老师