以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 如何实现跨表多表统计? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=145335) |
-- 作者:lgz518 -- 发布时间:2020/1/16 16:35:00 -- 如何实现跨表多表统计? 项目:库存表,用跨表统计库存量,字段,产品编号,产品名称,单位,入库数量,出库数量,库存数,期未数 1,用下面代码,只实现一个,没实现,入库数量,出库数量。计算出来库存数,期未数是库存数? If MainTable.Name = "库存表" Then DataTables("库存表").DataRows.Clear() For Each nm As String In DataTables("入库明细").GetValues("产品名称") Dim dr As DataRow = DataTables("库存表").addnew( ) Dim nm As String = dr("产品编号") & "|" & dr("产品名称") dr("产品名称") = nm dr("入库_数量") = DataTables("入库明细").Compute("Sum(数量)","产品名称 = \'" & nm & "\'") dr("入库_金额") = DataTables("入库明细").Compute("Sum(金额)","产品名称 = \'" & nm & "\'") Next End If If MainTable.Name = "库存表" Then DataTables("库存表").DataRows.Clear() For Each nk As String In DataTables("出库明细").GetValues("产品名称") Dim dr As DataRow = DataTables("库存表").addnew( ) Dim nm As String = dr("产品编号") & "|" & dr("产品名称") dr("产品名称") = nk dr("出库_数量") = DataTables("出库明细").Compute("Sum(数量)","产品名称 = \'" & nk & "\'") dr("出库_金额") = DataTables("出库明细").Compute("Sum(金额)","产品名称 = \'" & nk & "\'") Next End If |
-- 作者:有点蓝 -- 发布时间:2020/1/16 16:42:00 -- If MainTable.Name = "库存表" Then DataTables("库存表").DataRows.Clear() For Each nm As String In DataTables("入库明细").GetValues("产品名称") Dim dr As DataRow = DataTables("库存表").addnew( ) Dim nm As String = dr("产品编号") & "|" & dr("产品名称") dr("产品名称") = nm dr("入库_数量") = DataTables("入库明细").Compute("Sum(数量)","产品名称 = \'" & nm & "\'") dr("入库_金额") = DataTables("入库明细").Compute("Sum(金额)","产品名称 = \'" & nm & "\'") Next For Each nk As String In DataTables("出库明细").GetValues("产品名称") Dim dr As DataRow = DataTables("库存表").find("产品名=\'" & nk & "\'") if dr is nothing then dr = DataTables("库存表").addnew( ) dr("产品名称") = nk end if dr("出库_数量") = DataTables("出库明细").Compute("Sum(数量)","产品名称 = \'" & nk & "\'") dr("出库_金额") = DataTables("出库明细").Compute("Sum(金额)","产品名称 = \'" & nk & "\'") Next End If |
-- 作者:lgz518 -- 发布时间:2020/1/17 23:30:00 -- 1. Dim nm As String = dr("产品编号") & "|" & dr("产品名称"),这个报错? |
-- 作者:有点蓝 -- 发布时间:2020/1/18 8:56:00 -- For Each nm As String In DataTables("入库明细").GetValues("产品名称") Dim dr As DataRow = DataTables("库存表").addnew( ) dim dr2 as datarow = DataTables("入库明细").find("产品名称=\'" & nm &"\'") dr("产品名称") = nm dr("产品编号") = dr2("产品编号") dr("入库_数量") = DataTables("入库明细").Compute("Sum(数量)","产品名称 = \'" & nm & "\'") dr("入库_金额") = DataTables("入库明细").Compute("Sum(金额)","产品名称 = \'" & nm & "\'") Next
|