Расчетный столбец сравните с измерением - PullRequest
0 голосов
/ 27 апреля 2018

еще одна проблема Power BI, которую я пытался решить, но безрезультатно.

Я пытаюсь создать вычисляемый столбец для пометки, если запись в этом году.

У меня есть таблица планирования:

FiscalYear | ReportDate  |  Status   | 
2017       | 01/4/2018   | Open      | 
2018       |             | Open      | 
2017       |             | Closed    |
2016       | 01/10/2016  | Complete  | 
2016       | 01/8/2017   | Complete  | 

У меня есть мера [Текущий год], которая возвращает 2018/19 в виде текста.

У меня есть таблица дат с каждой датой, образец ниже выбранных лет:

FiscalYear | FiscalYearSlash|  Date     | 
2017       | 2017/18        | ..........| 
2018       | 2018/19        | ..........| 
2017       | 2017/18        | ..........| 
2016       | 2016/17        | ..........| 
2016       | 2016/17        | ..........| 

Я могу вернуть FiscalYearSlash в таблицу планирования с помощью:

CALCULATE(VALUES(Dates[FiscalYearSlash]),
                        FILTER(Dates,
                        Dates[FiscalYear]=Planning[FiscalYear]))

но когда я ставлю это как условие в операторе IF, оно каждый раз выходит ложным. И столбец, и мера являются текстовыми. Есть идеи?

Хотите знать, связано ли это с переходом контекста? Я смотрел некоторые из видео SQLBI.com и понимаю их, но когда дело доходит до его применения .. немного борется. Благодаря.

Вот заявление IF, которое я пытаюсь:

IF( CALCULATE(VALUES(Dates[FiscalYearSlash]),
                        FILTER(Dates,
                        Dates[FiscalYear]=Planning[FiscalYear]))
= CurrentYear,"yes","no")

1 Ответ

0 голосов
/ 09 мая 2018

Я решил это. Я вернул текущий год как VAR в функции, а не меру:

VAR CurrentYear =  CALCULATE(VALUES(Dates[FiscalYearSlash]), 
                        FILTER(Dates,Dates[Date]=TODAY()))
RETURN
SWITCH(TRUE(),
            CALCULATE(VALUES(Dates[FiscalYearSlash]),
                        FILTER(Dates,
                        Dates[FiscalYear]=Planning[FiscalYear]))=CurrentYear,
            "Yes","No"
)
...