Справочная информация. Я готовлю набор данных для отчета. Для упрощения предположим, что это две меры: одна категория и измерение времени. Основным параметром отчета является сегодняшняя дата. Я хотел бы видеть первый показатель вчерашнего дня (значение 000) и второй показатель позавчера (значение 001). Поскольку данные за предыдущие дни еще не доступны для значения 001.
Предположим, сегодня 2020-04-27 (передано из инструмента отчетности SSRS).
AS-IS
SELECT {[Measures].[Value 000], [Measures].[Value 001]} ON COLUMNS
, ( {[DIM Category].[Category].&[1], [DIM Category].[Category].&[2]},
[DIM Date].[Y-M-D ISO].[Date].[2020-04-27].LAG(2): [DIM Date].[Y-M-D ISO].[Date].[2020-04-27].LAG(1)
)
ON ROWS
FROM [My_Cube]
Вывод:
[Value 000] [Value 001]
Category 1 2020-04-25 88 16
Category 1 2020-04-26 89 (null)
Category 2 2020-04-25 90 14
Category 2 2020-04-26 92 (null)
Я попробовал два MDX-запроса для каждой даты и объединил наборы в инструменте отчетности, но мне интересно, есть ли удобный способ сделать это в одном запросе MDX. Следующим будет желаемый результат:
To-Be
Выход:
[Value 000] [Value 001]
Category 1 89 16 (Value from day before, for Value 0001)
Category 2 92 14
Дата не должна отображаться в вывод (но может быть)