Иногда во время работы происходят ситуации, которые пока система не обрабатывает (перебои в электроэнергии, некорректное завершение работы ПК) и из-за этого ухудшается журнал изменений. Соответственно система не пересылает измененные записи на сервер и, таким образом, возникают расхождения информации на предприятии и на сервере. Для того, чтобы привести все в соответствие, необходимо копию базы данных переслать администратору сервера региона. Из-за большого объема информации переслать  по почте нет возможности . Поэтому, временно, информацию базы данных в сегменте нужно сделать "только для чтения". 

Администратору сегмента для этого необходимо:

  • заблокировать базу данных в сегменте (на предприятии), отметив признак блокирования БД;
  • скопировать все файлы из каталога с данными (DBFS) на любой носитель соответствующего объема (например ZIP);
  • отправить информацию администратору сервера региона и ждать получения данных назад;
  • после получения данных от администратора сервера, скопировать все файлы с носителя обратно в каталог с данными (DBFS);
  • разблокировать базу данных в сегменте (на предприятии), убрав признак блокирования БД.

Администратору сервера необходимо:

  • получив данные от администратора сегмента скопировать все файлы в новый каталог на сервере;
  • запустить программу синхронизации данных и следовать всем указаниям, которые возникают в процессе работы программы;
  • скопировать все файлы на носитель и отправить данные администратору сегмента.

В начале работы система пытается открыть БД сервера в монопольном режиме. Для этого временно блокируется приложение. При сравнении данных в системе, необходимо знать местоположение копии БД сегмента. Для этого, в диалоге предлагается указать файл БД (common.dbc). После указания файла, анализируется формат файла и информация о сегменте. Могут возникнуть следующие сообщения:

ообщение

 

Причина

 

Порядок устранения

Сверка возможна только на сервере региона. Процедура прервана...   Программа запущена в сегменте, который не является сервером региона   Запустить на сервере региона
Нельзя сверить самого себя. Процедура прервана...   Вы указали каталог, где расположена БД региона   Укажите каталог, где расположены данные сегмента
Файл не является таблицей. Процедура прервана...   Указан файл неверного формата   Укажите файл БД
Таблица не является базой данных системы. Процедура прервана...   Указан файл неверного формата   Укажите файл БД
База данных системы старой версии. Выполните обновление...   Файл БД формата ранее, чем версия 1.1.81   Запустите программу обновления структуры таблиц и индексов (upgrade.exe) для сегмента
Версии баз данных сегмента и сервера не совпадают. Выполните обновление...   Файл БД сервера и сегмента разных версий   Запустите программу обновления структуры таблиц и индексов (upgrade.exe) и приведите версии баз данных к одной
Неверно прописана конфигурация сегмента. Процедура прервана...   Информация о сегменте на сервере и в самом сегменте различны   Приведите в соответствие информацию о сегменте
Нельзя сверить несуществующий сегмент. Процедура прервана...   Информация о сегменте на сервере отсутствует   Приведите в соответствие информацию о сегменте
Нельзя сверить одинаковые сегменты. Процедура прервана...   Коды сегментов на сервере и указанной БД одинаковы   Укажите каталог, где расположены данные сегмента
Сегмент и сервер принадлежат различным регионам. Процедура прервана...   Информация о сегменте на сервере и в самом сегменте различны   Приведите в соответствие информацию о сегменте
В сегменте нет ни одного предприятия. Процедура прервана...   В выбранном сегменте не обрабатывается ни одно предприятие   Укажите каталог, где расположены данные сегмента
База данных сегмента НЕ БЛОКИРОВАНА. Возможно возникнут проблемы с потерей данных. Продолжать все равно?   Администратор сегмента не заблокировал БД сегмента. Возможно в промежуток времени, когда администратору сервера попала копия данных сегмента, информация на предприятии изменилась. Программа при сверке будет брать за оригинал данных то, что в настоящий момент находится в копии. Вновь поступившие данные таким образом будут удалены.   Если Вы уверены, что изменений в сегменте не производилось, укажите "ОК". В противном случае "Отменить".

Далее система выделяет из БД сервера часть информации, которая принадлежит сегменту и находится на сервере. Вторым проходом производится выделение части информации с самого сегмента (в сложных сегментах может находится информация из филиалов предприятия). Затем сверяются данные выделенных частей. После сверки производится анализ расхождений, если такие есть, и на экране появляется информация о планируемых изменениях, которые система предполагает выполнить. Пример этой информации приведен ниже.

Таблица

 

ID на сервере

 

Изменения

 

ID в сегменте

DET201       <---   K101AQ1
DET201       <---   K101AQ2
DET201   K101AQB   X<--    
DOC201   K100J0F   <---   K100J0F
RB24   K50010N   --->   K50010N
TR24XX       -->X   KR006V2

Всего рассматривается 4 ситуации по изменениям:

  • если данные появились в сегменте и существуют в сегменте, и не соответствуют данным на сервере, то правильной информацией считаются данные в сегменте (строки 1, 2, 4). Знак изменений "<---"
  • данные находятся на сервере и появились в сегменте, но нет при сверки в самом сегменте - запись удаляется на сервере (строка 3). Знак - "X<--"
  • данные возникли не в сегменте (общие справочники и т.д.) и не совпадают с данными на сервере, за оригинал принимаются данные на сервере (строка 5). Знак - "--->"
  • данные которые возникли не в сегменте и нет на сервере, но есть в сегменте - удаляются из сегмента (строка 6). Знак - "-->X"

После проведенных изменений очищаются уведомления из журналов доставки почты на сервере и в сегменте. Таким образом, после синхронизации данных считается, что почта полностью доставлена.