Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

Conditionally assign union in Dax tabular model

Hi Team,

 

I've created two variables with different conditions below. (T1 and T2  )

I need to do union based on some condition in ssas tabular not in power bi.

example: if(condition="no approve",union(T1,T2),otherwise will return only T1)

 

I tried below quey but error like: The expression specified in the query is not a valid table expression. Can you help me on this?

 

Query

DEFINE
VAR T1 =
SUMMARIZECOLUMNS (

sl[status],
sl[desc]

)

VAR T2 =
SUMMARIZECOLUMNS (
sp[SpStatus],
sp[desc]
FILTER (
sp,
sp[SpStatus]
IN { "no approve" })

)
VAR union_T1_T2 =
UNION ( T1, T2)

var gl=IF(VALUES(sp[SpStatus])="no approve",

union_T1_T2,

T1)

EVALUATE
gl

  • The IF function won't output tables, only single values.

     

    However, since you already have a SpStatus filter inside the definition of T2, wouldn't what you're trying to do be the same as just union_T1_T2 since T2 is empty if the condition isn't met?

2 Replies

  • Anonymous , Try like, if might not work

    try like

    union(T1,filter(T2,condition="no approve"))

     

    or

    union(T1,filter(T2,if(condition="no approve", true(), false() ))

     

  • The IF function won't output tables, only single values.

     

    However, since you already have a SpStatus filter inside the definition of T2, wouldn't what you're trying to do be the same as just union_T1_T2 since T2 is empty if the condition isn't met?