|
|
|
MDX (MS SSAS)
|
|||
|---|---|---|---|
|
#18+
Добрый день. Требуется помощь в запросе MDX для корректного расчета Меры "Активная клиентская база". Для справки - "Активная клиентская база - это все постоянные клиенты компании, закупившие товар более одного раза и продолжающие закупать его с определенной периодичностью." Измерения DWH: DimDepartment (ID, Name) (филиал) DimTradeAgent (ID, Name) (торговый представитель) DimTradePoint (ID, Name) (торговая точка) Измерения не зависят друг от друга. Мера DWH: FactACB (ID, DepartmentID, TradeAgentID, TradePointID, ACBValue)(Активная клиентская база) Значения в мере всегда имеют булево значение 1 или 0. Суть проблемы: Построен OLAP (SSAS) с перечисленными выше измерениями и данной мерой. На данный момент OLAP агрегирует все значения по всем граням. OLAP используется в разрезе Department/TradeAgent/TradePoint примениельно к данной мере. На данный момент если "Торговая точка" находится (за определенный срез времени, например "на дату") у двух "Торговых представителей" то у обоих значение АКБ агрегируется корректно, но оно не должно агрегироваться на уровне выше, т.е. Филиале. В расчете для "Филиала" требуется расчет "уникальных значений по всем сущностям ниже", т.е. в примере неправильное значение по "Филиалу 1" = 8, а должно быть = 7, т.к. "Торговая точка 1" встречается у двух "Торговых представителей", но должна учитываться уникально для "Департаментов" и для "Общего итога". Надеюсь достаточно подробно описал. Приложил пример (структуру сводной таблицы в Excel) с текущим состоянием и требуемым. Прошу помощи в корректном составлении MDX запроса (хотя возможно есть какое либо свойство в SSAS/VS по которому можно отсекать такие задвоения на разных уровнях выстраивания измерений). http://radikal.ru][img] http://s018.radikal.ru/i507/1612/32/f0061265db6a.jpg [/img] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 04:32 |
|
||
|
MDX (MS SSAS)
|
|||
|---|---|---|---|
|
#18+
v1em, Используйте DISTINCTCOUNT для подсчета точек в разрезе департаментов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2016, 13:41 |
|
||
|
MDX (MS SSAS)
|
|||
|---|---|---|---|
|
#18+
vboretsv1em, Используйте DISTINCTCOUNT для подсчета точек в разрезе департаментов Добрый день. Попробовал создать меру с AggregateFunction и свойством DistinctCount. Итоги стали также все 1 (единицей), что то можно дальше сделать чтобы итоги между измерениями считались с учетом уникальных и корректно складывались? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2016, 08:52 |
|
||
|
MDX (MS SSAS)
|
|||
|---|---|---|---|
|
#18+
А почему филиал и ТТ сделаны независимыми измерениями? Думаю, тут было бы лучше одно измерение с иерархией "Филиал - ТТ". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2016, 09:34 |
|
||
|
MDX (MS SSAS)
|
|||
|---|---|---|---|
|
#18+
LeitenА почему филиал и ТТ сделаны независимыми измерениями? Думаю, тут было бы лучше одно измерение с иерархией "Филиал - ТТ". Точек достаточно много (десятки тысяч), если было бы меньше то подумал бы с помощью MDS предопределить связь, но из источника данных нельзя однозначно получить привязку точки к определенному филиалу и они постоянно меняются. Также некоторые филиалы могут отгрузить в одну и ту же точку (филиалы не привязаны жестко к территории в обычном понимании, например в одном может быть одно количество наименований продуктов, а в другом будет чуть расширеннее (например склад позволяет хранить скоропортящиеся продукты) и по факту получается что два филиала могут отгрузить в одну точку, но разные продукты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2016, 10:24 |
|
||
|
MDX (MS SSAS)
|
|||
|---|---|---|---|
|
#18+
v1em, Расскажите поподробнее как вы реализовали совет по поводу DistinctCount. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.12.2016, 12:25 |
|
||
|
MDX (MS SSAS)
|
|||
|---|---|---|---|
|
#18+
Leiten, Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2016, 09:16 |
|
||
|
MDX (MS SSAS)
|
|||
|---|---|---|---|
|
#18+
v1em, В качестве источника для DC меры попробуйте указать идентификатор филиала. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2016, 09:24 |
|
||
|
MDX (MS SSAS)
|
|||
|---|---|---|---|
|
#18+
Ошибся: не филиала, а ТТ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.12.2016, 09:25 |
|
||
|
MDX (MS SSAS)
|
|||
|---|---|---|---|
|
#18+
LeitenОшибся: не филиала, а ТТ. Простите а зачем? :) В источнике как раз источник данных, т.е. колонка со значениями АКБ, ID ТТ это ключ ТТ (его некорректно складывать, да и для чего). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2016, 04:31 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=39359796&tid=1858449]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
75ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 233ms |
| total: | 410ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...