Foxtable(狐表)用户栏目专家坐堂 → [求助]统计问题


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

主题:[求助]统计问题

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


加好友 发短信
等级:超级版主 帖子:107702 积分:547831 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/4 8:28:00 [显示全部帖子]

达成率要使用表达式处理,参考:http://www.foxtable.com/webhelp/topics/3227.htm

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


加好友 发短信
等级:超级版主 帖子:107702 积分:547831 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/4 9:35:00 [显示全部帖子]

帮助里有这种用法的

b.Totals.Addexp("未达成""iif(达成=false, 1, 0)")
b.Totals.Addexp("达成""iif(达成=true, 1, 0)")

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


加好友 发短信
等级:超级版主 帖子:107702 积分:547831 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/4 12:14:00 [显示全部帖子]

请上传实例测试

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


加好友 发短信
等级:超级版主 帖子:107702 积分:547831 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/4 14:08:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目12.zip


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


加好友 发短信
等级:超级版主 帖子:107702 积分:547831 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/4 21:34:00 [显示全部帖子]


Dim b As New CrossTableBuilder("Cj1", "select  负责人,PlWeek as 年周,异常分类,ReYq as 达成,1 as sl from {ProjectSchedule_View}  ", "数据源名称")
b.HGroups.AddDef("负责人") '添加客户列用于水平分组
b.HGroups.AddDef("年周") '添加客户列用于水平分组
b.VGroups.AddDef("异常分类", "异常分类_{0}") '添加产品列用于垂直分组
b.VGroups.AddExp("达成", "iif(达成 = true,'达成','未达成')") '添加产品列用于垂直分组
b.Totals.AddDef("sl") '添加数量列用于统计
b.VerticalTotal = True
Dim tbCj As Table = Tables(e.Form.Name & "_TabProjectSchedule_Cj")
tbcj.DataSource = b.BuildDataSource

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


加好友 发短信
等级:超级版主 帖子:107702 积分:547831 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/4 22:08:00 [显示全部帖子]

改为SQlCrossTableBuilder

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


加好友 发短信
等级:超级版主 帖子:107702 积分:547831 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/4 22:38:00 [显示全部帖子]

如果是SqlServer数据库

b.VGroups.AddExp("达成", "Case When 达成=1 Then '达成' Else '未达成' End") 



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


加好友 发短信
等级:超级版主 帖子:107702 积分:547831 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/6 8:46:00 [显示全部帖子]

复杂语句可以考虑直接使用视图:Dim b As New sqlCrossTableBuilder("Cj1", "select * from [xxx视图]", "ZC_Data")

10楼的问题没有办法直接到统计里处理,只能是像2楼帮助那样,生成报表后再添加列

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


加好友 发短信
等级:超级版主 帖子:107702 积分:547831 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/6 11:38:00 [显示全部帖子]

视图肯定是可以的。到后台数据库执行【select * from ProjectSchedule_View】,看是什么效果?

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


加好友 发短信
等级:超级版主 帖子:107702 积分:547831 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/6 21:06:00 [显示全部帖子]

必须是sqlCrossTableBuilder,才能使用AddExp

Dim tbCj As Table = Tables(e.Form.Name & "_TabProjectSchedule_Cj")
Dim b As New sqlCrossTableBuilder("Cj1", "select  负责人,PlWeek as 年周,异常分类,ReYq as 达成,1 as sl from {ProjectSchedule_View}  ","数据源名称")
b.HGroups.AddDef("负责人") 
b.HGroups.AddDef("年周") 
b.VGroups.AddDef("异常分类", "异常分类_{0}") 
b.VGroups.AddExp("达成", "iif(达成 = 1,'达成','未达成')") 
b.Totals.AddDef("sl") 
b.VerticalTotal = True
tbcj.DataSource = b.BuildDataSource

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