AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: База знаний и проекты
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 23.04.2004, 13:18   #1  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Копирование прав доступа и RLS
Нарисовал небольшую формочку, которая поможет копировать права доступа и RLS. Прошу посмотреть и поругать. На форме работает хелп по F1, лучше начать с его прочтения, хоть он и косноязычен.

Идея родилась из необходимости: у нас в базе много компаний по регионам, пользователям надо однотипные права, но в разных компаниях, используется система доменов, т.к. доступ к чужим компаниям запрещен. Когда надоело делать все руками, то пришлось нарисовать формочку.
Вложения
Тип файла: zip raz_admingrouprights.zip (18.9 Кб, 345 просмотров)
Старый 08.08.2005, 14:01   #2  
Lucky13 is offline
Lucky13
Участник
1C
 
714 / 198 (8) ++++++
Регистрация: 21.10.2004
Меня интересует копирование прав RLS. Ну так вот, скачал проект, выбираю на вкладке обзор группу из которой нужно копировать, на вкладке RLS пустую группу (где нет никаких прав), нажимаю на кнопку, но права не копируются (в группе по прежнему нет никаких прав). В чем проблема, может я что-то делаю не так?

У меня Axapta 3.0 SP3, домены не используются
Старый 08.08.2005, 15:55   #3  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Цитата:
В чем проблема, может я что-то делаю не так?
Все так. Когда писал проектик не подумал про работу без доменов. На коленках поправил класс, но абсолютной гарантии не дам.
Вложения
Тип файла: zip raz_sysusergroup2domain.zip (3.1 Кб, 219 просмотров)
Старый 09.08.2005, 10:32   #4  
Lucky13 is offline
Lucky13
Участник
1C
 
714 / 198 (8) ++++++
Регистрация: 21.10.2004
К сожалению, не помогло. Права по прежнему не копируются
Старый 09.08.2005, 11:25   #5  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Сорри. Кажется исправил. Скачай еще раз raz_sysusergroup2domain.zip.
Старый 09.08.2005, 12:03   #6  
Lucky13 is offline
Lucky13
Участник
1C
 
714 / 198 (8) ++++++
Регистрация: 21.10.2004
Посмотрев класс я выяснил, что не выполяется цикл:
PHP код:
        while select t1 where t1.groupId   == raz_SysUserGroupToDomain.GroupId &&
        
t1.companyId == raz_SysUserGroupToDomain.DomainId 
Я убрал в нем второе условие и все заработало. (Не факт конечно, что это правильно и будет работать всегда)
Не очень понятно сравнение поля CompanyId из таблицы SysRecordLevelSecurity (там находится значение DataAreaId) и DomainId из AccessRightList (у меня там пусто). Хотя следущий запрос
PHP код:
            select t2 where t2.groupId   == to_raz_SysUserGroupToDomain.GroupId  &&
                            
t2.companyId == to_raz_SysUserGroupToDomain.DomainId &&
                            
t2.tabId     == t1.tabId
работает нормально.
Хотелось бы понять логику работы всего этого.
А вот новый класс по прежнему не работает (выдается ошибка "Невозможно вставить запись в "SysRecordLevelSecurity. Запись уже существует).
Старый 09.08.2005, 14:31   #7  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
;)
Много воды утекло с тех пор, давно было писано, я уж и не помню ничего. На том проекте использовались домены, так что вариант без них не проверялся.

Цитата:
Я убрал в нем второе условие и все заработало. (Не факт конечно, что это правильно и будет работать всегда)
В ситуации с доменами работать будет неправильно, если много одинаковых доменов и групп.

Цитата:
А вот новый класс по прежнему не работает (выдается ошибка "Невозможно вставить запись в "SysRecordLevelSecurity. Запись уже существует).
Исправленный класс у меня скопировал RLS, возможно у вас уже предыдущая попытка сделала левую копию. Попробуйте еще раз с нуля.

Я рад, что вы полезли в код, значит все в конце концов поймете и исправите
Старый 03.08.2006, 10:07   #8  
tolstjak is offline
tolstjak
Участник
 
440 / 16 (1) ++
Регистрация: 05.01.2003
Здраствуйте уважаемые.

Может быть у кого-нибудь есть "прибабах", который бы позволял объединять права нескольких групп пользователей в одну новую?
Поделитесь,
__________________
Александр
За это сообщение автора поблагодарили: Samoletov (0).
Старый 15.12.2006, 19:55   #9  
AlexeyBP is offline
AlexeyBP
Участник
Axapta Retail User
 
290 / 36 (2) +++
Регистрация: 18.10.2005
Адрес: Тюмень
Цитата:
Сообщение от raz Посмотреть сообщение
Все так. Когда писал проектик не подумал про работу без доменов. На коленках поправил класс, но абсолютной гарантии не дам.
А метки не прилагаются?
__________________
Алексей
Старый 16.12.2006, 00:14   #10  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Метки находятся в проекте, их надо импортировать.
Старый 17.07.2007, 13:41   #11  
johny77 is offline
johny77
Участник
 
31 / 27 (1) +++
Регистрация: 04.07.2006
Отличная идея. На нее наткнулся когда нужно копировать права на уровне записи (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)

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Расширение возможностей стандартных прав доступа Stainless DAX: Программирование 2 19.06.2008 10:36
RLS+Обычная настройка прав gefr DAX: Администрирование 3 05.10.2007 18:41
Экспорт/Импорт прав доступа Anais DAX: Администрирование 28 11.11.2006 21:44
при построении перекрёстных ссылок выдаётся сообщение об ошибках mmmax DAX: Программирование 10 21.01.2005 12:42
Проблемы настройки прав доступа пользователям axot DAX: Администрирование 25 16.05.2002 10:47
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 18:54.