以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  多表组合出错  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=130685)

--  作者:lgj716330
--  发布时间:2019/1/29 9:00:00
--  多表组合出错

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目3.foxdb

 

里面的组合方式应该如何写


--  作者:有点甜
--  发布时间:2019/1/29 9:15:00
--  

Dim b2 As New sqlGroupTableBuilder("统计表2","表D")
Dim  dt2 As   fxDataSource
b2.AddTable("表D", "部门名称", "表B", "部门名称")
b2.Groups.AddDef("{表D}.部门名称")
b2.Groups.AddDef("费用项目")
b2.Totals.AddDef("同期费用")
b2.Totals.AddDef("同期销售")

dt2 =   b2.BuildDataSource()

Dim b4 As New sqlGroupTableBuilder("统计表4","表C")
Dim  dt4 As   fxDataSource
b4.AddTable("表C", "部门名称", "表A", "部门名称")
b4.Groups.AddDef("{表C}.部门名称")
b4.Groups.AddDef("费用项目")
b4.Totals.AddDef("本期费用")
b4.Totals.AddDef("本期销售")
dt4 =   b4.BuildDataSource()


Dim  nms As String() = {"部门名称","费用项目"}  \'指定连接列
dt2.Combine(nms,dt4,nms)  \'将销售统计数据组合到进货统计数据


dt2.Show("统计表1") \'显示统计结果


--  作者:lgj716330
--  发布时间:2019/1/29 16:29:00
--  

  


图片点击可在新窗口打开查看此主题相关图片如下:企业微信截图_15487498029898.png
图片点击可在新窗口打开查看

Dim t2 As Table = Tables("店铺同期分析_Table1")
Dim n11 As Double
Dim m11 As Double
For Each r As Row In t2.Rows
    If r.IsNull("销售金额") = False Then
        n11 = r("销售金额")
    Else
        r("销售金额") = n11
    End If
Next
For Each r As Row In t2.Rows
    If r.IsNull("同期销售金额") = False Then
        m11 = r("同期销售金额")
    Else
        r("同期销售金额") = m11
    End If
Next

 

上图中有两个部门,列“同期销售金额”的第三行和第四行本应该是没有数据的,如何对应各自的部门取数呢


--  作者:有点蓝
--  发布时间:2019/1/29 20:07:00
--  
Dim t2 As Table = Tables("店铺同期分析_Table1")
Dim n11 As Double
Dim m11 As Double
Dim bm As String = ""
For Each r As Row In t2.Rows
    If bm = r("部门名称") Then
        If r.IsNull("销售金额") = False Then
            n11 = r("销售金额")
        Else
            r("销售金额") = n11
        End If
        If r.IsNull("同期销售金额") = False Then
            m11 = r("同期销售金额")
        Else
            r("同期销售金额") = m11
        End If
        
    Else
        bm = r("部门名称")
        n11 = r("销售金额")
        m11 = r("同期销售金额")
    End If
Next