|
|
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
П.С. сама идея от Chris Webb здесь (он это решал при помощи Allan Mitchell) может получится не только горизонтатльно - но и вертикально сложить через UNION (т.к. DMX как наследник урезаного SQL его тоже поддерживает), но это уже на любителя поизвращаться если кому охота эксперементировать с туманными перспективами. кстати - DMV вроде как основан на DMX ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.04.2017, 07:36 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
vikkivда нет, openquery/openrowset (т.е. sql) сразу в тот-же день после вопроса через пару часов предложил, так что по ходу явно не прокатит из-за особенностей их локально-внутренних интерфейсов. пока это вопрос затих (точнее образовались новые более срочные) СПС всем - узнал много нового - @vikkiv прокомментируй плз openquery/openrowset (т.е. sql) может я пропустил доступ к бд есть полный т.е это идея в том чтобы просто сделать запрос к исходной БД ( вместо mdx ) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2017, 14:05 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
до SQL напрямую тебе насколько понимаю из MDX не получится достучаться, из-за этого ограничения:Гулин Федорвсе д.б в mdx - ибо его можно передать (скормить) гуи-клиенту1) но в окне MDX та-же выполняется и DMX который понимает openquery/openrowset (для первого нужен соответствующий DS, для второго - проверить настройки сервере/разрешить провайдера) это на уровне SSAS 2) такая-же функциональность как указал StarikNavy есть и на уровне SQL (хотя тоже нужна дополнительная конфигурация от безопасности и ad-hoc distributed query, {linked server, openquery или openrowset}) - тогда можно манипулировать полями (колоннами) в SQL, но тебе это не подходит из-за ограничения можно сделать напрямую на DMX (в MDX окне) или объединить первое и второе (из DMX вызвать SQL который выполнит MDX запрос и отформатирует результат) - но это наверное уже изврат какой-то (два раза вызывать openquery/openrowset, один раз как DMX и второй как SQL) поэтому в свете ограничения - первичная задача проверить экспериментальным путём : работает-ли твой GUI с DMX. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2017, 17:56 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
Гулин Федорт.е это идея в том чтобы просто сделать запрос к исходной БД ( вместо mdx ) ?не совсем, используется функциональность SQL (для манипуляции с полями) - а сами данные берутся из SSAS но до SQL не обязательно стучаться, проверь как DMX напрямую сработает, тогда DMX вытащит нужные поля из MDX ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2017, 18:01 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
Гулин Федорв SQL это было просто col_calc as col1 + ';' + col2 + ';' + col3 В mdx это похоже невозможно (или как-то оч. хитро ) Если эти три фиговины можно отобразить с помощью MDX отдельными кололками, то можно и "склеить" и отобразить одной. Как - я показал выше и ссылки накидал. Если на словах, то, еще раз: - если MEASURE - просто берем его значение - если это элементы измерений, то обращаемся к CURRENT_MEMBER соотв. иерархий, и потом или прямые свойства или функция PROPERTIES(...) Важно! (для MSSQL тоже!) Полученные значения должны быть приведены (конвертированы) к совместимым типам данных, например с помощью функции CSTR(...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2017, 16:30 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
... а причем тут ad-hock запросы к исходным данным совсем не понял - зачем из пушки по воробьям? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2017, 16:34 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
если не ошибаюсь - обычно чтобы разрешить openquery/openrowset на стороне SQL требутеся конфигурация типа Код: sql 1. 2. да, путь конечно муторный - но при такой задаче нужны альтернативы, хотя ещё раз - первый пример DMX из MDX даёт нужный результат без openquery/openrowset (на стороне SSAS), т.е. доп конфигурация не нужна. может ты путаешь с Код: sql 1. ? (я SQL сервер перед каждым SSAS процессингом в этот режим перевожу кроме XMLA конфигурации) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2017, 18:03 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
Я туплю навреное, но, пересмотрев еще раз, так и не нашел намека на то, что автору топика нужен доступ к исходным (тем более не агрегированным и уж тем более из "сырой" базы MSSQL) данным. На сколько я понял, ему просто нужно итерируя по одной запрошенной в MDX оси (ON ROWS к примеру), выводить "склеинными" свойства текущих элементов измерений и меры. КАК? - много раз показал/объяснил выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2017, 18:13 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
от куда делается однозначный вывод о доступе к исходным данным как цели последовательности операций? создаётся только подключение чтобы использовать более удобный инструментарий другого языка/диалекта (хотя при желании и можно получать из исходных данных - т.к. соединение в своём спектре имеет и такую функциональность) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2017, 18:19 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
вывод из постингов выше. Вопрос еще раз - а зачем нужно так замороченно, если можно просто взять два значения и склеить (при необходимости, конвертнув в строку)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2017, 18:28 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
Yuri Abele..Вопрос еще раз - а зачем нужно так замороченно, если можно просто взять два значения и склеить (при необходимости, конвертнув в строку)?Yuri Abele, это одна из наиболее вероятных интерпретаций из вводной, т.е. особенностей GUI берущего: (а) первую колонну из dataset (б) на первую позицию (в) при том что MDX возвращает в (a) - первую позицию вертикальной оси (set элементов атрибута) (г) интерфейс работает с MDX и не работает с SQL задача: вывести в условиях (а) и (б) несуществующий показатель в пределах ограничений (в) и (г) что означает сужение альтернатив решений до: 0) (из-) менять интерфейс / или разбираться с его документацией-настройками (может и работает на самом-то деле) 1) {расчётную} меру (склеенную из стрингов) туда не получится поставить, значит можно только атрибут (если делать средствами MDX) - которого в нынешней структуре куба/измерений нет (т.е. надо делать/менять структуру) или 2) не меняя структуру - использовать дополнительные возможности смежного/другого диалекта (взаимозаменяемость DMX и MDX) имеющую необходимую для решения проблемы функциональность. как-бы никто и не спорит что можно склеить нужную меру, затруднение в том что такой вариант не вписывается в ограничения - следовательно не решает вопрос. это о методологии основной проблемы,Гулин Федорпричем если 2 включены и там и там Exception of type 'System.OutOfMemoryException' was thrown. декарт похожевторая - часто обсуждаемая на форуме (out of memory или сходная/кореллирующая: ограничение в 4.3 миллиарда туплов в crossjoin) решается через nonempty/exists/auto-exists (если это не проблема на клиенте - Excel часто выдаёт данные лучше {быстрее и без переполнения буфера} чем SSMS) - для нужной группы мер (+использовав autoexists для атрибутов из одного и того-же измерения, особенно эффективно если связи между атрибутами настроены правильно) причём NON_EMPTY_BEHAVIOR и NonEmptyCrossJoin - уже практически списанная функциональность (последние SSAS ядра это уже оптимизируют внутри автоматом) для решения вторичной проблемы можно ещё рассмотреть последовательность в которой выполняются запросы MDX: from(subcube-subquery)/where(slicers)/with(sets-members)/axis/having&non empty ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2017, 05:34 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
vikkivкак-бы никто и не спорит что можно склеить нужную меру, затруднение в том что такой вариант не вписывается в ограничения - следовательно не решает вопрос. Так вот, как раз эти самые ограничения введены вами, а не автором. Автору же просто два значения (меры или свойства элементов измерений) склеить надо было. Гулин Федорпричем если 2 включены и там и там Exception of type 'System.OutOfMemoryException' was thrown. Просто надо на ось не все элементы измерения пихать, а только те, для которых существует исходная мера. Абстрактный пример: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2017, 10:25 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
ну тогда я наверное неверно понял вот эти вводные: 20388517 Гулин Федор..ps там проблема в том что на дашбоарде в том гуи-клиенте можно показать толкьо 1 столбец-категорию (мер можно сколько угодно.) (разработчики говорят что будет больше - но когда не известно).. 20388611 Гулин Федор..СПС за быстрый фидбек еще раз - там именно Calculated меры А мне надо склеить атрибуты разных димешененов в 1 поле чтобы обойти проблему в GUI клиенте (мер там можно показать сколкьо угодно - а вот столбец Categories один).. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2017, 10:58 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
... эээб т.е. ему надо на осях отображате "склеенные" элементы? Если так, то проще всего на уровне DSV named calculations создавать, только ВАЖНО!!! - жестко задавать тип и размер значений. Т.е. не Код: sql 1. а, к примеру: Код: sql 1. и проверять при изменениях, соответствует ли тип данных у соотв. аттрибута ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2017, 11:30 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
Yuri Abele... эээб т.е. ему надо на осях отображате "склеенные" элементы? Если так, то проще всего на уровне DSV named calculations создавать... Хотя и тут - если просто один из столбцов ResultSet-а выбирается в роли категории (как в SSRS например), то возвращаемся к CALCULATED MEASURE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2017, 11:35 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
Yuri AbeleYuri Abele... эээб т.е. ему надо на осях отображате "склеенные" элементы? Если так, то проще всего на уровне DSV named calculations создавать... Хотя и тут - если просто один из столбцов ResultSet-а выбирается в роли категории (как в SSRS например), то возвращаемся к CALCULATED MEASURE значит я плохо объяснял на уровне одного димешнена - DSV помогате вопрос был имнно в разных димешеннах ps пока уже не актуально - другие более актуальные пробелмы есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2017, 13:58 |
|
||
|
в mdx склеить значения 3-4 полей-атрибутов
|
|||
|---|---|---|---|
|
#18+
Гулин Федорвопрос был имнно в разных димешеннах вопрос не в этом, а в том, должно ли это быть обязательно измерение на одной оси или достаточно и как-то вычесленного Calculated Member (на MEASURES или "прикрепленный" к другому измерению? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.05.2017, 17:11 |
|
||
|
|

start [/forum/topic.php?fid=49&gotonew=1&tid=1858264]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
10ms |
get first new msg: |
7ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
| others: | 228ms |
| total: | 388ms |

| 0 / 0 |

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