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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.07.2017, 11:00   #1  
Veter is offline
Veter
Участник
Аватар для Veter
 
18 / 35 (2) +++
Регистрация: 23.06.2011
Адрес: Минск
Не отображается SPID БД для второго AOS
Здравствуйте.
DAX2009 сборка 1500.1313
Кластер из двух АОСов. На форме Активные пользователи не отображаются SPIDы для сессий, подключенных через второй АОС ,относительно того с которого смотрю (см. рисунок). Возможно кто то сталкивался с подобной проблемой и может поделится решением.

Как найти SPID сессий для второго АОСа?

Заранее благодарен , Андрей.
Миниатюры
Нажмите на изображение для увеличения
Название: exempl1.jpg
Просмотров: 245
Размер:	142.7 Кб
ID:	11574  
__________________
Все в порядке - идем ко дну! (к/ф Экипаж счастливой "Щуки")
Старый 25.07.2017, 11:36   #2  
Krasher is offline
Krasher
Участник
Аватар для Krasher
 
48 / 37 (2) +++
Регистрация: 14.05.2005
Зайти со второго АОС-а?
Старый 25.07.2017, 12:04   #3  
Raven Melancholic is offline
Raven Melancholic
Участник
Аватар для Raven Melancholic
Самостоятельные клиенты AX
Лучший по профессии 2015
 
2,164 / 1293 (48) ++++++++
Регистрация: 21.03.2005
Адрес: Москва-Петушки
Каждый АОС знает только "свои" SPID.
Если нужно смотреть их на конкретном AOS нужно создать разные ярлыки на разные AOSы, прямо прописав в параметрах ярлыка ,что нужно заходить на нужный AOS без автоматической переброски кластером на другие AOSы.
Старый 25.07.2017, 12:07   #4  
Veter is offline
Veter
Участник
Аватар для Veter
 
18 / 35 (2) +++
Регистрация: 23.06.2011
Адрес: Минск
Цитата:
Сообщение от Krasher Посмотреть сообщение
Зайти со второго АОС-а?
Спасибо. Да так и делаем.
Хотелось бы найти другое решение - не отрабатывает вызов из кода.
__________________
Все в порядке - идем ко дну! (к/ф Экипаж счастливой "Щуки")

Последний раз редактировалось Veter; 25.07.2017 в 12:14.
Старый 25.07.2017, 12:11   #5  
Veter is offline
Veter
Участник
Аватар для Veter
 
18 / 35 (2) +++
Регистрация: 23.06.2011
Адрес: Минск
Попробую изменить вводную :
Как можно из клиента первого АОСа - подключится на второй ? (оба АОСа работают в кластере).
__________________
Все в порядке - идем ко дну! (к/ф Экипаж счастливой "Щуки")
Старый 25.07.2017, 14:05   #6  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,952 / 3230 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от Veter Посмотреть сообщение
Попробую изменить вводную :
Как можно из клиента первого АОСа - подключится на второй ? (оба АОСа работают в кластере).
Повесили на форму активных пользователей кнопку по нажатию на которую отрабатывает такой код:
(т.е. на закладке с аосами становишься на нужный аос и жмешь кнопку - открывается клиент аксапты подключенный к выбранному аосу)

X++:
// pkoz 08.07.2011
// содрано тут : \Classes\GRD_ProjectCompile\projectCompileOnAOSs
#macrolib.File
#localmacro.AOSIdPortSeparator      '@' #endmacro
#localmacro.CmdLinePortSeparator    ':' #endmacro
void GRD_connectParticularAOS()
{
    System.Diagnostics.ProcessStartInfo processStartInfoLoc;
    System.Diagnostics.Process          processLoc;
    Integer                             curServerId;
    SysServerSessions                   sysServerSessionsLoc = sysServerSessions.data();
    str                                 cmdLineArgs;
    ;
    curServerId = (select firstonly ServerId
                    from    SysClientSessions
                    where   SysClientSessions.SessionId == sessionid()
                  ).ServerId;

    if (!(  sysServerSessionsLoc.Status       == SysServerStatus::Alive
        &&  sysServerSessionsLoc.LoadBalance  == NoYes::No              // вообще балансировщики всегда имеют статус SysServerStatus::Offline, так что условие избыточно
//      &&  sysServerSessionsLoc.ServerId     != curServerId
       ))
    {
        throw error("Нельзя поключиться к выбранному AOS'у");
    }
    cmdLineArgs = strfmt( @'-loadbalance=0 -aos2=%1', strreplace( sysServerSessionsLoc.AOSId, #AOSIdPortSeparator, #CmdLinePortSeparator ) );

    processLoc = new System.Diagnostics.Process();
    processStartInfoLoc = processLoc.get_StartInfo();
    processStartInfoLoc.set_FileName( WinAPI::getCurrentProcessExecutablePath() );
    processStartInfoLoc.set_Arguments( cmdLineArgs );
    processStartInfoLoc.set_UseShellExecute( false );
    if (!processLoc.Start())
    {
        error("@SYS83461");
    }
}
За это сообщение автора поблагодарили: Veter (1), skuull (2), Ace of Database (3), AlGol (3).
Теги
aos2, аос, кластер

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
emeadaxsupport: Capturing an AX User’s SQL SPID over multiple AOS servers in AX 2009 Blog bot DAX Blogs 0 16.05.2013 19:11
Установка второго AOS Deepoint DAX: Администрирование 2 01.08.2011 10:49
Вылетает аxапта 4.0 при завершении работы Delfins DAX: Прочие вопросы 5 27.06.2007 15:43
Получение SPID, от другого AOS Dronas DAX: Программирование 1 05.05.2006 15:45
2 AOS + 2 БД = 1 сервер renat DAX: Администрирование 2 22.07.2003 09:20

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

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

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