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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.02.2007, 16:19   #1  
f18 is offline
f18
Участник
Аватар для f18
Дети Юза
 
188 / 101 (4) +++++
Регистрация: 09.08.2005
Сброс данных при логине
Привет.
1. текущий пользователь а1 имеет доступ к функциональности и
hasSecuritykeyAccess(securityKeyNum(sk1)) возвращает true;
2. пользователь а2 не имеет доступа к этой функциональности и если войти под ним в систему hasSecuritykeyAccess(securityKeyNum(sk1)) возвращает false;
3. если зайти в систему как а1 и выполнить xSession.newUser('a2', ''), то теоритически hasSecuritykeyAccess(securityKeyNum(sk1)) должен вернуть false - практически возвращает true.
Вопрос - как сбросить откешированные данные?
(пробовал Dictionary::loginSettingsFlush();
Dictionary::dataFlush();
Dictionary::aodFlush();
if (logIn)
{
globalCache = SysGlobalCache::construct();
classFactory.parmGlobalCache(globalCache);
}
) не помогло ... :-(
Старый 27.02.2007, 16:29   #3  
Ruff is offline
Ruff
Дмитрий Ерин
Аватар для Ruff
1C
 
475 / 396 (14) ++++++
Регистрация: 18.09.2003
Адрес: Тула
Сначала ламерский вопрос (а то лень искать ) - а что делает xSession.newUser('a2', '') ?
По существу вопроса: по идее права должны примениться при смене компании (то есть как версия - что-то типа:
X++:
changecompany(curext())
Старый 27.02.2007, 16:34   #4  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Цитата:
Сообщение от Ruff Посмотреть сообщение
Сначала ламерский вопрос (а то лень искать ) - а что делает xSession.newUser('a2', '') ?
KERNDOC://Classes/xSession/newUser
Description
This method facilitates logging on a different user for the current session without terminating the Axapta session.

It returns true when the new login was successful, false otherwise.
Цитата:
Сообщение от Ruff Посмотреть сообщение
По существу вопроса: по идее права должны примениться при смене компании (то есть как версия - что-то типа:
X++:
changecompany(curext())
changeCompany меняет компанию только на тот блок кода, который обрамляет.

Думаю пробовать надо в направлении ссылки raz:

X++:
        xAppl.setDefaultCompany(userInfo.company);
        SysSecurity::reload(false);
Старый 27.02.2007, 16:40   #5  
Ruff is offline
Ruff
Дмитрий Ерин
Аватар для Ruff
1C
 
475 / 396 (14) ++++++
Регистрация: 18.09.2003
Адрес: Тула
Цитата:
Сообщение от kashperuk Посмотреть сообщение
changeCompany меняет компанию только на тот блок кода, который обрамляет.
А не достаточно ли этого в нашем случае для обновления прав доступа?
Хотя не стану спорить, что приведенный выше код, возможно, более корректен в общем случае.

ЗЫ: сам ничего не проверял, все вышесказанное - предположения
Старый 27.02.2007, 16:53   #6  
f18 is offline
f18
Участник
Аватар для f18
Дети Юза
 
188 / 101 (4) +++++
Регистрация: 09.08.2005
2 raz Спасибо за ссылку - попробовал - пока не помогает ... :-(
(продолжаю пробовать дальше ...)
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Невозможно выполнить команду языка определения данных в () iHomer13 DAX: Программирование 8 18.07.2008 10:56
Стандартный импорт данных. Обновление sparur DAX: Функционал 0 24.03.2008 19:07
Распределенная база данных на основе View Владимир Максимов DAX: Программирование 27 04.09.2007 13:21
Введение в Аксапту Роман Кошелев DAX: Прочие вопросы 0 18.12.2001 14:00

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

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

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