以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 咨询SQLGroupTableBuilder加入统计列 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=150121) |
-- 作者:guosheng -- 发布时间:2020/5/21 12:42:00 -- 咨询SQLGroupTableBuilder加入统计列 Dim dtx As DataTable Dim b As New SQLGroupTableBuilder("统计表2","租赁合同结转情况表") b.C Dim dt1 As fxDataSource b.Groups.Adddef("合同编号","合同编号") \'根据产品ID分组 b.Groups.AddDef("项目名称") \'根据产品ID分组 b.Groups.Adddef("客户名称") \'根据产品ID分组 b.Groups.AddDef("租赁类别") \'根据产品ID分组 b.Groups.AddDef("房间名称") \'根据产品ID分组 b.Groups.AddDef("合同开始日期",DateGroupEnum.none) \'根据产品ID分组 b.Groups.AddDef("合同终止日期",DateGroupEnum.none) \'根据产品ID分组 b.Groups.AddDef("租金金额") \'根据产品ID分组 b.Groups.AddDef("服务费金额") \'根据产品ID分组 b.Groups.AddDef("合同状态") \'根据产品ID分组 b.Groups.Adddef("累计已收租金金额","已收_租金") \'根据产品ID分组 b.Groups.Adddef("累计已收服务费金额","已收_服务费") \'根据产品ID分组 b.filter= filter dt1 = b.BuildDataSource() Dim b2 As New SQLGroupTableBuilder("统计表3","租赁合同发票明细表") b2.C \'b2.AddTable("租赁合同发票明细表","合同编号","租赁合同结转情况表","合同编号") Dim dt2 As fxDataSource b2.Groups.AddDef("合同编号") \'根据产品ID分组 b2.Totals.AddExp("已开票不含税租金","Case When 服务名称=\'房屋租金\' or 服务名称=\'场地租赁\' Then 不含税金额 Else 0 End","已开票_不含税租金") b2.Totals.AddExp("已开票租金","Case When 服务名称=\'房屋租金\' or 服务名称=\'场地租赁\' Then 含税金额 Else 0 End","已开票_租金") b2.Totals.AddExp("已开票租金税额 ", "isnull(已开票租金,0)-isnull(已开票不含税租金,0)" ,“已开票_租金税额”) ‘这句报错找不到 已开票租金 和 已开票不含税租金 ,怎么回事啊? b2.Totals.AddExp("已开票不含税服务费","Case When 服务名称=\'服务费\' Then 不含税金额 Else 0 End","已开票_不含税服务费") b2.Totals.AddExp("已开票服务费","Case When 服务名称=\'服务费\' Then 含税金额 Else 0 End","已开票_服务费") b2.Filter = filter2 dt2 = b2.BuildDataSource() |
-- 作者:有点蓝 -- 发布时间:2020/5/21 13:58:00 -- 正常, 已开票租金 和 已开票不含税租金是在代码里添加的,这时候还没有生成这个统计表,哪来的列?统计方法里只能使用数据库里存在的列名。 在生成统计表后再添加临时列:http://www.foxtable.com/webhelp/topics/1428.htm
|