决策报表参数

现在的场景是,决策报表中用控件bu来作参数,在数据集中使用语句

image.png

过滤。

其中有一个数据集(在数据查询中)给了bu的默认参数值。

此时如果不给控件bu任何控件值,正常就是没有过滤 and part_no2 in ('参数值')这个条件;但如果给控件bu赋了一个值(如下图),第一次预览的结果(从设计器打开预览)会发现该数据集是被数据集里的参数值过滤的结果 就是→执行了 and part_no2 in('参数值')这个条件

image.png

其中report3~B3其实值是空的,len(report3~B3)=0

想问一下报表打开读参数值是什么逻辑,这种情况该怎么解释?

补充一下,当控件给了默认参数值report3~B3的时候,在预览时会有以下报错

image.png

FineReport Juint 发布于 2023-10-20 09:29 (编辑于 2023-10-20 09:53)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
CD20160914Lv8专家互助
发布于2023-10-20 09:32(编辑于 2023-10-20 09:54)

加载的时候就是先看参数的值了,但是你的参数引用的单元格的内容。这个时候加载还没有出来。它就为空了!

单元格的加载是在最后,而参数是在报表刚打开的时候就去判断了,你引用单元格的值它还没有加载出来,就为空了

//获取参数的值,并打印出来

var a =this.options.form.getWidgetByName("你的参数名称").getValue();//改成你的参数名称

alert(a)

  • Juint Juint(提问者) 那正常如果引用的单元格导致参数值为空的话,在数据集中的len(bu)=0是成立的,也应该不做过滤才对呀 但测试的结果是这种情况下是引用了数据查询里给的参数值做了过滤
    2023-10-20 09:34 
  • CD20160914 CD20160914 回复 Juint(提问者) 那你可以打印一下,看它加载的时候是不是很快就出来你的决策报表
    2023-10-20 09:35 
  • CD20160914 CD20160914 回复 Juint(提问者) alert(你的参数名称)
    2023-10-20 09:36 
  • Juint Juint(提问者) 回复 CD20160914 这个是在哪弄 不是帆软的函数吧 有相关文档可以参考吗
    2023-10-20 09:51 
  • CD20160914 CD20160914 回复 Juint(提问者) 就是js的语句。。。这个就是获取参数面板的值 var a = this.options.form.getWidgetByName(\"控件名A\").getValue();
    2023-10-20 09:53 
  • 2关注人数
  • 209浏览人数
  • 最后回答于:2023-10-20 09:54
    请选择关闭问题的原因
    确定 取消
    返回顶部