Foxtable(狐表)用户栏目专家坐堂 → [求助]代码增加表达式列的问题


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

主题:[求助]代码增加表达式列的问题

帅哥哟,离线,有人找我吗?
klg1011
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:320 积分:2798 威望:0 精华:0 注册:2013/1/30 17:49:00
[求助]代码增加表达式列的问题  发帖心情 Post By:2014/4/16 16:43:00 [只看该作者]

http://www.foxtable.com/help/topics/2305.htm
此帮助里最下面有这么一段代码,是把组合后的统计结果绑定到窗口中的Table控件上显示,其中代码的意思是增加了一列表达式列。那么有没有办法在主界面上实现这种效果呢?

Tables("窗口1_Table1").DataSource = dt1 '将统计结果绑定到Table
With DataTables("窗口1_Table1").DataCols  '用表达式列计算库存数据
    .Add("库存_数量",Gettype(Integer), "IsNull([进货_数量],0) - ISNULL([销售_数量],0) - ISNULL([退货_数量],0)")
    .Add("库存_金额",Gettype(Double), "[库存_数量] /[进货_数量] * [进货_金额]") 
End With

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/4/16 16:46:00 [只看该作者]

同样可以这么做的啊.你自己动手试试不就知道了. 无须问的,这类问题.

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


加好友 发短信
等级:小狐 帖子:320 积分:2798 威望:0 精华:0 注册:2013/1/30 17:49:00
  发帖心情 Post By:2014/4/16 16:59:00 [只看该作者]

因为dt1是fxDataSource类型,没有DataCols 属性的,帮助里是把dt1绑定到窗口Table上后使用的,但在主界面数据表里怎么办呢?不能直接使用dt1的。

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/4/16 17:01:00 [只看该作者]

你生成表.不就有Datatable了么.你不生成表.和来的主界面?  你生成fxDataSource 位置给窗口表,窗口表不就是主界面么?



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


加好友 发短信
等级:小狐 帖子:320 积分:2798 威望:0 精华:0 注册:2013/1/30 17:49:00
  发帖心情 Post By:2014/4/16 17:07:00 [只看该作者]

谢谢!!!改好了,代码测试通过!!!

Dim b1 As New SQLGroupTableBuilder("统计表1","开piao明细表")
Dim dt1 As fxDataSource
b1.C     ‘  奇怪,此段连接外部数据源名称的代码放到论坛上不显示哦 b 1 .  C  o  n  ecti 
b1.Groups.AddDef("公司名称") 
b1.Totals.AddDef("金额","2014年_开piao金额")

b1.Filter =" [开piao日期] >= #1/1/1999# And [开piao日期] <= #12/29/2014#"

dt1 = b1.BuildDataSource()
Dim b2 As New SQLGroupTableBuilder("统计表2","回款明细表")
Dim dt2 As fxDataSource
b2.C
b2.Groups.AddDef("公司名称") 
b2.Totals.AddDef("回款金额","2014年_回款金额")

b2.Filter =" [开piao日期] >= #1/1/1999# And [开piao日期] <= #12/29/2014#"
dt2 = b2.BuildDataSource()
dt1.Combine("公司名称",dt2,"公司名称") 
dt1.Show("统计表1")
With DataTables("统计表1").DataCols  
       .Add("2014年_金额",Gettype(Double), "IsNull([2014年_开piao金额],0) - ISNULL([2014年_回款金额],0) ") 
End With

MainTable = Tables("统计表1")

[此贴子已经被作者于2014-4-16 17:10:30编辑过]

 回到顶部