Попытка выяснить, как работает ParallelPeriod в DAX - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть простая таблица Power BI, которая выглядит следующим образом:

enter image description here

У меня есть две таблицы.Таблица дат и таблица счетов с полем, представляющим суммы счетов.Это отношение 1-M для Invoice.InvoiceDate.

Второй столбец - это просто показатель суммы счетов.Третий и четвертый столбцы - это показатели, использующие ParallelPeriod для суммирования счетов за 12 месяцев и 24 месяца назад.Хотя эти цифры верны, я не совсем уверен, что знаю, что на самом деле происходит.

Показатель для 12-месячного параллельного периода выглядит следующим образом:

Sum Invoice Amount 12 Months Ago =
CALCULATE (
    SUM ( FactCustomerTransaction[InvoiceAmountDollars] ),
    PARALLELPERIOD ( 'Date'[Date], -12, MONTH )
)

Вот то, что я думаю, происходит.Когда сумма рассчитывается, скажем, с 2015 по февраль, все значения за этот месяц извлекаются из таблицы счетов-фактур (многие стороны) и суммируются для генерации «Сумма суммы счета-фактуры».Получаются те же самые даты, минус 12 месяцев, в таблице «Дата», и такая же сумма генерируется для этого диапазона дат для «Сумма счета-фактуры за 12 месяцев назад».И затем тот же процесс в течение 24 месяцев назад.

Это работает из-за отношения 1-M между датой и счетом.Это правильно?

1 Ответ

0 голосов
/ 08 февраля 2019

Для строки 2015-февраль, при условии, что столбец Year and Month Name находится в вашей таблице 'Date', ваш контекст фильтра равен 'Date'[Year and Month Name] = "2015-Feb".Этот фильтр соответствует датам от 2015-02-01 до 2015-02-28 в столбце 'Date'[Date], и эта фильтрация распространяется на отношения, возвращая только строки в таблице FactCustomerTransaction, где InvoiceDate является одной из этих дат, а затем суммирует суммысоответствует только этим строкам.

Когда вы добавляете PARALLELPERIOD, он работает таким же образом, за исключением того, что после сопоставления дат 2015-02-01 - 2015-02-28, соответствующих 'Date'[Year and Month Name] = "2015-Feb", он сдвигает эти даты назад на 12месяцев, а затем распространяет эти сдвинутые даты в отношениях.

...