powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / как посчитать только таких?
11 сообщений из 11, страница 1 из 1
как посчитать только таких?
    #33342658
силы4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
со всем не много работаю с MDX, поэтому извините за мой латинский и сбивчивую постановку задачи :)
есть members Покупатель
структура примерно такая (по кодам если)
36100100 - родитель
36100101 .
36100102 .
3610010N . дети

есть задача - сделать calculated members (CM), у которого parent dimensions этот самый Покупатель. Таких покупателей для выборки, примерно раз в неделю или месяц, будут определять. Для чего это? Типа чтобы не искать визуально, только тех, которые нужны, а, выбрав этот CM - увидеть данные только по ним. :)

сейчас задачу решаем так &[361000600]+&[361000601]+&[361000602]+... и т.д.
но это слишком некузяво :)
хотелось бы чтобы как в sql с оператором like - типа [Покупатель] like '3610006%'

как? :) спасибо за внимание
...
Рейтинг: 0 / 0
как посчитать только таких?
    #33342722
Parkhomets Andrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
силы4со всем не много работаю с MDX, поэтому извините за мой латинский и сбивчивую постановку задачи :)
есть members Покупатель
структура примерно такая (по кодам если)
36100100 - родитель
36100101 .
36100102 .
3610010N . дети

есть задача - сделать calculated members (CM), у которого parent dimensions этот самый Покупатель. Таких покупателей для выборки, примерно раз в неделю или месяц, будут определять. Для чего это? Типа чтобы не искать визуально, только тех, которые нужны, а, выбрав этот CM - увидеть данные только по ним. :)

сейчас задачу решаем так &[361000600]+&[361000601]+&[361000602]+... и т.д.
но это слишком некузяво :)
хотелось бы чтобы как в sql с оператором like - типа [Покупатель] like '3610006%'

как? :) спасибо за внимание

Делаешь view на этот объект , чтобы добавить дополнительный столбец, в котором будешь отражать признак наличия необходимого тебе свойства (реализуешь средствами SQL).
В кубах делаешь свойство которое привязываешь к этой колонке и всё.
...
Рейтинг: 0 / 0
как посчитать только таких?
    #33342764
силы4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Parkhomets Andrey силы4со всем не много работаю с MDX, поэтому .......как? :) спасибо за внимание

Делаешь view на этот объект , чтобы добавить дополнительный столбец, в котором будешь отражать признак наличия необходимого тебе свойства (реализуешь средствами SQL).
В кубах делаешь свойство которое привязываешь к этой колонке и всё.
это то понятно :)
а MDXом можно? :)
...
Рейтинг: 0 / 0
как посчитать только таких?
    #33342803
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
Aggregate(Filter(Покупатель.members, Left(Покупатель.CurrentMember.UniqueName)="&[3610010"))
или
Код: plaintext
Aggregate(&[ 361000600 ].Children)
...
Рейтинг: 0 / 0
как посчитать только таких?
    #33343004
Parkhomets Andrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry Biryukov
Код: plaintext
Aggregate(Filter(Покупатель.members, Left(Покупатель.CurrentMember.UniqueName)="&[3610010"))
или
Код: plaintext
Aggregate(&[ 361000600 ].Children)


ЗЫЫЫ,,, а что такое LEFT ??? У меня такого в справке нет ....
...
Рейтинг: 0 / 0
как посчитать только таких?
    #33343011
Alex Fox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ф-ция VBA - шная.
...
Рейтинг: 0 / 0
как посчитать только таких?
    #33343149
силы4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Parkhomets Andrey Dmitry Biryukov
Код: plaintext
Aggregate(Filter(Покупатель.members, Left(Покупатель.CurrentMember.UniqueName)="&[3610010"))
или
Код: plaintext
Aggregate(&[ 361000600 ].Children)


ЗЫЫЫ,,, а что такое LEFT ??? У меня такого в справке нет ....

класс! спасибо! :)) как ни странно работает!
может еще другие функции VBA работают? :)
получилось вот так реализовать (рою дальше :))
Aggregate(Filter([Покупатель].members,Left(Right([СгрупКли].CurrentMember.UniqueName,10),7)="3610038"))
но пока это на уровне тестирования :)
вероятно остановимся на варианте, предложенном Parkhomets Andrey
основной аргумент был его неиспользовать - увеличение размеров куба
хотя в данном случае размер не очень будет большим, а вот при использовании CM, похоже, будут проблемки со скоростью :)
...
Рейтинг: 0 / 0
как посчитать только таких?
    #33343201
силы4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а как убрать всех остальных Покупателей, не попадающих в выборку?
типа nonempty......
...
Рейтинг: 0 / 0
как посчитать только таких?
    #33343338
силы4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1. а как убрать всех остальных Покупателей, не попадающих в выборку?
типа nonempty......
2. почему то:
Код: plaintext
Aggregate(Filter([Покупатель].members,Left(Right([СгрупКли].CurrentMember.UniqueName, 10 ), 7 )=Left(Right(SetToStr({&[ 361000600 ],&[ 361003800 ]}), 11 ), 7 )))
выбирает только с 361003800 (т.е. последнего) :(
как ему сказать, чтобы выбирал и 361000600?
т.е. только те, которые будут указаны в SetToStr({&[361000600],&[361003800]})
...
Рейтинг: 0 / 0
как посчитать только таких?
    #33343559
Dmitry Biryukov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
когда в руках молоток, то всё вокруг кажется гвоздями....
Код: plaintext
Aggregate({&[ 361000600 ],&[ 361003800 ]})
...
Рейтинг: 0 / 0
как посчитать только таких?
    #33344160
силы4
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dmitry Biryukovкогда в руках молоток, то всё вокруг кажется гвоздями....
Код: plaintext
Aggregate({&[ 361000600 ],&[ 361003800 ]})

нууу, молотки не молотки, а вариант, предложенный вами не работает :)
но всё равно спасибо за волшебные направляющие пинки.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / как посчитать только таких?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]