Пентахо / Мондриан: как установить динамические роли для зарегистрированного пользователя?

Я хочу отфильтровать данные о продажах для измерения агента. Один агент может войти в Pentaho и видеть только свои данные и связанный субагент (иерархия агент-субагент определена в closure table). Я не могу выполнять роль для каждого агента, потому что это измерение SCD типа 2 (поэтому структура / отношения между агентом / субагентом могут меняться во времени).

Как я могу получить доступ к этой конкретной схеме фильтра / роли?

Любая помощь приветствуется, заранее спасибо.

РЕДАКТИРОВАТЬ: Здесь вы можете найти образец кода для моего решения (ant проект на Github)


person giovanni    schedule 18.01.2016    source источник


Ответы (1)


Вы можете использовать динамическую обработку схемы. В сети есть несколько ресурсов:

http://thejavatar.com/dynamic-schema-processor-modify-mondrian-schema-in-run-time/

Хотя кажется, что используется Entreprise Edition, это должно быть интересно

person bhericher    schedule 18.01.2016
comment
Спасибо, я только что закончил читать сообщение. Я попробую это с Pentaho 5.4.0 CE. - person giovanni; 18.01.2016
comment
Если кому-то может быть интересно, здесь можно найти мой рабочий пример (проект ant на Github), как -to предложено @beriaher ... еще раз спасибо за вашу поддержку - person giovanni; 20.01.2016
comment
@giovanni Спасибо, что поделились. Я не помню, как только вы настроили свой сервер и перезапустили его, если вы затем просто измените код Java, вы можете просто повторно развернуть его или вам придется перезапустить сервер снова? - person bhericher; 21.01.2016
comment
привет @beriaher, да, если изменить исходный код Java для DSP и перестроить jar lib, вы должны сначала остановить Pentaho, повторно развернуть банку в Pentaho lib (перезаписать или удалить старую) и перезапустить pentaho. - person giovanni; 21.01.2016