Необходимо разделить данные на основе количества логических флагов (одинаковое измерение, без иерархии) - PullRequest
0 голосов
/ 25 января 2019

Мне нужно нарезать данные на основе нескольких флагов в записи транзакции. Флаги находятся в одном измерении, но не в одной иерархии.

Ниже приведен пример транснациональных данных и соответствующая таблица фактов, которые мы создали. Мне нужно написать запрос MDX, чтобы сгенерировать отчет как whoen в ожидаемом отчете ниже

Здесь PrintMail, уведомления приложений, SMS и электронная почта - это различные типы каналов связи, через которые доставлено сообщение. Некоторые сообщения доставляются по нескольким каналам.

Таблица транзакций

Date            MessageCount    PrintMail       AppNotification SMS     Email   
1/1/2019        1               1               1                               
1/1/2019        1               1               1                               
1/1/2019        1                                               1       1       
2/1/2019        1               1               1                               
2/1/2019        1                               1                               

Таблица фактов

Date            MessageCount    PrintMail       AppNotification SMS     Email   
1/1/2019        3               2               2               1       1       
2/1/2019        2               1               2               0       0       

Ожидаемый отчет

                       All     1/1/2019 2/1/2019       
Message Count           5       3        2              
PrintMail               3       2        1              
AppNotification         2       1        1              
SMS                     3       2        1              
Email                   1       1        0              

У меня вопрос: как я могу показать, что различные каналы здесь являются строками? Я не уверен, потребует ли это нового измерения, и если да, то как это будет выглядеть.

1 Ответ

0 голосов
/ 25 января 2019

Судя по вашей таблице фактов, разные каналы - это ваши факты. Если это так, то вам не нужна новая мера. Все, что вам нужно сделать, - это в вашем запросе MDX поместить меры по оси строк, а дату - по оси столбцов. Запрос должен выглядеть как

Select {[DimDate].[Date].members} on columns,
{[Measures].[MessageCount],[Measures].[PrintMail],
[Measures].[AppNotification],[Measures].[SMS],[Measures].[Email]} 
on rows
from [YourCube]
...