таблица с несколькими значениями была предоставлена в таблице SSAS 2012

#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]
        )