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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.06.2006, 15:09   #1  
Hidden is offline
Hidden
Участник
 
199 / 15 (1) ++
Регистрация: 25.03.2004
Адрес: Moscow
Почему не заполнено в Активных пользователях поле SPID?
Почему не заполнено в Активных пользователях поле SPID? Как настроить? У нас пользователи работают в терминале и мы не можем идентифицировать их при блокировках из за того, что нет привязки терминальной сесии и процесса в SQL. Если бы в Активных пользователях было заполнено поле SPID, можно было бы однозначно определить кто их пользователей в терминале под какой SQL сессией работает.
Старый 19.06.2006, 15:40   #2  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
А ваши терминальные клиенты подключены к AOS или ч/з двухзвенку?
__________________
Axapta v.3.0 sp5 kr2
Старый 19.06.2006, 16:06   #3  
Hidden is offline
Hidden
Участник
 
199 / 15 (1) ++
Регистрация: 25.03.2004
Адрес: Moscow
Цитата:
Сообщение от AndyD
А ваши терминальные клиенты подключены к AOS или ч/з двухзвенку?
через двухзвенку
Старый 19.06.2006, 16:38   #4  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
В двухзвенке не передается информация об открытых сессиях в сервере б/д от клиента к клиенту.
__________________
Axapta v.3.0 sp5 kr2
Старый 19.06.2006, 16:57   #5  
Hidden is offline
Hidden
Участник
 
199 / 15 (1) ++
Регистрация: 25.03.2004
Адрес: Moscow
Цитата:
Сообщение от AndyD
В двухзвенке не передается информация об открытых сессиях в сервере б/д от клиента к клиенту.
а как можно получить эти данные или где их можно посмотреть?
Старый 19.06.2006, 17:15   #6  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Для текущего пользователя
X++:
xSession session;
;
session = new xSession();
info(session.databaseSpid());
для остальных - никак (точнее будет возвращаться пустое значение)
__________________
Axapta v.3.0 sp5 kr2
Старый 19.06.2006, 18:50   #7  
Hidden is offline
Hidden
Участник
 
199 / 15 (1) ++
Регистрация: 25.03.2004
Адрес: Moscow
Цитата:
Сообщение от AndyD
Для текущего пользователя
X++:
xSession session;
;
session = new xSession();
info(session.databaseSpid());
для остальных - никак (точнее будет возвращаться пустое значение)
для текущего пользователя тоже пустое значение возвращается.
А как же определять? В любом случае, есть же связь текущего пользователя и сесcии на SQL. Может тогда какой нить запрос прямо к таблицам SQL делать?
Старый 19.06.2006, 23:29   #8  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
А вы попробуйте, например, так
X++:
xSession session;
InventTable inventTable;
;
session = new xSession();
while select inventTable
{ 
    info(session.databaseSpid());
    break;
}
Или откройте справочник номенклатуры и тогда проверьте в форме "Активные пользователи"

По умолчанию Axapta держит подключение для MS SQL в течение 1 мин с момента последнего обращения к б/д (для Oracle - 30 мин). Эти параметры можно регулировать с помощью конфигурационной утилиты. При повторном подключении, возможно, будет получен новый SPID

Функция databaseSpid() возвращает значение в том случае, если в момент ее вызова есть открытые курсоры на сервере. Кроме того, если есть дополнительные открытые сессии (с помощью класса Connection), то будут возвращены так же SPID для этих сессий
__________________
Axapta v.3.0 sp5 kr2
Старый 20.06.2006, 09:19   #9  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2479 (88) +++++++++
Регистрация: 20.08.2005
Такое предложение - в конфигурационной утилите для терминальных клиентов включить параметр "Leave connection running when idle" на закладке Database. В этом случае Axapta не будет отключить соединение с б/д по таймауту.

При старте Axapta сохранять в таблицу на сервере необходимые вам параметры - SPID, время подключения, имя пользователя и т.д. При штатном выходе - удалять эту запись.

При вылете - останутся висеть записи, но можно при повторном подключении и получении того же SPID для другой сессии удалять эти записи. Ну и периодические разборки полетов
__________________
Axapta v.3.0 sp5 kr2
Старый 20.06.2006, 12:20   #10  
Hidden is offline
Hidden
Участник
 
199 / 15 (1) ++
Регистрация: 25.03.2004
Адрес: Moscow
Цитата:
Сообщение от AndyD
Такое предложение - в конфигурационной утилите для терминальных клиентов включить параметр "Leave connection running when idle" на закладке Database. В этом случае Axapta не будет отключить соединение с б/д по таймауту.

При старте Axapta сохранять в таблицу на сервере необходимые вам параметры - SPID, время подключения, имя пользователя и т.д. При штатном выходе - удалять эту запись.

При вылете - останутся висеть записи, но можно при повторном подключении и получении того же SPID для другой сессии удалять эти записи. Ну и периодические разборки полетов
Спасибо, попробую.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
сопоставление оплат клиента, переносов сальдо-поле накладная в общем журнале? Aquarius DAX: Функционал 3 28.01.2009 12:51
Акт о приемке материалов - почему не заполняется поле "Брак и бой"? clerk DAX: Функционал 6 20.06.2008 16:31
Объясните, почему для Approve Journal нельзя редактировать поле SumBy rusalaudinov DAX: Программирование 4 24.04.2008 01:11
Поле " Старший смены отгружающего склада" должно быть заполнено. IT-specialist DAX: Программирование 14 25.10.2005 19:37
Почему в InventJournalTrans поле linenum вещественного типа?! ATimTim DAX: Программирование 7 17.06.2004 17:35

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

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

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