Foxtable(狐表)用户栏目专家坐堂 → 字符型字段(实际为数字),统计无法加总,如何转换


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

主题:字符型字段(实际为数字),统计无法加总,如何转换

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


加好友 发短信
等级:婴狐 帖子:15 积分:202 威望:0 精华:0 注册:2017/10/23 15:29:00
字符型字段(实际为数字),统计无法加总,如何转换  发帖心情 Post By:2017/12/1 15:22:00 [只看该作者]

Dim b As New SQLCrossTableBuilder("统计表1","BIO_MF")
b.C
b.HGroups.AddDef("MF_DEP") '添加日期列用于垂直分组,按年分组
b.VGroups.AddDef("MF_PRIO") '添加客户列用于水平分组
b.Totals.AddDef("MF_AMT") '添加数量列用于统计
b.Build '生成统计表
MainTable = Tables("统计表1") '打开生成的统计表


执行后 ,提示:统计错误,错误原因:操作数据类型 nvarchar对于sum运算符无符
尝试修改成 b.Totals.AddDef(CDbl("MF_AMT") ) ,也是错误的
请问b.Totals.AddDef("MF_AMT") ,这里应如何修改?
[此贴子已经被作者于2017/12/1 15:22:23编辑过]

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


加好友 发短信
等级:婴狐 帖子:15 积分:202 威望:0 精华:0 注册:2017/10/23 15:29:00
  发帖心情 Post By:2017/12/1 15:28:00 [只看该作者]

b.C   --》没传上去,此段应为 b.C

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


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/12/1 16:11:00 [只看该作者]

b.Totals.AddExp("MF_AMT","cast(MF_AMT as float)") 

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/12/1 16:25:00 [只看该作者]

既然是需要加总的数据,为什么不改成数值列?为什么要用字符列?

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


加好友 发短信
等级:婴狐 帖子:15 积分:202 威望:0 精华:0 注册:2017/10/23 15:29:00
  发帖心情 Post By:2017/12/1 16:31:00 [只看该作者]

谢谢!

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


加好友 发短信
等级:婴狐 帖子:15 积分:202 威望:0 精华:0 注册:2017/10/23 15:29:00
  发帖心情 Post By:2017/12/1 16:56:00 [只看该作者]

老师:这是方便EXCEL VB上传SQL服务器数据设置,现在正好拿来学习FT
另:追问:刚才查询出来的结果,应如何在哪个位置加入FORMAT,把它应成1,999.00这种格式

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


加好友 发短信
等级:婴狐 帖子:15 积分:202 威望:0 精华:0 注册:2017/10/23 15:29:00
问题:这行代码好像也没指定是哪个分组进行小计呀?为啥只按 “年”进行了小计呢?  发帖心情 Post By:2017/12/1 17:23:00 [只看该作者]

示例四

SQLGroupTableBuilder同样可以生成汇总模式,只需将Subtotal属性设置为True即可,例如:

Dim b As New SQLGroupTableBuilder("统计表1","订单")
b
.ConnectionName = "Sale"
b
.AddTable("订单","产品ID","产品","产品ID") '添加统计表
b
.AddTable("订单","客户ID","客户","客户ID") '添加统计表
b
.Groups.AddDef("客户名称") '根据产品名称分组
b
.Groups.AddDef("日期", DateGroupEnum.Year, "年") '根据日期按年分组
b
.Groups.AddDef("产品名称") '根据产品名称分组
b
.Totals.AddDef("数量") '对数量进行统计
b.Subtotal =
True '生成汇总模式
b
.Build '生成统计表
MainTable
= Tables("统计表1") '打开生成的统计表


问题:这行代码好像也没指定是哪个分组进行小计呀?为啥只按 “年”进行了小计呢?

b.Subtotal = True '生成汇总模式


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/12/1 17:44:00 [只看该作者]

1、你按照什么分组,就是按照什么小计。

 

当然你可以继续设置汇总模式 http://www.foxtable.com/webhelp/scr/1372.htm

 

2、设置格式参考

 

http://www.foxtable.com/webhelp/scr/1659.htm

 

 


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


加好友 发短信
等级:婴狐 帖子:15 积分:202 威望:0 精华:0 注册:2017/10/23 15:29:00
  发帖心情 Post By:2017/12/4 10:44:00 [只看该作者]

老师:追问一下问题:统计表 能否在Form中的Table中显示?该如何实现?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/12/4 10:48:00 [只看该作者]

以下是引用18896803639在2017/12/4 10:44:00的发言:
老师:追问一下问题:统计表 能否在Form中的Table中显示?该如何实现?

 

参考 http://www.foxtable.com/webhelp/scr/1909.htm

 


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