|
|
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
Всем привет! Есть следующий запрос: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. Он выдает следующий результат 2016/ОктябрьВсеКартон49995519422016/ОктябрьСеверо-Западный федеральный округКартон4999551942 Хотя в моем представлении все 4 цифры должны быть одинаковые, ведь на уровне ВСЕ стоит корректная цифра. Вопрос: почему [Торговые точки].[Округ].[Все] в member собирает цифру без учета фильтра, указанного во FROM? Там же есть и другие фильтры, по дате и по сети, подсчет идет с учетом этих фильтров. В логике TSQL сначала строится ограниченное множество, потом из него выбираются данные, тут же почему то в MEMBER фильтр непонятным образом частично перестает работать. Как построить запрос, чтобы цифры были одинаковые? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 11:37 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
AlexTank, Логика mdx работает по принципу локальных приоритетов, для member все условия что заданы в нем являются более приоритетными чем внешние условия, если бы в выражении member измерения [Торговые точки].[Округ] бы не было, сработало бы внешнее ограничение, иначе внешнее не учитывается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 12:58 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
AlexTank, ну и чтобы цифры были одинаковые уберите ,[Торговые точки].[Округ].[Все] Ваш КЕП:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 13:00 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
WarAntAlexTank, ну и чтобы цифры были одинаковые уберите ,[Торговые точки].[Округ].[Все] Ваш КЕП:) Мне в строке по конкретному округу нужна сумма по всем округам с учетом фильтров. Как ее посчитать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 13:57 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
AlexTankWarAntAlexTank, ну и чтобы цифры были одинаковые уберите ,[Торговые точки].[Округ].[Все] Ваш КЕП:) Мне в строке по конкретному округу нужна сумма по всем округам с учетом фильтров. Как ее посчитать? Используйте [Торговые точки].[Округ].[All].Children или [Торговые точки].[Округ].[Все].Children ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.12.2016, 19:01 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
a_voroninAlexTankпропущено... Мне в строке по конкретному округу нужна сумма по всем округам с учетом фильтров. Как ее посчитать? Используйте [Торговые точки].[Округ].[All].Children или [Торговые точки].[Округ].[Все].Children Я пробовал и [Все].Children и Parent.Children - результат тот же самый, сумма без учета фильтра ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2016, 08:48 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
AlexTank, Да уж много раз объясняли. Подзапросы (subcube) не устанавливают контекст для вычисления они ограничивают пространство после того как CM были оценены (evaluated). Таким образом само вычисление происходит вне рамок ограниченных подзапросом. MS всех запутал с этими подкубами и сам тоже запутался.. Excel работает криво. Специально для него MS придумал параметр в строке соединения Subqueries который в зависимости от параметра меняет логику взаимодействия подзапросов и where. Management studio лепит фильтры в обе части запроса чтоб хоть как-то нивелировать проблемы. И все это как MS везде пишет: "в зависимости...", что удручает более всего. Отсюда практически невозможно предсказать поведение вычисляемых членов в разных программах и ситуациях. Кроме этого на результат влияют роли и параметр Enable Visual Totals. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2016, 11:57 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
Спасибо за разъяснения, а где почитать что MS пишет? Хотя бы в какую сторону копнуть? Пошел почитал по поводу строки соединения на MSDN авторIf you're using Management Studio to test the queries, click the Options button on Connection Manager to access the additional connection string properties pane, where you can enter subqueries=1 or 2 to allow calculated members in the subspace. Попробовал поменять в студии, эффекта 0 :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2016, 18:03 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
AlexTankWarAntAlexTank, ну и чтобы цифры были одинаковые уберите ,[Торговые точки].[Округ].[Все] Ваш КЕП:) Мне в строке по конкретному округу нужна сумма по всем округам с учетом фильтров. Как ее посчитать? Вы уже наконец выполните требования форму по оформлению топиков и нарисуйте итоговый вариант данных, как вы их хотите видеть, а то каша какая то пока получается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2016, 16:18 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
WarAntAlexTankпропущено... Мне в строке по конкретному округу нужна сумма по всем округам с учетом фильтров. Как ее посчитать? Вы уже наконец выполните требования форму по оформлению топиков и нарисуйте итоговый вариант данных, как вы их хотите видеть, а то каша какая то пока получается. С Учетом фильтров: Месяц ФОкруг Товар Оборот Оборот по всем ФО2016/ОктябрьВсеКартон220022002016/ОктябрьСеверо-Западный федеральный округКартон120022002016/ОктябрьЮжный федеральный округКартон10002200 Весь набор при этом такой: Месяц ФОкруг Товар Оборот Оборот по всем ФО2016/ОктябрьВсеКартон350035002016/ОктябрьСеверо-Западный федеральный округКартон120035002016/ОктябрьЮжный федеральный округКартон100035002016/ОктябрьДальневосточный федеральный округКартон13003500 Сейчас же это выглядит так с фильтром Месяц ФОкруг Товар Оборот Оборот по всем ФО2016/ОктябрьВсеКартон220035002016/ОктябрьСеверо-Западный федеральный округКартон12003500 Без фильтра соответственно совпадает. Мне нужно, чтобы в строке каждого ФО в столбце "Оборот по всем ФО" стояла цифра по всем ФО, которая стоит в строке Все столбца Оборот. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2016, 10:46 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
Куда то строку отьело в третей таблице, ее надо читать так: Месяц ФОкруг Товар Оборот Оборот по всем ФО2016/ОктябрьВсеКартон220035002016/ОктябрьСеверо-Западный федеральный округКартон120035002016/ОктябрьЮжный федеральный округКартон10003500 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2016, 10:48 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
AlexTank, ну как то так Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2016, 11:42 |
|
||
|
Объясните логику MDX
|
|||
|---|---|---|---|
|
#18+
WarAnt, В лоб напролом. Я думал, может есть какие то другие, более изящные решения. Этот вариант с фильтром в member я и реализовал. :) У меня в фильтре 8 полей, у меня не один такой показатель, их штук 6, в итоге код пухнет как на дрожжах. И у меня большой диссонанс с from из tsq, там кроме того, что ограничено запросом никак не может появиться на других уровнях запроса. Всем спасибо за участие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2016, 12:58 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=39366030&tid=1858437]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
74ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
| others: | 15ms |
| total: | 192ms |

| 0 / 0 |

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