Forum Discussion
Timi99
2 years agoNew Member
DAX Sematic/Syntax Error
Hello All, Could you please help with the below issue. Issue: Semantic Error. The sysntax for SWITCH is INCORRECT. Total_RD_MTM_Amount_CCY:=SUMX(TradeTransactionFinTrade, TradeTransactionFin...
- Anonymous2 years ago
Hi Timi99 ,
If I understand correctly, your issue is the syntax for SWITCH is incorrect. Based on the information, you can follow these steps:
1.The syntax for SWITCH is as follows:
DAX
SWITCH(<expression>, <value>, <result>[ , <value>, <result> ]…[ , <else> ])
2.You can use the SWITCH function as follows:
Total_RD_MTM_Amount_CCY := SUMX ( TradeTransactionFinTrade, TradeTransactionFinTrade[RD_MTM_Amount_Period_End_CCY] / TradeTransactionFinTrade[Traded_CCY] ) + SWITCH ( TRUE (), TradeTransactionFinTrade[Traded_CCY] = "JPY", SUMX ( TradeTransactionFinTrade, TradeTransactionFinTrade[RD_MTM_Amount_Period_End_CCY] / TradeTransactionFinTrade[RD_Rate_SettleCCY_JPY] ), TradeTransactionFinTrade[Traded_CCY] = "USD", SUMX ( TradeTransactionFinTrade, TradeTransactionFinTrade[RD_MTM_Amount_Period_End_CCY] / TradeTransactionFinTrade[RD_Rate_SettleCCY_USD] ), TradeTransactionFinTrade[Traded_CCY] = "GBP", SUMX ( TradeTransactionFinTrade, TradeTransactionFinTrade[RD_MTM_Amount_Period_End_CCY] / TradeTransactionFinTrade[RD_Rate_SettleCCY_GBP] ), SUMX ( TradeTransactionFinTrade, TradeTransactionFinTrade[RD_MTM_Amount_Period_End_CCY] ) )
Anonymous
2 years agoNot applicable
Hi Timi99 ,
If I understand correctly, your issue is the syntax for SWITCH is incorrect. Based on the information, you can follow these steps:
1.The syntax for SWITCH is as follows:
DAX
SWITCH(<expression>, <value>, <result>[ , <value>, <result> ]…[ , <else> ])
2.You can use the SWITCH function as follows:
Total_RD_MTM_Amount_CCY :=
SUMX (
TradeTransactionFinTrade,
TradeTransactionFinTrade[RD_MTM_Amount_Period_End_CCY] / TradeTransactionFinTrade[Traded_CCY]
)
+ SWITCH (
TRUE (),
TradeTransactionFinTrade[Traded_CCY] = "JPY",
SUMX (
TradeTransactionFinTrade,
TradeTransactionFinTrade[RD_MTM_Amount_Period_End_CCY] / TradeTransactionFinTrade[RD_Rate_SettleCCY_JPY]
),
TradeTransactionFinTrade[Traded_CCY] = "USD",
SUMX (
TradeTransactionFinTrade,
TradeTransactionFinTrade[RD_MTM_Amount_Period_End_CCY] / TradeTransactionFinTrade[RD_Rate_SettleCCY_USD]
),
TradeTransactionFinTrade[Traded_CCY] = "GBP",
SUMX (
TradeTransactionFinTrade,
TradeTransactionFinTrade[RD_MTM_Amount_Period_End_CCY] / TradeTransactionFinTrade[RD_Rate_SettleCCY_GBP]
),
SUMX (
TradeTransactionFinTrade,
TradeTransactionFinTrade[RD_MTM_Amount_Period_End_CCY]
)
)