10.07.2003, 09:57 | #1 |
Сенбернар
|
Вопрос про QueryBuildRange()
Имеется задача разделить права доступа User Groups к кодам отделов (Departments, Dimension[1]). То есть, чтобы группа GR1 видела отделы D1 и D3, а D2 и В4 - не видела. А группа GR2 - наоборот, соответственно...
Имеем: табличку rvs_DeptUserSetup с двумя полями Dimension и UserGroupId, в которую и прописываем права доступа. То есть, если в табличке есть запись {GR1, D1}, то группа GR1 имеет доступ к коду отдела D1. Затем, при помощи запроса: PHP код:
Вопрос: как бы таким же образом отфильтровать список отделов в DimensionsLookup? Ну, НИЧЕГО в голову нейдет...
__________________
Best Regards, Roman |
|
10.07.2003, 10:28 | #2 |
Участник
|
1. Можно использовать RLS, которая в 3.0 есть.
2. Можно сделать свою lookup формочку для расширенного типа кода отдела |
|
10.07.2003, 12:29 | #3 |
Сенбернар
|
Спасибо, но :
1. Нет в списке таблиц для RLS таблицы Dimensions . И задается это, похоже, где-то в этом районе: source:///Forms/SysRecordLevelSecurityWizard/Methods/buildTableTree PHP код:
"Отдел" - это не поле, это часть поля Dimension. Под это поле есть спецовая Lookup-форма - DimensionsLookup называется, внутри себя довольно навороченная, так что подменять ее бы не хотелось... Обрабатывает она ВСЕ Dimensions, а не только Department... Не понимаю, туплю, наверное А всего-то хотелось бы - в Init на DataSource вместо PHP код:
Ведь, по сути, QueryBuildRange() - это WHERE, которое затем исполняется где-то в ядре, правильно я понимаю?
__________________
Best Regards, Roman |
|
10.07.2003, 12:45 | #4 |
Участник
|
Действительно, в RLS Аналитик не видать :-(
Значить нужно или DimensionsLookup править или вместо неё свою формочку подсовывать... |
|
10.07.2003, 12:57 | #5 |
Сенбернар
|
Цитата:
Значить нужно или DimensionsLookup править
Цитата:
или вместо неё свою формочку подсовывать...
__________________
Best Regards, Roman |
|