Иногда по различным причинам данные о сменах не попадают в SQL. В таком случае их можно загрузить принудительно. 

Перезакачка сменLink to Перезакачка смен

  1. Перейдите в Сервис > Информация об общих сменах
  2. Есть два способа сделать так, чтобы смену можно было перезагрузить:

    1. В справочнике Информация об общих сменах выделите одну или несколько незакачавшихся смен, вызовите контекстное меню и выберите Действия > Разрешить перезакачать смену

    2. Выделите одну или несколько незакачавшихся смен, вызовите контекстное меню и выберите Удалить. После этого на панели инструментов нажмите Очистить БД для очистки удаленных смен из базы SQL

  3. После этого перейдите в папку [RK7]\MIDBASE\Archive, в которой хранятся смены

  4. Выделите и скопируйте нужные файлы смен — udb


  5. Вставьте скопированные файлы в папку %папка БД сервера%\filesync\incoming.


    Если вы не знаете, где находится база данных сервера, это можно узнать в файле настроек кассового сервера rk7srv.ini в поле [REFSERVER]

    [REFSERVER]
    Server = RK7IVAN
    UBDFILE = ..\..\base\bazadannih
    CODE

    В данном случае — папка базы данных ..\..\base.

  6. Подождите, пока сервер обработает поступившие данные. Через некоторое время файлы смен исчезнут из папки incoming. Если через 5 минут файлы не исчезли, нажмите Обновить или клавишу F5. 
    Проверить, что файлы смен загрузились корректно, можно в файле лога сервера справочников — обычно это refsrv.stk. Там должны появится записи вида:

    20.09 14:55:32.195
    26:SQL Export (shift2SQL) ->
    -------------------------------------
    20.09 14:55:35.144 
    26:SQL Export (shift2SQL): okay <-
    TEXT
  7. Если в логе записи появились и нет ошибок, значит всё в порядке — смены закачались корректно.

Возможные ошибки при перезакачке сменLink to Возможные ошибки при перезакачке смен

Начиная с версии 7.07.00.248 при загрузке файла смены отключена запись в check.udb. Информация о сменах берется напрямую из базы SQL. Поэтому удалять check.udb не имеет смысла, он не используется.
  1. При ошибке в логе, что смена уже есть в базе:
    • До версии 7.25.05.00 для перезакачки смены очистите таблицу globalshiftstats.
      Информация об общих сменах тянет смены из таблицы globalshifts. При пустой таблице смена может не закачиваться из-за ее наличия в globalshiftstats, так как именно по последней таблице ref проверяет возможность наличия смены.
    • С версии 7.25.05.00 выгрузка накопительных данных в БД будет очищать таблицу globalshiftstats и даст возможность целиком перезакачивать все имеющиеся смены в SQL.
      Будьте осторожны, при выгрузке может произойти потеря данных.
  2. При ошибке D:\RK7DATA\xxxxxxx\Rk7Reference\base\filesync\retrylst\serv.xxxx.shift.xx.udb (reason: System Error.  Code: 80. Файл существует) обновитесь на версию 7.25.03.002.