BUG系列:4、隐藏提示器默认传值的空值丢失BUG

浏览: 2468

环境:BIEE 11G 11.1.1.7.

背景: 有列A,其值为A1\A2\A3\空值

要求:在列提示器A中添加列值B,若选择B的时候代表除了A1外的所有值,希望选择B+A1达到和选择所有值一样的目的。

测试1:

        1、在提示器1中放置列A,列公式为列A拼空字符串,设置可以多选,赋值给变量PVA,设置列A的选项列表为SQL结果,使用union结果集拼B上去

        select 'B' from  Subject area 

        union all

        select A from  Subject area 

        2、放隐藏提示器2,放置列A,设置可以多选,设置表示变量PVB,设置默认选择为SQL列表,

            select A from Subject area 

            where case when position('B','@{PVA}{the variable has no value}')>0 then ifnull(A,'A1') else 'A1' end <> 'A1'

                or  A in (@{PVA}['@']{'the variable has no value'})

        3、分析展示列A,提示器接列A

结果:

提示器1选择A1,分析展示A1

提示器1选择A1\A3,分析展示A1\A3

提示器1选择B ,分析展示A2\A3,空值去哪里去了?

把提示器2取消隐藏,观察值传递情况,发现提示器2的列A已经按要求勾选了空值,那空值传递去哪里去了?

拉PVA\PVB\过滤器在分析上展示, 可以看到PVA的值为B,PVB的值为A2,A3,*)nqgtn(* ,但过滤器仅仅传递过来为列A等于A2,A3,空值不见了。

        

点击提示器2的提交按钮,可以看到PVA的值为B,PVB的值为A2,A3,*)nqgtn(* ,但过滤器传递过来的为列A等于A2,A3 or 列A 为空值。

隐藏提示的默认多选若包含空值的时候。空值传递遗失。

那么若直接提示器默认值包含空值,是否会有传递丢失的情况发生呢?

测试2:

        1、在提示器1中放置列A,默认选择空值和A3,可以多选

        2、在分析中显示列A,接过滤器A

结果:

仪表盘上分析正常显示列A为空值和A3,提示器1正常改变选项值,分析可以正常对应变化。

说明正常情况下的提示器空值传递不会丢失

隐藏提示器或者说第2个提示器的空值被传递丢失了。

推荐 0
本文由 百分百 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册