Forum Discussion
Return table with condition function
DAX conditional functions such as IF SWITCH RETURNS scalar value.
I am converting SSRS reports to Paginated Report and publishing in powerBI Report Server(PBIRS) using PowerBI Dataset. I am passing two parameters not tie to dataset table. example from dax studio.
1. first parameter has the list and 2. parameter has the lanlogin.
if lanlogin is found in the list different table values needed to be return otherwise another table values needed to be return. Like below, since limitation of IF SWITCH conditional DAX function I couldn't achieve what I was looking for example below:
DEFINE
var _SecurityList = row("HasAccess",@HasAccess)
var _IsMGR = if(ISBLANK(FILTER(_SecurityList, search(LEFT(RIGHT(@LanLogin,len(@LanLogin)-9),len(@LanLogin)-1),[HasAccess],1,0) >= 1)),"0","1")
if(ROW("fullAccess",_IsMGR)="1", table1, table2)
where table1 and table2 are from dataset and can be manipulated.
is there some idea if this can be achievable in DAX so that I can return table or at least 1 columns with multiple rows using combination of table return functions and conditional functions.
Many thanks Greg, that did the trick to me. Appriciated your Assistance
3 Replies
- Greg_DecklerCommunity Champion
rxt If they have the same number of columns you could do this:
Table 2 = VAR __table1 = 'Table5' VAR __table2 = 'Table6' VAR __truefalse = IF(TRUE(),1,2) VAR __table1a = ADDCOLUMNS(__table1,"truefalse",__truefalse) VAR __table2a = ADDCOLUMNS(__table2,"truefalse",__truefalse) VAR __table1b = EXCEPT(__table1a,FILTER(__table1a,[truefalse]=1)) VAR __table2b = EXCEPT(__table2a,FILTER(__table2a,[truefalse]=2)) RETURN UNION(__table1b, __table2b)