Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
求救各位高手一共三个表。中间的表中的”支出“”收入“”余额“都是表达试例。现在想要不用表达式。直接用代码生成临时表(和第二个表一样)。因为一定要全部加载”余额“才能正确。
帮忙改一下代码
Dim jb As New SQLJoinTableBuilder("查询表1","账户管理")
jb.AddTable("账户管理","账户名称","支出明细","支出账户")
jb.AddTable("账户管理","账户名称","收入","收入账户")
jb.AddCols("账户名称")
jb.AddCols("初始金额")
jb.AddExp("支出","Sum({支出明细}.金额)")
jb.AddExp("收入","Sum({收入}.金额)")
jb.AddExp("余额","初始金额-支出+收入“)
jb.Build()
MainTable = Tables("查询表1")
还是这个代码正确:
Dim jb As New SQLJoinTableBuilder("查询表1","账户管理")
jb.AddTable("账户管理","账户名称","支出明细","支出账户")
jb.AddTable("账户管理","账户名称","收入","收入账户")
jb.AddCols("账户名称",True)
jb.AddCols("初始金额",True)
jb.AddExp("支出","Sum({支出明细}.金额)")
jb.AddExp("收入","Sum({收入}.金额)")
jb.AddExp("余额","初始金额-支出+收入")
jb.Build()
MainTable = Tables("查询表1")
只有两行数据,是因为的收入表没有“建行账户”,这种连接取得每个表都有的分组。
这三个表是关联表。”账户管理。支出“关联的例是“账户名称”“支出账户”。 ”账户管理。收入“关联的例是 “账户名称”“收入账户”。
那个余额也不一样的。因为一定要加载所有数据才能算出余额。所以想改。
余额的表达式。IsNull([初始金额],0) - IsNull([支出],0) + IsNull([收入],0)
支出的表达式Sum(Child(ZC).金额)
收入的表达式Sum(Child(SR).金额)