My parameter definition:
<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>
Constraints part in my MQL query
<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>
First constraint works because the parameter is single value but the second constraint gives me a message CONTA is not supported and ISNA doesn’t work if user selects multiple values.
I found out a way to do this, for each multivalue parameter “param1” create another hidden boolean parameter “param1_hidden” in the “post-processor-formula” for the new param use the following formula
now in your query