#ssas #dax #ssas-tabular
#ssas #dax #ssas-табличный
Вопрос:
Мне трудно использовать оператор case в 2012 SSAS tabular с использованием DAX. В 2012 году не была введена инструкция SWITCH.
Мой вопрос:
MeasureZ := IF(VALUES(Store[Close]) = "Y", MeasureX, MeasureY)
Приведенные выше вычисления возвращают значения при выборе "close" = "Y" or "N"
, если я выбираю оба его значения "a table of multiple values was supplied" error
. Пожалуйста, помогите мне с этим
Комментарии:
1. Каков желаемый результат при выборе обоих? Сумма
MeasureX
иMeasureY
?
Ответ №1:
Без фильтра, примененного к Store[Close]
всем значениям из этого столбца, будет возвращена VALUES
, что приведет к полученной вами ошибке. Вместо этого используйте FIRSTNONBLANK
, который, как следует из названия, возвращает первое значение столбца в текущем контексте, которое не является пустым.
[MeasureZ ]: =
IF (
FIRSTNONBLANK ( Store[Close], 1 ) = "Y",
[MeasureX],
[MeasureY]
)