...
Передача информации из УКМ 4 во внешнюю систему
Настройка интерфейса сервера УКМ 4 для приема данных из внешней системы
Перед настройкой сервера УКМ 4 убедитесь, что в настройках внешней системы указаны следующие параметры:
- каталог, куда внешняя система выгружает информацию;
- выгружать или не выгружать: скидки, продавцов и отделы (если не выгружать отделы, то справочник отделов и привязка товаров к отделам не будут выгружены).
Настройки в УКМ 4:
- Создать каталог, куда внешняя система будет выгружать информацию.
- На сервере УКМ 4 создать маркетинговую схему и рекламную акцию, в которую должна выгружаться информация по скидкам.
Чтобы подключить конвертер, перейдите в раздел веб-интерфейса Настройка сервера и оборудования/Конвертеры. В открывшемся окне нажмите кнопку + Добавить. Далее выберите из списка конвертер и нажмите + Создать:
После создания конвертера откроется окно его настройки:
Название – в поле указывается название конвертера (по умолчанию, присваивается значение типа добавляемого конвертера).
Запускается – указывается служба, через которую будет осуществляться обмен данными (при условии, что пользователь имеет право доступа к ресурсам). Существуют следующие варианты значений:
Сервер – обмен будет осуществляться через серверную часть УКМ 4.
Терминал – обмен будет осуществляться через клиентскую (терминальную) часть УКМ 4.
Каталог для загрузки данных – в поле указывается путь до каталога, куда внешняя система помещает файлы выгрузки данных.
Архивировать файлы после загрузки – если включить данный флаг, то файлы выгрузки, после обработки конвертером, будут сохранены в виде архива в каталоге обмена данными.
Роль, которая назначается кассирам – указывается одна из ролей кассового персонала. Загружаемые записи о кассирах будут привязаны к этой роли. Пароли при загрузке зашифрованы.
Магазины – для выбора магазинов, в которых будет действовать конвертер, кликните по ссылке Добавить магазины.
Рекламная акция – в поле необходимо указать рекламную акцию, куда будут выгружаться данные по скидкам.
...
Имена файлов
TAGNAME_ [Object]_ [Number]_[P]_[Error].xml
TAGNAME – название головного тега файла;
Object – идентификатор объекта. Может быть переменной длины и принимать значение [код магазина] для файлов, указанных в таблице 1 в разделе «Информация для магазина», или значение [код вида цены во внешней системе] для файлов со скидками (discountPersonal, classifDiscount, receiptDiscount, quantityDiscount).
Если документ содержит общую информацию, то параметр Object не указывается.
Number – порядковый номер файла с информацией данного типа. Электронной обработки номер не имеет, важен только для регулирования последовательности обработки файлов. Формат номера – целое число.
P – признак полноты информации в файле: «F» - файл содержит полный перечень элементов, «I» - файл содержит не полный перечень элементов (это не аналог полной и неполной выгрузки для УКМ2, это только информация о полноте содержимого файлов!).
Error – признак ошибки. Устанавливается УКМ в случае возникновения любых ошибок при работе с данным файлом.
Для всех частей имени файла регистр букв не важен.
Примеры:
storePrices_[1112]_[1]_[I].xml – изменения розничных цен в магазине 1112;
discountPersonal_[5]_[3]_[F].xml – скидка по дисконтным картам, вид цены во внешней системе = 5;
classif_[2]_[F].xml – классификатор товаров.
Настройка интерфейса сервера УКМ 4 для приема данных из внешней системы
Перед настройкой сервера УКМ 4 убедитесь, что в настройках внешней системы указаны следующие параметры:
- каталог, куда внешняя система выгружает информацию;
- выгружать или не выгружать: скидки, продавцов и отделы (если не выгружать отделы, то справочник отделов и привязка товаров к отделам не будут выгружены).
Настройки в УКМ 4:
- Создать каталог, куда внешняя система будет выгружать информацию.
- На сервере УКМ 4 создать маркетинговую схему и рекламную акцию, в которую должна выгружаться информация по скидкам.
Чтобы подключить конвертер, перейдите в раздел веб-интерфейса Настройка сервера и оборудования/Конвертеры. В открывшемся окне нажмите кнопку + Добавить. Далее выберите из списка конвертер и нажмите + Создать:
После создания конвертера откроется окно его настройки:
Название – в поле указывается название конвертера (по умолчанию, присваивается значение типа добавляемого конвертера).
Запускается – указывается служба, через которую будет осуществляться обмен данными (при условии, что пользователь имеет право доступа к ресурсам). Существуют следующие варианты значений:
Сервер – обмен будет осуществляться через серверную часть УКМ 4.
Терминал – обмен будет осуществляться через клиентскую (терминальную) часть УКМ 4.
Каталог для загрузки данных – в поле указывается путь до каталога, куда внешняя система помещает файлы выгрузки данных.
Архивировать файлы после загрузки – если включить данный флаг, то файлы выгрузки, после обработки конвертером, будут сохранены в виде архива в каталоге обмена данными.
Роль, которая назначается кассирам – указывается одна из ролей кассового персонала. Загружаемые записи о кассирах будут привязаны к этой роли. Пароли при загрузке зашифрованы.
Магазины – для выбора магазинов, в которых будет действовать конвертер, кликните по ссылке Добавить магазины.
Рекламная акция – в поле необходимо указать рекламную акцию, куда будут выгружаться данные по скидкам.
Якорь table table
Описание передаваемой информации и правила работы с ней
table | |
table |
Тип информации | Имя файла и головного тега | Тип выгрузки |
---|---|---|
Общая информация (одинаковая для всех магазинов) | ||
Справочник свойств товаров | рroperties | всегда полная |
Справочник налогов | taxes | всегда полная |
Справочник отделов магазинов | stocks | всегда полная |
Товарный классификатор | classif | всегда полная |
Товары (включая штрихкоды и дополнительные характеристики товаров) | updateItems | полная/частичная |
Скидка по дисконтным картам | discountPersonal | полная/частичная |
Скидки на товарную группу | classifDiscount | всегда полная |
Скидка на чек (по времени и сумме) | receiptDiscount | всегда полная |
Скидка на количество товара | quantityDiscount | всегда полная |
Информация для магазинов | ||
Цены на товары | storePrices | полная/частичная |
Продавцы | storeSellers | всегда полная |
Привязка товаров к отделам магазина | itemStoreStock | всегда полная |
Кассиры | storeCashiers Пример: storeCashiers _[5]_[1]_[F].xml [5] – код магазина во внешней системе; [1] – номер выгрузки п/п; [F] – флаг, что файл содержит полный перечень кассиров | всегда полная |
...
- Все справочники, кроме товаров (артикулов), цен и содержимого скидки Персональная на классификатор, выгружаются из внешней системы полностью (если в них произошли изменения во внешней системе с момента предыдущей выгрузки). Если изменений во внешней не было, то файлы соответствующих типов не создаются.
- Удаления записей о товарах (артикулах) и ценах в рамках протокола обмена информацией не предусмотрено. Удаление товара (запись в прайс-листе) производится через интерфейс УКМ 4.
- Удаления записей в скидке Персональная на классификатор с помощью конвертора не предусмотрено. При необходимости удаления записей, следует удалить на сервере УКМ 4 саму скидку (или скидки) и сделать полную выгрузку всех скидок из внешней системы. Конвертер создаст недостающие скидки заново.
- Выгрузка информации о скидках производится на центральном сервере внешней системы (в СГО). В случае настройки загрузки скидок на серверах магазинов, в УКМ 4 не гарантируется целостность информации, при условии одновременной настройки других скидок на СГО.
- Удаления записей о товарах (артикулах) в рамках протокола не предусмотрено. При большой необходимости удалить товар можно через интерфейс УКМ 4.
- Полные выгрузки внешняя система может делать либо по расписанию, либо при ручной выгрузке, при этом загрузку на сервер УКМ 4 предыдущих порций информации внешняя система не проверяет.
- Если файл с ценами имеет флаг полной выгрузки, то УКМ 4 предварительно удаляет текущее содержимое прайс-листа для магазина и затем загружает его содержание из файла. Удаляются только цены на артикулы, цены на штрихкоды не изменяются.
- Если в выгруженной записи о цене пропущено её значение (есть только теги <price></price>), то УКМ 4 удаляет запись о цене для данного товара из текущего прайс-листа.
...
Например, в каталоге есть файлы Classif_[1]_[F], Classif_[2]_[F], Classif_[3]_[F]. Если в этот момент внешняя система еще раз выгружает товарный классификатор, то она должна выгрузить его в файл с именем Classif_[4]_[F]. Флаг полного/неполного наполнения файла не влияет на нумерацию файлов (т.е. нумерация сквозная для файлов с одним типом документов без учета полного/неполного их содержимого).
- Полные выгрузки внешняя система делает либо по расписанию, либо при ручной выгрузке. «Загруженность» предыдущих порций информации СМ не проверяет.
Правила обработки информации сервером УКМ 4
- Каждый файл, передаваемый из внешней системы в УКМ 4, содержит один тип информации и обрабатывается сервером УКМ 4 как отдельная транзакция, т.е. он или обрабатывается целиком или не обрабатывается вообще. Каждый файл обрабатывается независимо от другого.
- Файлы обрабатываются сервером УКМ 4 в порядке, в котором они перечислены в таблице (см. выше). При этом, для каждого типа информации (тега) УКМ 4 ищет файл полной выгрузки с наибольшим номером, загружает его и все последующие файлы этого же типа с инкрементной выгрузкой (этого же типа) и не загружает все файлы до загруженного файла.
- Все файлы из входного каталога УКМ 4 переносит подкаталог Archive, добавляя к концу имени дату-время его обработки (в формате YYYYMMDDHHMMSS). При этом, если файл был загружен, то в конец имени дописывается load, если файл был пропущен – ignor.
- Если при обработке файла возникли ошибки любого типа (как связанные с доступом к файлу, так и с его содержанием), то работа конвертера останавливается, он переходит в режим периодического рестарта. При каждом старте конвертер начинает обработку каталога заново. В этом случае предполагается, что проблема будет исправлена с помощью ручной полной выгрузки из внешней системы. Файлы, при обработке которых возникли ошибки, остаются в каталоге обмена, и УКМ 4 дописывает к их имени [error]. Например: Classif_[1]_[F]_[error]. При рестарте конвертера файлы по-прежнему участвует в обработке информации по общим правилам, но отметка [error] остается у файла навсегда, в том числе и при переносе в подкаталог Archive. При этом, файл может быть успешно обработан (load) или может быть пропущен (ignor).
- УКМ 4 должен обеспечить правильную обработку привязки штрихкодов к артикулам, т.е. в базе УКМ 4 штрихкод должен быть привязан к артикулу в соответствии с последней информацией, полученной из внешней системы.
Структура данных, передаваемых из СуперМаг в УКМ 4
Во внешней системе можно настроить 4 типа скидок – "скидка по дисконтным картам", "скидка на группу классификатора", "скидка по времени и сумме чека" и "скидка на количество товара". Каждый тип скидки может иметь столько экземпляров, сколько существует видов цен в СуперМаг. В УКМ 4 передаются только те экземпляры скидок, которые настроены для видов цен, определяемых, как "цена для касс" в СуперМаг. СуперМаг выгружает информацию о всех экземплярах скидок одного типа в отдельный файл, при этом для каждого экземпляра скидки передаются "код вида цены в СуперМаг" и "название вида цены в СуперМаг":
<discountType>
<program>// minOccurs=”0” maxOccurs="unbounded"
<id></id> <код вида цены в СМ>
<name></name> <название вида цены в СМ>
</program>
Здесь "discountType" может принимать значения"
...
- . При этом, файл может быть успешно обработан (load) или может быть пропущен (ignor).
- УКМ 4 должен обеспечить правильную обработку привязки штрихкодов к артикулам, т.е. в базе УКМ 4 штрихкод должен быть привязан к артикулу в соответствии с последней информацией, полученной из внешней системы.
Структура данных, передаваемых из внешней системы в УКМ 4
Свойства товаров (весь справочник) (в СуперМаг - справочник "Размеры")
<Properties fullness=”F”> <version=””> <Property> // minOccurs=”0” maxOccurs="unbounded" <id></id> <name></name> <PropertyValue> <value></value> </PropertyValue> </Property> </Properties>
...