Foxtable(狐表)用户栏目专家坐堂 → [求助]多表合并后,相同表头的名称不能在一起


  共有2280人关注过本帖树形打印复制链接

主题:[求助]多表合并后,相同表头的名称不能在一起

帅哥哟,离线,有人找我吗?
xuxd76
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:84 积分:679 威望:0 精华:0 注册:2020/12/25 0:49:00
[求助]多表合并后,相同表头的名称不能在一起  发帖心情 Post By:2021/2/7 0:31:00 [只看该作者]


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

表A中有“发货情况_本月发货”,
表A中增加临时列"发货情况_本年累计"
本月发货与本年累计是分别统计,再合并成一张表,但这样的结果就是“发货情况_本月发货”与"发货情况_本年累计"不在一起,中间隔几个列了

求如何能把""发货情况_"的合并在一起?

目前我先写代码如下:
Dim d1 As Date = e.Form.Controls("统计开始日期").Value
Dim d2 As Date = e.Form.Controls("统计结束日期").Value
Dim d3 As Date = e.Form.Controls("年度期初").Value
Dim d4 As Date = e.Form.Controls("上年年末").Value

Dim khmc As WinForm.TextBox = e.Form.Controls("客户查询选择")

If d1 = Nothing Or d2 = Nothing Then
    MessageBox.Show("起始或结束日期都不能为空!","友情提醒",MessageBoxButtons.OK,MessageBoxIcon.Warning)
End If

Dim g1 As New GroupTableBuilder("月度统计", DataTables("业务表"))  '客户查询 为Click按钮名称
g1.Filter = "日期>=#" & d1 & "# and 日期<=#" & d2 & "#"
Dim bb1 As fxDataSource
g1.Groups.AddDef("员工姓名")
g1.Groups.AddDef("客户名称")
g1.Totals.AddDef("发货数量", "发货情况_本月发货")
g1.Totals.AddDef("开piao数量", "本年开piao情况_本月开piao量")
g1.Totals.AddDef("开piao金额", "本年开piao情况_本月开piao额")
g1.Totals.AddDef("收款金额", "收款情况_本月收款")
g1.VerticalTotal = True
g1.SubTotal = True
g1.Decimals = 2
g1.FromServer = True
g1.Build()
bb1 = g1.BuildDataSource()


Dim g2 As New GroupTableBuilder("累计统计", DataTables("业务表"))  '年度统计 为Click按钮名称
g2.Filter = "日期>=#" & d3 & "# and 日期<=#" & d2 & "#"
Dim bb2 As fxDataSource
g2.Groups.AddDef("员工姓名")
g2.Groups.AddDef("客户名称")
g2.Totals.AddDef("发货数量", "发货情况_本年累计")
g2.Totals.AddDef("开piao数量", "本年开piao情况_累计开piao量")
g2.Totals.AddDef("开piao金额", "本年开piao情况_累计开piao额")
g2.Totals.AddDef("收款金额", "收款情况_本年累计")
g2.VerticalTotal = True
g2.SubTotal = True
g2.Decimals = 2
g2.FromServer = True
g2.Build()
bb2 = g2.BuildDataSource()


Dim nms As String() = {"员工姓名","客户名称"} '指定连接列
bb1.Combine(nms,bb2,nms) 


Tables("业务管理_统计表").DataSource = bb1 '将统计结果绑定到Table
With DataTables("业务管理_统计表").DataCols  '用表达式列计算库存数据
    .Add("期末余额_末开piao量",Gettype(Double), "IsNull([发货情况_本年累计],0) - ISNULL([本年开piao情况_累计开piao量],0)")
    .Add("期末余额_应收帐款",Gettype(Double), "IsNull([本年开piao情况_累计开piao额],0) - ISNULL([收款情况_本年累计],0)")
End With
[此贴子已经被作者于2021/2/7 0:36:57编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107807 积分:548386 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/2/7 10:15:00 [只看该作者]

另外写代码移动列到合适位置:http://www.foxtable.com/webhelp/topics/1437.htm

 回到顶部
帅哥哟,离线,有人找我吗?
xuxd76
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:84 积分:679 威望:0 精华:0 注册:2020/12/25 0:49:00
  发帖心情 Post By:2021/2/7 10:32:00 [只看该作者]

谢谢蓝版的指点,这章学习过了,可惜忘了。没能前后融合起来。

 回到顶部