#powerbi #dax
#powerbi #dax
Вопрос:
У меня есть 2 слайсера, которые используются, чтобы позволить конечному пользователю выбирать, какую меру они хотят видеть.
Я использую функцию переключения для переключения между различными мерами, но я хотел бы отформатировать их так, чтобы 4 из них были валютой, а остальные 2 — целыми числами. Однако, когда я делаю это, это не позволяет мне помещать меру в мои диаграммы из-за пользовательского форматирования:
M_MeasureSelection =
VAR MeasureSelect = SELECTEDVALUE(MeasureSelection[MeasureType]) amp; " " amp; SELECTEDVALUE(MeasureSelection[Measure])
RETURN
SWITCH (
TRUE (),
MeasureSelect = "Booked ADR",
FORMAT([M_BookedADR], "$#.##"),
MeasureSelect = "Booked Revenue",
FORMAT([M_BookedRevenue], "$#.##"),
MeasureSelect = "Booked Room Nights",
FORMAT([M_BookedRoomNights], "#.##"),
MeasureSelect = "Actualized ADR",
FORMAT([M_ActualizedADR], "$#.##"),
MeasureSelect = "Actualized Revenue",
FORMAT([M_ActualizedRevenue], "$#.##"),
MeasureSelect = "Actualized Room Nights",
FORMAT([M_ActualizedRoomNights], "#.##")
)
Он работает с моими диаграммами, когда я вынимаю функции форматирования:
M_MeasureSelection2 =
VAR MeasureSelect = SELECTEDVALUE(MeasureSelection[MeasureType]) amp; " " amp; SELECTEDVALUE(MeasureSelection[Measure])
RETURN
SWITCH (
TRUE (),
MeasureSelect = "Booked ADR",
[M_BookedADR],
MeasureSelect = "Booked Revenue",
[M_BookedRevenue],
MeasureSelect = "Booked Room Nights",
[M_BookedRoomNights],
MeasureSelect = "Actualized ADR",
[M_ActualizedADR],
MeasureSelect = "Actualized Revenue",
[M_ActualizedRevenue],
MeasureSelect = "Actualized Room Nights",
[M_ActualizedRoomNights]
)
У кого-нибудь есть какие-либо идеи по этому поводу? Любые другие варианты или мне просто нужно удалить форматирование?
Ответ №1:
Вы можете использовать SWITCH
command в качестве кода ниже:
M_MeasureSelection =
VAR MeasureSelect = CONVERT(SELECTEDVALUE(MeasureSelection[MeasureType]) amp; " " amp; SELECTEDVALUE(MeasureSelection[Measure]), STRING)
RETURN
SWITCH (
MeasureSelect, /* Param */
"Booked ADR", FORMAT([M_BookedADR], "Currency"), /* Is Booked ADR? Then ... */
"Booked Revenue", FORMAT([M_BookedRevenue], "Currency"), /* Is Booked Revenue? Then ...*/
"Booked Room Nights", FORMAT([M_BookedRoomNights], "Currency"),
"Actualized ADR", FORMAT([M_ActualizedADR], "Currency"),
"Actualized Revenue", FORMAT([M_ActualizedRevenue], "Currency"),
"Actualized Room Nights", FORMAT([M_ActualizedRoomNights], "Currency"),
"Invalid Option!" /* Just for enhance */
)
Убедитесь, что все ваши меры внутри этих FORMAT
функций являются числами, а не строками, но если это так, вы могли бы сделать CONVERT
.