Дополнительные процедуры, проводимые после восстановления узла из резервной копии
В случае восстановления подчиненной базы данных из архивной копии может возникнуть ситуация, когда номера принятых и/или отправленных сообщений в ней меньше, чем соответствующие номера в главной или подчиненной базе. Как правило, результатом этого являются постоянные сообщения в лог-файлах о том, что «Сообщение обмена №… не опубликовано в каталоге обмена или повреждено. Будет произведена только выгрузка изменений».
Чтобы устранить проблему следует воспользоваться в данном узле обработкой «Установить номера сообщений плану обмена» (вызывается из меню «Сервис» -> «Функции РБД»).
В открывшейся форме следует выбрать план обмена, нажатием кнопки выбора типа данных
Выделить нужный план обмена и нажать кнопку «ОК»
После чего форме обработки следует выбрать узел плана обмена, нажатием кнопки выбора
В открывшемся списке следует выбрать элемент, нажатием правой кнопки мыши и вызовом команды «Выбрать».
При этом выбирать нужно не текущий узел, а тот узел, с которым происходит обмен. В данном случае – центральную базу.
При этом в центральной базе следует открыть форму списка соответствующего плана обмена (меню «Сервис» -> «Все операции» -> «План обмена»)
Выбрать план обмена и нажать «ОК»
и посмотреть для восстанавливаемого узла номера сообщений.
Как видно из данного примера, в центральной базе № отправленного сообщения – 17, а принятого – 14. В то время, как в базе магазина для центральной № принятого – 15, а отправленного – 13. (соответствие номеров сообщений всегда обратное)
В данной ситуации ТОЛЬКО в базе магазина следует
- увеличить номер отправленного сообщения, сделав его равным номеру принятого в центральной базе – т.е. 13 изменить на 14. Иначе центральная не будет принимать ни одно сообщение от магазина, пока его номер не станет больше 14.
- увеличить номер принятого сообщения – т.е. 15 изменить на 17.
После чего нажать кнопку «Установить»
После этого следует удалить все файлы из каталога обмена и начать обмен именно в центральной базе, чтобы центральная повторила состав 17-го пакета, и хотя бы эти данные «не потерялись». При этом важно понимать, что не загружены в новую базу данные предыдущих 17-ому пакетов, больших 15-го (т.е. больше последнего, который был загружен на момент создания резервной копии), в данном примере «потеряно» 16-ое сообщение. Эти данные повторно передать уже не получится, как, впрочем, и определить состав 16-го сообщения. Данная проблема решается различными способами, но наиболее оптимальным является использование во всех узлах сети клиент-серверного варианта платформы, формата базы данных MS SQL и применения полной модели восстановления для SQL-базы данных.
Важно. Процедуру изменения номеров сообщений, как правило, необходимо выполнять для всех планов обмена – «Нормативно-справочная информация», «Основной оперативный документооборот», «Регламентный документооборот» и в некоторых случаях – «Удаленные подразделения».