汤七七七七七青铜四
2022-3-16 17:24:14 发布在问答
【常用脚本】 下拉列表过滤与表格联动-9.4.1
目前是选择对应维度和指标,表格展示所选择的字段,目前运用下拉列表、表格、脚本共同实现,但新版出现提示聚合计算列不支持再聚合。错误字段为计算列,计算公式为sum(A)/sum(B)

想知道如何调整或更改,在不影响数据结果的基础上。
或者新版9.4.1是否有其他更好的方式达到我期望实现的模式。
脚本:
var lens=维度.getSelectedObjects().length
1.binding.clearCols() //清除表格绑定的字段
var j;
var i;
for(j=0; j<lens; j++)
{
var colnamea=维度.getSelectedObjects()[j;
var bcol2=new BCol(colnamea,STRING,true);
var col2 = new DimCol(bcol2);
    表1.binding.addCol(j,col2);
}
var arr=度量指标.getSelectedObjects()
for(i=0;i<arr.length;i++){
var colname=度量指标.getSelectedObjects()[i;
var bcol=new BCol(colname,STRING,false);
var mcol= new MeasureCol(SUM,bcol,null); //创建表要绑定的字段
1.binding.addCol(i+j,mcol) //给表绑定字段
}


Snipaste_2022-03-16_17-16-03.png

最佳答案

永洪tech-lucy 青铜一

2022-03-16 17:24:15

参数列 多选支持的 case 参考附件,其他方式暂不支持,如果不满足您需求,请详细描述,我们这边会将需求反馈给产品部门同事
查看完整内容
7005
20
精彩评论20
永洪tech-lucy青铜一
发表于 2022-3-16 17:24:15 显示全部楼层
参数列 多选支持的 case 参考附件,其他方式暂不支持,如果不满足您需求,请详细描述,我们这边会将需求反馈给产品部门同事

参数列多选.rar

91.06 KB, 下载次数: 4

回复

使用道具 2#

永洪Tech-ZCL玄铁二
发表于 2022-3-16 18:11:27 显示全部楼层
聚合列再聚合这种方式是不支持的哦
回复

使用道具 3#

汤七七七七七青铜四
发表于 2022-3-17 09:23:15 显示全部楼层
永洪Tech-ZCL 发表于 2022-3-16 18:11
聚合列再聚合这种方式是不支持的哦

我需要处理方案哦~
回复

使用道具 4#

永洪tech-lucy青铜一
发表于 2022-3-17 10:39:02 显示全部楼层

新版本提示“聚合不支持再聚合”,这个其实之前版本也是有的,只是脚本方式绑定之前检测不严格,您只需要将 脚本里面的:var mcol= new MeasureCol(SUM,bcol,null);  修改为:var mcol= new MeasureCol(None,bcol,null);
bb.png


回复

使用道具 5#

汤七七七七七青铜四
发表于 2022-3-17 13:06:56 显示全部楼层
永洪tech-lucy 发表于 2022-3-17 10:39
新版本提示“聚合不支持再聚合”,这个其实之前版本也是有的,只是脚本方式绑定之前检测不严格,您只需要 ...

修改之后还是不行哎,报一样的错误;甚至原来没有问题的计算列也开始报错了。
回复

使用道具 6#

humming青铜三
发表于 2022-3-17 13:10:04 显示全部楼层
把已经聚合过一遍的那个列的对应聚合设置为null
表达式定义也是类似的。sum(A)/sum(B) 如果A已经是聚合的,但是B是非聚合的。 那么应该修改为  A/sum(B)
回复

使用道具 7#

永洪tech-lucy青铜一
发表于 2022-3-17 13:10:36 显示全部楼层
汤七七七七七 发表于 2022-3-17 13:06
修改之后还是不行哎,报一样的错误;甚至原来没有问题的计算列也开始报错了。 ...

建议您在新的报表上测试,本地入之前截图的,使用"None" 方式绑定 聚合计算列是 可以正常work的。 (不过您需要对 字段做区分,如果原本是 非聚合的 您还是需要使用 sum,none是针对的 聚合列)
回复

使用道具 8#

永洪tech-lucy青铜一
发表于 2022-3-17 13:12:23 显示全部楼层
永洪tech-lucy 发表于 2022-3-17 13:10
建议您在新的报表上测试,本地入之前截图的,使用"None" 方式绑定 聚合计算列是 可以正常work的。 (不过 ...

例如:if( 列名 == 聚合列 ){
var mcol= new MeasureCol(None,bcol,null); // 绑定聚合列
}else{
var mcol= new MeasureCol(SUM,bcol,null); // 绑定普通列
}

回复

使用道具 9#

汤七七七七七青铜四
发表于 2022-3-17 13:46:54 显示全部楼层
永洪tech-lucy 发表于 2022-3-17 13:12
例如:if( 列名 == 聚合列 ){
var mcol= new MeasureCol(None,bcol,null); // 绑定聚合列
}else{

就是普通列和聚合列我不可以同时都使用在同一个下拉列表过滤组件中配置,脚本不能一起写是么?
我得分开?或者把原本的普通列调整成聚合列?
回复

使用道具 10#

123  
高级模式
您需要登录后才可以回帖 登录 | 免费注册

  • 官方微信

    欢迎关注永洪服务号!收费为0,价值无限

    扫码关注
  • 新浪微博

    让每位用户轻松挖掘数据价值!

    访问新浪微博
  • 智能客服
1500W

用户等你来哦

Copyright   ©2012-2025  北京永洪商智科技有限公司  (京ICP备12050607) 京公网安备110110802011451号 |《永洪社区协议》
返回顶部