以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 统计代码使用? (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=158983) |
-- 作者:bluev -- 发布时间:2020/12/9 10:32:00 -- 统计代码使用? 统计代码的使用 以下内容为程序代码: 1 Dim y As String = e.Form.Controls("ComboBox1").value 2 Dim sql As String = "selec t 日期,名称,收入金额, 0 as 借方金额,支出金额,0 as 贷方金额 fro m {电子单} where year(日期) = \'"& y & "\' union all selec t 日期, 名称,0 as 收入金额,借方金额,0 as 支出金额,贷方金额 fro m {日记账}where year(日期) = \'"& y & "\'" 3 Dim b As New CrossTableBuilder("统计表1",sql,"db") 4 Dim dt1 As fxDataSource 5 b.C 6 b.HGroups.AddDef("银行名称") \'添加客户列用于水平分组 7 b.VGroups.AddDef("日期", "{0}月") \'添加产品列用于垂直分组,并设置了Pattern参数 8 b.Totals.AddDef("借方金额", "收入金额_日记账") 9 b.Totals.AddDef("收入金额", "收入金额_电子") 10 b.Totals.AddDef("贷方金额", "支出金额_日记账") 11 b.Totals.AddDef("支出金额", "支出金额_电子") 12 dt1 = b.BuildDataSource() 13 Tables("统计窗口_Table3").DataSource = dt1 请教用这个代码出的统计表,为什么 每个月的【收入金额】和【支出金额】不在一起呢?请教如何更改? [此贴子已经被作者于2020/12/9 10:33:24编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/12/9 11:02:00 -- 麻烦以后直接发代码,不要使用这种添加行号的方式 试试调换位置 6 b.HGroups.AddDef("银行名称") \'添加客户列用于水平分组
7 b.VGroups.AddDef("日期", "{0}月") \'添加产品列用于垂直分组,并设置了Pattern参数 8 b.Totals.AddDef("借方金额", "收入金额_日记账") 10 b.Totals.AddDef("贷方金额", "支出金额_日记账") 9 b.Totals.AddDef("收入金额", "收入金额_电子") 11 b.Totals.AddDef("支出金额", "支出金额_电子") 12 dt1 = b.BuildDataSource() |
-- 作者:bluev -- 发布时间:2020/12/9 11:40:00 -- 感谢回复, Dim y As String = e.Form.Controls("ComboBox1").value Dim sql As String = "selec t 日期,名称,收入金额, 0 as 借方金额,支出金额,0 as 贷方金额 fro m {银行电子对账单} where year(日期) = \'"& y & "\' union all selec t 日期, 名称,0 as 收入金额,借方金额,0 as 支出金额,贷方金额 fro m {银行存款日记账}where year(日期) = \'"& y & "\'" Dim b As New CrossTableBuilder("统计表1",sql,"db") Dim dt1 As fxDataSource b.C b.HGroups.AddDef("名称") \'添加客户列用于水平分组 b.VGroups.AddDef("日期", "{0}月") \'添加产品列用于垂直分组,并设置了Pattern参数 b.Totals.AddDef("借方金额", "收入金额_日记账") b.Totals.AddDef("贷方金额", "支出金额_日记账") b.Totals.AddDef("收入金额", "收入金额_电子") b.Totals.AddDef("支出金额", "支出金额_电子") dt1 = b.BuildDataSource() Tables("统计窗口_Table3").DataSource = dt1 调整成这样也是不行,显示也是不行
|
-- 作者:有点蓝 -- 发布时间:2020/12/9 11:52:00 -- 只能手工移动列了:http://www.foxtable.com/webhelp/topics/0587.htm |
-- 作者:bluev -- 发布时间:2020/12/9 14:20:00 -- 但是月份不是固定的,如何用代码? 1-12遍历一遍?
|
-- 作者:有点蓝 -- 发布时间:2020/12/9 14:28:00 -- 当然是遍历所有列处理。具体代码请上传实例测试 |