Как создать годовой расчетный показатель mdx? - PullRequest
0 голосов
/ 16 апреля 2020

Здравствуйте, сотрудники MDX и SSAS,

Мне было интересно, как создать меру расчета времени, которая суммирует итоговое значение выбранного периода / месяца за весь год в данном случае, Бюджет. Поэтому, если я выберу 202004 из своей временной иерархии, это будет общий бюджет 2020 года, а если я выберу 201904, то это будет общий бюджет 2019.

На рисунке ниже я создал [Бюджет с начала года] с следующий код MDX:

Aggregate(periodstodate([Time].[Year-Month-Day].[Year],[Time].[Year-Month-Day].currentmember), 
[Measures].[Budget Amount])

Теперь я хотел бы создать [Бюджет на весь год], но пока не нашел решения (начинающий пользователь MDX). У кого есть решение для этого?

enter image description here

С уважением, Рубрикс

1 Ответ

1 голос
/ 16 апреля 2020

Вот пример Adventure Works:

with member Measures.YearName 
AS (ANCESTOR([Date].[Calendar].Currentmember, [Date].[Calendar].[Calendar Year])).Name

member Measures.FullYear 
AS SUM(ANCESTOR([Date].[Calendar].Currentmember, [Date].[Calendar].[Calendar Year]), [Measures].[Internet Sales Amount])

select {[Measures].[Internet Sales Amount], Measures.FullYear, Measures.YearName } on 0,
{[Date].[Calendar].[Calendar Quarter].&[2012]&[1],
[Date].[Calendar].[Calendar Quarter].&[2012]&[2],
[Date].[Calendar].[Calendar Quarter].&[2012]&[3],
[Date].[Calendar].[Calendar Quarter].&[2012]&[4],
[Date].[Calendar].[Calendar Quarter].&[2013]&[1],
[Date].[Calendar].[Calendar Quarter].&[2013]&[2],
[Date].[Calendar].[Calendar Quarter].&[2013]&[3],
[Date].[Calendar].[Calendar Quarter].&[2013]&[4]
} on 1
from [Adventure Works]

enter image description here

Так что в вашем случае определение члена должно быть:

   with member Measures.FullYear 
    AS SUM(ANCESTOR([Time].[Year-Month-Day].Currentmember, [Time].[Year-Month-Day].[Year]), [Measures].[Budget Amount])
...