We're giving away 30 tickets for FREE! Share your story, your vision, or your hustle and tell us why YOU deserve a ticket.
Apply nowWin a FREE 3 Day Ticket to FabCon Vienna. Apply now
I'm really struggling to get my head round this SWITCH statment, may not be possible in one calculated column? I've written it in SQL below as a case statment and it works but cant do the same in DAX. I believe SWITCH would be the best function to use and have tried nesting IF statetments in there as well with no luck.
Any help greatly appreciated!
case when A is null and B in ('1',2','3','4','5') then 'Global'
when A in ('11',12','13') and B is null or B = '6' then 'Local'
when A is null and B is null or B = '6' and DIM.C not in ('98','99') then 'Customer'
when A is null and B is null or B = '6' and DIM.C = '98' then 'Other' else 'NA' end as 'Category'
Solved! Go to Solution.
Hi @Anonymous
This is a formula for a calculated column
Switch Statement =
SWITCH (
TRUE (),
TableName[A] = BLANK ()
&& TableName[B] IN { 1, 2, 3, 4, 5 }, "Global",
TableName[A]
IN { 11, 12, 13 }
&& OR ( TableName[B] = BLANK (), TableName[B] = 6 ), "Local",
TableName[A] = BLANK ()
&& OR ( TableName[B] = BLANK (), TableName[B] = 6 )
&& NOT ( RELATED ( DIM[C] ) IN { 98, 99 } ), "Customer",
TableName[A] = BLANK ()
&& OR ( TableName[B] = BLANK (), TableName[B] = 6 )
&& RELATED ( DIM[C] ) = 98, "Other",
"NA"
)
Amazing, thank you!!
Hi @Anonymous
This is a formula for a calculated column
Switch Statement =
SWITCH (
TRUE (),
TableName[A] = BLANK ()
&& TableName[B] IN { 1, 2, 3, 4, 5 }, "Global",
TableName[A]
IN { 11, 12, 13 }
&& OR ( TableName[B] = BLANK (), TableName[B] = 6 ), "Local",
TableName[A] = BLANK ()
&& OR ( TableName[B] = BLANK (), TableName[B] = 6 )
&& NOT ( RELATED ( DIM[C] ) IN { 98, 99 } ), "Customer",
TableName[A] = BLANK ()
&& OR ( TableName[B] = BLANK (), TableName[B] = 6 )
&& RELATED ( DIM[C] ) = 98, "Other",
"NA"
)
User | Count |
---|---|
14 | |
12 | |
7 | |
7 | |
6 |
User | Count |
---|---|
28 | |
20 | |
14 | |
11 | |
5 |