Как найти первое значение в диапазоне в MDX - PullRequest
0 голосов
/ 26 июня 2018

Я пытаюсь создать рассчитанную меру SSAS для куба инвентаря. Базовые данные содержат дату_ инвентаризации, код продукта и некоторые значения запасов для продукта на эту дату. Я пытаюсь создать показатель, который будет возвращать первое значение запасов за месяц, для продукта (и в целом). Я видел, как люди пытаются использовать функцию головы безрезультатно. Я также только что видел ссылку на функцию открытие периода, которая, кажется, именно то, что я хочу, но она также не возвращает правильное значение. Оба они, FWIW, возвращают последнее значение в месяце, а не первое.

Вот запрос, который я задаю:

select
    [Measures].[Qty On Hand EOD] on 0,
    {openingperiod([Inventory Date].[Calendar].[Month]):
[Inventory Date].[Calendar].[Month].&[2018-06-25T00:00:00]
} on 1  
from [Daily Inventory]

Этот запрос возвращает для мая 2018 года значение [Qty On Hand EOD] для 31 мая, а не 1 мая, что я и хочу. Что я делаю не так?

FWIW, в определении куба свойство AggregateFunction для [Qty On Hand EOD] установлено в LastNonEmpty (в отличие от Sum или Avg). Может ли это играть роль?

...