gpt4 book ai didi

java - 如何在pentaho报表设计器中我想检查多值参数是否为空或为空?

转载 作者:行者123 更新时间:2023-12-01 15:08:30 25 4
gpt4 key购买 nike

我的参数定义:

        <list-parameter name="Direction" allow-multi-selection="true" strict-values="true" mandatory="false" type="[Ljava.lang.String;" query="DirectionQuery" key-column="BC_CALL_CLASSIFICATION_DIM_DIRECTION_NAME" value-column="BC_CALL_CLASSIFICATION_DIM_DIRECTION_NAME">
<attribute namespace="http://reporting.pentaho.org/namespaces/engine/parameter-attributes/core" name="role">user</attribute>
<attribute namespace="http://reporting.pentaho.org/namespaces/engine/parameter-attributes/core" name="parameter-render-type">list</attribute>
<attribute namespace="http://reporting.pentaho.org/namespaces/engine/parameter-attributes/core" name="label">Direction</attribute>
<attribute namespace="http://reporting.pentaho.org/namespaces/engine/parameter-attributes/core" name="hidden">false</attribute>

我的 MQL 查询中的约束部分

<constraint>
<operator>AND</operator>
<condition>OR( ISNA([param:Destination Type]);EQUALS([BC_FCT_CALLS.BC_NUMBER_CLASSIFICATION_DIM_CLASSIFICATION];[param:Destination Type]))</condition>
</constraint>
<constraint>
<operator>AND</operator>
<condition>OR(COUNTA([param:Direction]) == 0 ;EQUALS([BC_FCT_CALLS.BC_CALL_CLASSIFICATION_DIM_DIRECTION_NAME];[param:Direction]))</condition>
</constraint>

第一个约束有效,因为参数是单个值,但第二个约束给我一条消息:不支持 CONTA,并且如果用户选择多个值,ISNA 将不起作用。

最佳答案

我找到了一种方法来做到这一点,对于每个多值参数“param1”,在“后处理器公式”中为新参数创建另一个隐藏 boolean 参数“param1_hidden”,使用以下公式

 =(COUNTA([param1]) = 0 )

现在在您的查询中

OR( EQUALS(TRUE();[param:param1_hidden);EQUALS([TABLE.COLUMN];[param:param1,]))

关于java - 如何在pentaho报表设计器中我想检查多值参数是否为空或为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12638395/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com