Естественным требованием к работе кассового программного обеспечения является его работа в территориально удаленных друг от друга и от центрального офиса местах. При этом необходимо обеспечить стабильную работу как при наличии каналов связи между РМК и центральной базой данных, так без таковых. Для реализации этого требования в ПП Айтида предусмотрен вариант работы с распределенной базой данных.
Термин распределенная база означает, что в одном месте, в так называемом центре, установлена и работает основная учетная система с базой данных, содержащей всю информацию из работающей системы. На удаленных компьютерах РМК установлена база данных, которая позволяет осуществлять продажи локально без необходимости постоянного прямого подключения к центральной базе данных. В такой локальной базе храниться информация необходимая для осуществления продаж. Эта информация является точной копией данных в центре, но не полной, а только в необходимой части для осуществления работы РМК.
В зависимости от имеющихся ресурсов производится обмен данными между такой базой и базой центра. В процессе обмена данными из центра поступает обновленная информация о товарах, ценах, остатках, оборотах по дисконтным картам, настройки и т. п. В обратную сторону передаются накопленные продажи в виде чеков и кассовых транзакций.
Обмен может осуществляться как в ручном, так и в автоматическом режиме. Все зависит от конкретных условий и наличия связи между РМК и центром.
В случае наличия (квази)устойчивого канала связи можно настроить полностью автоматический обмен данными, при котором с заданной периодичностью будет осуществляться прямая связь РМК и центра.
В случае отсутствия такого канала связи, например и у РМК и центра связь только сеансовая, можно использовать обмен файлами через электронную почту/FTP серверы.
В случае отсутствия возможности связи на одном из узлов обмена возможен ручной обмен файлами.
Для настройки распределенной сети используется справочник Узлов обмена. Данный справочник нужно добавить в меню, используя команду DO sprexchangenodes
.
Под узлом обмена понимается не конечное рабочее место кассира, а место расположения узла распределенной базы данных, к которой могут быть подключены несколько рабочих мест кассиров.
Например, это может выглядеть так.
В справочник узлов обмена добавляют все узлы, между которыми предполагается обмен данными.
Кроме названия, для узла обмена определяются следующие параметры.
Для такой схемы создаются карточки узлов обмена, как на следующих рисунках.
Центральный офис содержит адрес для прямого обмена.
Кассовые узлы не содержат адреса.
Объекты для передачи – вызывает окно для настройки объектов, которые необходимо передавать на кассу и получать из кассы.
По умолчанию передаются и принимаются все допустимые объекты. При необходимости уменьшить объем передаваемых данных, можно с некоторых объектов снять признаки. Например, если не нужно на кассе отслеживать остатки товаров, то можно не передавать туда остатки. Если нет необходимости в кассовых транзакциях, или самих чеках, то можно их не получать из кассового узла. Настройка доступна для кассовых и промежуточных узлов. При отправке данных из центра в кассовый узел используются данные из карточки узла получателя (кассы). При отправке данных из кассового узла в центр используются данные узла кассы. Таким образом, для каждого узла может быть настроен свой список объектов для обмена.
Отправка данных – раздел позволяет задать способ доставки для автоматической передачи файлов с данными узлу обмена. Если будут заданы E-mail адрес и/или тема сообщения, то эти значения будут использованы вместо тех, которые заданы в способе доставки.
Дата отправки данных – позволяет вручную изменить дату отправки данных в узел обмена. Изменение даты позволит повторно отправить данные, в случае утери из в узле обмена. Если будет указана пустая дата, то при ближайшем обмене будет сформирован файл со всеми данными. Это означает, что при приеме такого файла перед загрузкой имеющиеся справочники (в РМК) будут очищены и заменены пришедшими данными. Первоначальная выгрузка из центра производится именно в таком виде.
Получение данных – позволяет указать способ доставки, который будет выполняться перед загрузкой данных.
Дата получения данных – позволяет изменить дату получения данных. Данные принимаются только в том случае, если дата приема данных раньше, чем дата принимаемых данных. Поэтому, для повторного приема данных необходимо отодвинуть эту дату в прошлое, на необходимо количество времени.
Каталог для обмена файлами с данными – необходимо указать доступный каталог, в который будут записывать формируемые и промежуточные файлы.
Признак Только принимать данные – укажет системе, что не нужно отправлять данные никому.
Непосредственно формированием (загрузкой, выгрузкой и доставкой) данных занимается служба Айтиды. Настройка производится в программе ISConfig.exe.
На первой закладке необходимо последовательно заполнить следующие поля.
На закладке Прочее необходимо заполнить параметры обмена.
После заполнения всех параметров необходимо нажать кнопку Сохранить. На закладке Служба и подключения нажать кнопки Установить службу и Запустить службу. Служба обмена начнет свою работу.
При работе с распределенной базой данных документы кассовой смены должны формироваться не в базе кассового узла, а в базе центрального офиса. Все необходимые для этого данные в базе центра будут сразу после завершения обмена данными с кассовым узлом.
Стандартным вариантом автоматизации процесса формирования ДКС в базе центра является настройка задания для планировщика «Загрузка данных из РМК».
Задание необходимо настроить на запуск, когда заведомо должны завершиться процессы получения итоговых данных из кассовых узлов. Например, так
При необходимости обеспечить ручную загрузку данных можно добавить кнопку в панель управления пользователя. Текст исполняемого скрипта можно взять из задания «Загрузка данных из РМК».
ЗАПРОС( "SET DATEFORMAT DMY" );
ДОБАВИТЬКОНТЕКСТ( "SELECT DISTINCT code, rmk FROM specrmkschem WHERE rmk <> ''", "СписокРМК" );
WHILE ( !КОНЕЦКОНТЕКСТА( "СписокРМК" ) )
{
Сервис.РМКСоздатьДокументы( СписокРМК.code, СписокРМК.rmk );
ПРОПУСТИТЬ( 1, "СписокРМК" );
}
УДАЛИТЬКОНТЕКСТ( "СписокРМК" );
Для формирования базы данных кассового узла рекомендуется использовать программу установки. В случае, если такой возможности по какой-либо причине нет, то необходимо выполнить следующие шаги:
В центре при запущенной службе обмена добавить новую карточку узла обмена и заполнить её поля.
Дождаться интервала, заданного в параметре службы Интервал обмена с центром. С этим же интервалом служба в центре сформирует данные для нового узла обмена. Так как в новой карточке поле Дата последней выгрузки будет пустое, то служба сформирует первый полный файл со всеми данными. Файл будет называться:
[КодУзлаЦентра][КодКассовогоУзла][ДатаИВремя].dex
В кассовом узле развернуть чистую базу из дистрибутива.
Обновить базу данных узла до актуальной версии.
Настроить службу обмена согласно описанию выше.
В каталог, указанный в настройках службы скопировать файл, сформированный в центре.
Через указанное в настройках время служба начнет загрузку файла. Как только файл будет переименован или удален, это будет означать, что данные загружены и можно запускать МРП 2.