Есть ли способ просмотреть значение первого и / или последнего листа на уровне иерархии?
Я пытаюсь создать измерение расчета в SSAS, которое будет включать, например, расчет за год до текущей даты, который я бы предпочел не отображать для дат в будущем.
Я разработал, как сделать это на самом низком уровне (дата), но получаю ошибки на уровнях агрегации при попытке реализовать эту технику.
Чтобы помочь мне выполнить то, что я хочу, я включил в свое измерение член [Date In Past], который содержит 0, если дата в прошлом, и a, если нет.
Например, этот запрос, который возвращает вычисления по дате:
with member [Measures].[Year To Date] as
Sum(
{ IIF(strtovalue(
[Time Order Date].[Date In Past].Currentmember.membervalue
) = 0, null, [Measures].[Product Rev (with ship, no disc)]
) } *
PeriodsToDate(
[Time Order Date].[Fiscal Date].[Fiscal Year Name],
[Time Order Date].[Fiscal Date].CurrentMember
)
)
select
{[Measures].[Product Rev (with ship, no disc)],
[Measures].[Year To Date]} on 0,
[Time Order Date].[Date].Children on 1
from [Sales Analysis]
возвращает значения NULL в мере [Year to Date] для всех дат в будущем.
Этот запрос, который возвращает расчеты по неделям:
with member [Measures].[Year To Date] as
Sum(
{ IIF(strtovalue(
[Time Order Date].[Date In Past].Currentmember.membervalue
) = 0, null, [Measures].[Product Rev (with ship, no disc)]
) } *
PeriodsToDate(
[Time Order Date].[Fiscal Date].[Fiscal Year Name],
[Time Order Date].[Fiscal Date].CurrentMember
)
)
select
{[Measures].[Product Rev (with ship, no disc)],
[Measures].[Year To Date]} on 0,
[Time Order Date].[Fiscal Week Name].Children on 1
from [Sales Analysis]
возвращает ошибки для всех значений [Year To Date], как я предполагаю, потому что в неделе более одного члена.
Хочу сравнить с последним днем недели. Как я могу это сделать?
Спасибо, --sw