01.12.2010, 16:53 | #1 |
Модератор
|
Получить значение SessionId() под пользователем
Функция \System Documentation\Functions\sessionid возвращает значение "Код сеанса" только для Админов.
Как узнать свои SessionId под правами простого пользователя? (Для пользователя возвращает 0)
__________________
This posting is provided "AS IS" with no warranties, and confers no rights. Последний раз редактировалось Poleax; 01.12.2010 в 16:55. |
|
01.12.2010, 17:03 | #2 |
Участник
|
Может я неправильно понял вопрос, но вот эта конструкция подходит?
X++: static void TestSession(Args _args) { xSession session = new Session(); ; info(value2string(session.sessionId())); }
__________________
С уважением, Александр. Последний раз редактировалось samolalex; 01.12.2010 в 17:13. |
|
|
За это сообщение автора поблагодарили: Poleax (1). |
01.12.2010, 17:08 | #3 |
Участник
|
у меня работает info(strfmt('%1', sessionId())); - номер сессии текущего пользователя
т.е. для пользователя нормально номер сессии генерит ... - даже много на этом завязано .... |
|
01.12.2010, 17:17 | #4 |
Модератор
|
Цитата:
X++: static void Job10(Args _args) { int session; SysClientSessions SysClientSessions; xSession _session; ; // Способ 1 session = sessionId(); info( "This session ID is number " + int2Str(session)); // Способ 2 select firstonly SysClientSessions where SysClientSessions.Status == 1 && SysClientSessions.clientType == 0 && SysClientSessions.userId == curUserId(); info( "This session ID is number (from Table) " + int2Str(SysClientSessions.sessionid)); // Способ 3 (Работает как надо) _session = new Session(); info( "This session ID is number (new Session()) " + int2str(_session.sessionId())); } Цитата:
SessionId() возвращает значение только для пользователя с правами Админа. Простые пользователи получают = 0 Может у вас какая то особая настройку прав доступа?
__________________
This posting is provided "AS IS" with no warranties, and confers no rights. Последний раз редактировалось Poleax; 01.12.2010 в 17:21. |
|
01.12.2010, 17:48 | #5 |
Участник
|
дакс 2009ру5. Завел пользователя в домене, дал ему немного прав, завел пользователя в аксапте, сдела кнопку в форме CustTable (info(strfmt('%1', sessionId())) . Для пользователя завел группу, группе дал полные права только на расчеты с клиентами, защел от пользователя - нажал на кнопку - ответ в инфологе 3. Нажимаю на кнопку открыть новую рабочую область - код сеанса тоже 3.
паралельно смотрю на список активных пользователей - для моего пользователя код сеанса 3. никаких дополнительных настроек не делаю |
|