以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  利用addtable的SQLGroupTableBuilder,当连接子表的为空或没有匹配到数据时,没有返回结果,该如何避免这种情况啊?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=140150)

--  作者:guosheng
--  发布时间:2019/8/30 13:00:00
--  利用addtable的SQLGroupTableBuilder,当连接子表的为空或没有匹配到数据时,没有返回结果,该如何避免这种情况啊?
当黄色阴影的子表没有数据时,即使主表有数据,输出的统计表也是空的,当可能有多个addtable操作连接子表时该怎么避免此种情况(即出现,只要其中1个连接子表为空,返回结果都为空)啊?
我的测试结果,针对 某一条 主表记录,只有多个子表的求和字段都有结果是,才会输出;否则,该条结果不会输出。怎么将基于 主表的 所有统计结果都输出啊?
Dim b As New SQLGroupTableBuilder("统计表2","租赁合同结转情况表")
b.C
b.AddTable("租赁合同结转情况表","合同编号","租赁合同发票明细表","合同编号") \'添加统计表
b.AddTable("租赁合同结转情况表","合同编号","租赁合同租金明细表","合同编号") \'添加统计表
b.Groups.AddDef("项目名称")  \'根据产品ID分组
b.Groups.Addexp("客户名称","{租赁合同结转情况表}.客户名称")  \'根据产品ID分组
b.Groups.Addexp("合同编号","{租赁合同结转情况表}.合同编号")  \'根据产品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.Totals.AddExp("已开票租金","Case When 服务名称=\'房屋租金\'   Then 含税金额 Else 0 End","已开票_租金")
b.Totals.AddExp("已开票服务费","Case When  服务名称=\'服务费\'  Then   含税金额 Else 0 End","已开票_服务费")
b.Build 
[此贴子已经被作者于2019/8/30 13:38:33编辑过]

--  作者:有点蓝
--  发布时间:2019/8/30 14:40:00
--  
使用左连接:http://www.foxtable.com/webhelp/topics/2330.htm