23.04.2004, 13:18 | #1 |
NavAx
|
Копирование прав доступа и RLS
Нарисовал небольшую формочку, которая поможет копировать права доступа и RLS. Прошу посмотреть и поругать. На форме работает хелп по F1, лучше начать с его прочтения, хоть он и косноязычен.
Идея родилась из необходимости: у нас в базе много компаний по регионам, пользователям надо однотипные права, но в разных компаниях, используется система доменов, т.к. доступ к чужим компаниям запрещен. Когда надоело делать все руками, то пришлось нарисовать формочку. |
|
08.08.2005, 14:01 | #2 |
Участник
|
Меня интересует копирование прав RLS. Ну так вот, скачал проект, выбираю на вкладке обзор группу из которой нужно копировать, на вкладке RLS пустую группу (где нет никаких прав), нажимаю на кнопку, но права не копируются (в группе по прежнему нет никаких прав). В чем проблема, может я что-то делаю не так?
У меня Axapta 3.0 SP3, домены не используются |
|
08.08.2005, 15:55 | #3 |
NavAx
|
Цитата:
В чем проблема, может я что-то делаю не так?
|
|
09.08.2005, 10:32 | #4 |
Участник
|
К сожалению, не помогло. Права по прежнему не копируются
|
|
09.08.2005, 11:25 | #5 |
NavAx
|
Сорри. Кажется исправил. Скачай еще раз raz_sysusergroup2domain.zip.
|
|
09.08.2005, 12:03 | #6 |
Участник
|
Посмотрев класс я выяснил, что не выполяется цикл:
PHP код:
Не очень понятно сравнение поля CompanyId из таблицы SysRecordLevelSecurity (там находится значение DataAreaId) и DomainId из AccessRightList (у меня там пусто). Хотя следущий запрос PHP код:
Хотелось бы понять логику работы всего этого. А вот новый класс по прежнему не работает (выдается ошибка "Невозможно вставить запись в "SysRecordLevelSecurity. Запись уже существует). |
|
09.08.2005, 14:31 | #7 |
NavAx
|
Много воды утекло с тех пор, давно было писано, я уж и не помню ничего. На том проекте использовались домены, так что вариант без них не проверялся.
Цитата:
Я убрал в нем второе условие и все заработало. (Не факт конечно, что это правильно и будет работать всегда)
Цитата:
А вот новый класс по прежнему не работает (выдается ошибка "Невозможно вставить запись в "SysRecordLevelSecurity. Запись уже существует).
Я рад, что вы полезли в код, значит все в конце концов поймете и исправите |
|
03.08.2006, 10:07 | #8 |
Участник
|
Здраствуйте уважаемые.
Может быть у кого-нибудь есть "прибабах", который бы позволял объединять права нескольких групп пользователей в одну новую? Поделитесь,
__________________
Александр |
|
|
За это сообщение автора поблагодарили: Samoletov (0). |
15.12.2006, 19:55 | #9 |
Участник
|
А метки не прилагаются?
__________________
Алексей |
|
16.12.2006, 00:14 | #10 |
NavAx
|
Метки находятся в проекте, их надо импортировать.
|
|
17.07.2007, 13:41 | #11 |
Участник
|
Отличная идея. На нее наткнулся когда нужно копировать права на уровне записи (RLS).
Вопрос: для чего нужно перечисление Уровень? Предложение: может Range для запроса задан не не первым. поэтому предлагаю X++: ...
for (iRange = 0; iRange < DataSource.rangeCount(); ++ iRange)
{
range = DataSource.range(iRange + 1);
range.value(GetValue(range.value()));
}
t2.restriction = queryRun.pack();
... |
|
Теги |
download, rls, администрирование, законченный пример, права доступа, права доступа на уровне записей (rls) |
|
|