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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 28.01.2009, 13:08   #1  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Ре-синхронизация системных таблиц на основании AOT
Сегодня интересный пост был на внутреннем форуме.
Что-то, чего мне никогда не доводилось делать, но, возможно, будет полезным кому-то еще:

Если системные таблицы в базе данных по какой-либо причине рассинхронизировались, или не создались при попытке запуске АОС, то АОС не сможет стартовать. Такое возможно, к примеру, после неудачного апгрейда.
Примерные сообщения об ошибке, которые при этом видит пользователь:

Цитата:
Object Server 05: The database reported (session 1 (-AOS-)): [Microsoft][SQL Native Client][SQL Server]Invalid object name 'SYSSERVERSESSIONS'.. The SQL statement was: "SELECT A.SERVERID,A.AOSID,A.INSTANCE_NAME,A.VERSION,A.LOGINDATETIME,A.LOGINDATETIMETZID,A.STATUS,A.LOADBALANCE,A.WORKLOAD,A.LASTUPDATEDATETIME,A.LASTUPDATEDATETIMETZID,A.RECVERSION,A.RECID FROM SYSSERVERSESSIONS A WHERE (STATUS=?)"

Object Server 05: SQL diagnostics: [Main Microsoft Dynamics Application Object Server Session]Unable to report problem. Attempted to open message 310.

Object Server 05: Dialog issued for client-less session 1: Cannot select a record in Current AOS instances (SysServerSessions). ServerId: 0, .
The SQL database has issued an error.

Object Server 05: The database reported (session 1 (-AOS-)): [Microsoft][SQL Native Client][SQL Server]Invalid object name 'SYSCLIENTSESSIONS'.. The SQL statement was: "SELECT A.SESSIONID,A.SERVERID,A.VERSION,A.LOGINDATETIME,A.LOGINDATETIMETZID,A.STATUS,A.USERID,A.SID,A.USERLANGUAGE,A.HELPLANGUAGE,A.CLIENTTYPE,A.SESSIONTYPE,A.CLIENTCOMPUTER,A.RECVERSION,A.RECID FROM SYSCLIENTSESSIONS A WHERE (SERVERID=?)"

Object Server 05: Internal Error occurred executing stored procedure when creating session for the AOS.

Эти (и другие) системные таблицы можно обновить/пересоздать, выполнив следующую SQL команду и перезапустив AOS.
X++:
update SqlSystemVariables set value = value - 1 where parm = 'systabversion'
Объяснение:
Ядро системы использует эту таблицу, а конкретно значение параметра systabversion для определения статуса синхронизации таблиц. Устанавливая значение systabversion меньшее на 1, мы "говорим" АОSу, что нужно пересоздать нужные системные таблицы.
За это сообщение автора поблагодарили: Vadik (1), Logger (4), aidsua (1).
Старый 28.01.2009, 13:22   #2  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Мне не охота проверять, но кажется, мне помогало

Ax32.exe -repair
__________________
С уважением,
glibs®
За это сообщение автора поблагодарили: Logger (4).
Старый 28.01.2009, 14:01   #3  
egorych is offline
egorych
Участник
Самостоятельные клиенты AX
Oracle
 
761 / 154 (7) ++++++
Регистрация: 09.11.2006
Адрес: Краснодарский край
-repair вроде работает, если версия клиента ниже чем в базе записано
Старый 28.01.2009, 14:22   #4  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Работает он всегда. В этом случае тоже помогает.

Правда я потом уже сообразил, что я в 3.0, видать экспериментировал.

Насколько удастся стартовать -repair для АОСа в 4.0 и 5.0 не уверен.

В общем, просто идея. Если будет повод — я проверю.
__________________
С уважением,
glibs®
Старый 28.01.2009, 15:06   #5  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,273 / 3466 (122) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от kashperuk Посмотреть сообщение
Ядро системы использует эту таблицу, а конкретно значение параметра systabversion для определения статуса синхронизации таблиц.
Это не совсем так. В АОСе (как и в клиенте) прошит номер версии таблиц, который ожидается в БД (SQLSYSTEMVARIABLES) в этом параметре. Если в АОСе прошит номер, больший чем в БД, то аксапта считает, что производится апгрейд версии и запускает синхронизацию всех (в т.ч. системных) таблиц.
Кто переходил в 3.0 с SP3 на KR1 тот вспомнит - что так было добавлено поле RecVersion во все таблицы. Т.е. когда натравливаешь клиента KR1 на БД от SP3, то первый запуск производится долго (синхронизация все-таки) - зато потом чудесным образом появляется RecVersion
__________________
Возможно сделать все. Вопрос времени

Последний раз редактировалось sukhanchik; 28.01.2009 в 15:08.
Старый 27.05.2010, 17:36   #6  
otkudao
Гость
 
n/a
2 kashperuk
на 5-ке запускали?
у меня не пошло, хотя проблема несколько другая была. АОС не поднялся после смены версии.
Старый 27.05.2010, 17:40   #7  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Цитата:
Сообщение от otkudao Посмотреть сообщение
2 kashperuk
на 5-ке запускали?
у меня не пошло, хотя проблема несколько другая была. АОС не поднялся после смены версии.
Нет, не проверял или это работает на 5ке.
Старый 28.05.2010, 16:36   #8  
otkudao
Гость
 
n/a
на 5-ке -repair заработал только после удаления на SQL нескольких системных таблиц. После чего доступ к АОС с клиента стал недоступен
Теги
sysclientsessions, sysserversessions, upgrade

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Пустые названия системных таблиц в report data range (DAX 4.0) Qaz Qwerty DAX: Функционал 3 06.08.2008 00:05
Синхронизация таблиц м/у 2-мя компаниями sparur DAX: Программирование 15 12.12.2006 18:47
Синхронизация таблиц при изменении EDT z_av DAX: Программирование 1 16.12.2004 11:55
синхронизация таблиц andreynikolai DAX: Программирование 3 11.12.2003 16:22
Синхронизация таблиц Андре DAX: Программирование 6 12.04.2002 10:29
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 02:40.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.