Foxtable(狐表)用户栏目专家坐堂 → 查询表代码


  共有11449人关注过本帖树形打印复制链接

主题:查询表代码

美女呀,离线,留言给我吧!
bm
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:437 积分:3463 威望:0 精华:0 注册:2011/9/13 23:27:00
查询表代码  发帖心情 Post By: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楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47449 积分:251065 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/11/22 9:12:00 [只看该作者]

将这三个表传上来啊,否则怎么测试代码?

 回到顶部
美女呀,离线,留言给我吧!
bm
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:437 积分:3463 威望:0 精华:0 注册:2011/9/13 23:27:00
请帮忙看看  发帖心情 Post By:2011/11/22 9:24:00 [只看该作者]

谢谢了。

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

密码888

[此贴子已经被作者于2011-11-22 9:24:33编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47449 积分:251065 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By: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")

 回到顶部
美女呀,离线,留言给我吧!
bm
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:437 积分:3463 威望:0 精华:0 注册:2011/9/13 23:27:00
狐狸爸爸请您再看看  发帖心情 Post By:2011/11/22 10:40:00 [只看该作者]

这个表达式感觉不对。出来的结果不一样。
图片点击可在新窗口打开查看此主题相关图片如下:截图40.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:截图39.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2011-11-22 10:40:51编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47449 积分:251065 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By: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")

 回到顶部
美女呀,离线,留言给我吧!
bm
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:437 积分:3463 威望:0 精华:0 注册:2011/9/13 23:27:00
狐狸爸爸请您看看  发帖心情 Post By:2011/11/22 11:15:00 [只看该作者]

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


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

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47449 积分:251065 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By: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编辑过]

 回到顶部
美女呀,离线,留言给我吧!
bm
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:437 积分:3463 威望:0 精华:0 注册:2011/9/13 23:27:00
狐狸爸爸请您看看  发帖心情 Post By:2011/11/22 12:11:00 [只看该作者]

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

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

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

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

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

[此贴子已经被作者于2011-11-22 12:26:55编辑过]

 回到顶部
美女呀,离线,留言给我吧!
bm
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:437 积分:3463 威望:0 精华:0 注册:2011/9/13 23:27:00
自己顶一下。  发帖心情 Post By:2011/11/22 12:32:00 [只看该作者]

自己顶一下。

 回到顶部
总数 15 1 2 下一页