Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共15 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:查询表代码

1楼
bm 发表于:2011/11/22 8:58:00

求救各位高手一共三个表。中间的表中的”支出“”收入“”余额“都是表达试例。现在想要不用表达式。直接用代码生成临时表(和第二个表一样)。因为一定要全部加载”余额“才能正确。

帮忙改一下代码

 

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")

 


图片点击可在新窗口打开查看此主题相关图片如下:截图38.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:截图37.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:截图36.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2011-11-22 9:12:19编辑过]
2楼
狐狸爸爸 发表于:2011/11/22 9:12:00
将这三个表传上来啊,否则怎么测试代码?
3楼
bm 发表于:2011/11/22 9:24:00

谢谢了。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:我的工作_1121.zip

密码888

[此贴子已经被作者于2011-11-22 9:24:33编辑过]
4楼
狐狸爸爸 发表于:2011/11/22 10:10:00
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")
5楼
bm 发表于:2011/11/22 10:40:00
这个表达式感觉不对。出来的结果不一样。
图片点击可在新窗口打开查看此主题相关图片如下:截图40.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:截图39.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2011-11-22 10:40:51编辑过]
6楼
狐狸爸爸 发表于:2011/11/22 10:43:00
Dim jb As New SQLJoinTableBuilder("查询表1","账户管理")
jb.AddTable("账户管理","账户名称","支出明细","支出账户")
jb.AddTable("账户管理","账户名称","收入","收入账户")
jb.AddCols("账户名称",True)
jb.AddCols("初始金额")
jb.AddExp("支出","Sum({支出明细}.金额)")
jb.AddExp("收入","Sum({收入}.金额)")
jb.AddExp("余额","初始金额-支出+收入")
jb.Build()
MainTable = Tables("查询表1")
7楼
bm 发表于:2011/11/22 11:15:00

测试出错了。不会改。帮忙再看看。


图片点击可在新窗口打开查看此主题相关图片如下:截图41.jpg
图片点击可在新窗口打开查看
8楼
狐狸爸爸 发表于:2011/11/22 12:04:00

还是这个代码正确:

 

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")

 

只有两行数据,是因为的收入表没有“建行账户”,这种连接取得每个表都有的分组。

[此贴子已经被作者于2011-11-22 12:05:54编辑过]
9楼
bm 发表于:2011/11/22 12:11:00

这三个表是关联表。”账户管理。支出“关联的例是“账户名称”“支出账户”。    ”账户管理。收入“关联的例是  “账户名称”“收入账户”。

那个余额也不一样的。因为一定要加载所有数据才能算出余额。所以想改。

余额的表达式。IsNull([初始金额],0) - IsNull([支出],0) + IsNull([收入],0)

支出的表达式Sum(Child(ZC).金额)

收入的表达式Sum(Child(SR).金额)

[此贴子已经被作者于2011-11-22 12:26:55编辑过]
10楼
bm 发表于:2011/11/22 12:32:00
自己顶一下。
共15 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 3 queries.