|
|
|
Как создать меру, которая отвечает на вопрос "итог за предыдущий месяц"?
|
|||
|---|---|---|---|
|
#18+
SQL Server 2017 Enterprise, SSAS+MDX Речь идёт именно относительно текущей даты. Сегодня 17 февраля 2020, следовательно, мера должна выдавать в значении сумму за январь. А не относительно выбранных месяцев (там всё ясно, решается функцией ParallelPeriod) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2020, 14:35 |
|
||
|
Как создать меру, которая отвечает на вопрос "итог за предыдущий месяц"?
|
|||
|---|---|---|---|
|
#18+
Charles Weyland, тупо просчитать в ETL ? сегодня сумму за январь - завтра за февраль или там дложно хитро агрегироваться как-то ? ps мне как-то надо было применить услвоие between dat1 and dat2 в mdx и я не нашел другого способа как просчитывать в ETL признак и фильтровать по нему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2020, 17:37 |
|
||
|
Как создать меру, которая отвечает на вопрос "итог за предыдущий месяц"?
|
|||
|---|---|---|---|
|
#18+
там куча данных и надо выводить их именно для прошлого месяца с большим количеством разных фильтров. Но я понял, как сделать. Просто завёл отдельную вьюху, где записано, какой именно месяц последний, какой квартал последний и использую её как фильтры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2020, 18:00 |
|
||
|
Как создать меру, которая отвечает на вопрос "итог за предыдущий месяц"?
|
|||
|---|---|---|---|
|
#18+
Charles Weyland, если динамически без материализации то в MDX есть VBA функция Now() , из неё (в ключ) получается текущая дата например через StrToMember() от даты по иерархии (или Exists если нету) получается текущий месяц (если есть в измерении календаря), из него в свою очередь через Lag() получается предыдущий с иерархией конечно проще через .parent.prevmember на дате у которой материализован флаг текущей (с ежедневным ProcessUpdate) напр. дополнительным параметром (или через .Value), ну или вообще через отсоединённое измерение хранящее технические параметры иногда для для удобства можно через scope это навесить куда нужно.. в общем возможных вариантов куча под разные сценарии ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2020, 21:44 |
|
||
|
Как создать меру, которая отвечает на вопрос "итог за предыдущий месяц"?
|
|||
|---|---|---|---|
|
#18+
Charles Weyland Но я понял, как сделать. Просто завёл отдельную вьюху, где записано, какой именно месяц последний, какой квартал последний и использую её как фильтры. Отдельную не надо, чтобы не плодить лишние сущности. У вас же измерение дат на чем-то основано, вот туда и запихнуть этот атрибут (возможно, на уровнн dsv). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2020, 22:45 |
|
||
|
Как создать меру, которая отвечает на вопрос "итог за предыдущий месяц"?
|
|||
|---|---|---|---|
|
#18+
vikkiv Charles Weyland, если динамически без материализации то в MDX есть VBA функция Now() , из неё (в ключ) получается текущая дата например через StrToMember() от даты по иерархии (или Exists если нету) получается текущий месяц (если есть в измерении календаря), из него в свою очередь через Lag() получается предыдущий с иерархией конечно проще через .parent.prevmember на дате у которой материализован флаг текущей (с ежедневным ProcessUpdate) напр. дополнительным параметром (или через .Value), ну или вообще через отсоединённое измерение хранящее технические параметры иногда для для удобства можно через scope это навесить куда нужно.. в общем возможных вариантов куча под разные сценарии ух ты!! круто ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2020, 01:42 |
|
||
|
|

start [/forum/topic.php?fid=49&fpage=9&tid=1857370]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
2ms |
| others: | 242ms |
| total: | 367ms |

| 0 / 0 |
