Изменения

Перейти к навигации Перейти к поиску

Импорт данных по протоколу R1Sensor

692 байта добавлено, 12:29, 22 мая 2020
Добавление товаров, обновление или удаление товаров и групп товаров
Перед использование данных команд, необходимо передать на весы команду '''''{{ProtocolCommand|BeginUpdate'''''}}, а по окончании работы с товарами передается команда '''''{{ProtocolCommand|EndUpdate'''''}}. При необходимости очистки базы товаров на весах, между передачами команд '''''{{ProtocolCommand|BeginUpdate/EndUpdate'''''}}, так же необходимо передать команду '''''{{ProtocolCommand|ClearGoodsAndGroups'''''}}.
При использовании команд обновления ('''''{{ProtocolCommand|UpdateGoods''''' }} и '''''{{ProtocolCommand|UpdateGroups'''''}}), если товара или группы нет в базе весов - товар или группа создаются и сообщение об ошибке не передается.
Разница между командами '''''{{ProtocolCommand|UpdateХХХ''''' }} и '''''{{ProtocolCommand|AddXXX''''' }} заключается в минимальном наборе параметров, которые необходимо передаются на весы, что бы не возникло ошибки при приеме команды. Так для для команды '''''{{ProtocolCommand|AddGoods''''' }} необходимо передать: номер товара, название товар, группу-владелец и цену. Для команды '''''{{ProtocolCommand|UpdateGoods'''''}}: только номер товара.
Если при использовании команд удаления ('''''{{ProtocolCommand|RemoveGoods''''' }} и '''''{{ProtocolCommand|RemoveGroups'''''}}) товар или группа не найден - передается ошибка '''''товар не найден'''''.
В объекте '''''{{ProtocolCommand|data''''' }} передаются все необходимые параметры товара или группы.
Команды '''''{{ProtocolCommand|Remove...''''' }} обрабатываются в последнюю очередь. Т.е. сначала производится очистка базы дынныхданных, далее производится добавление товаров/групп и потом удаление товаров/групп.
*Поля данных товара:
:'''''{{ProtocolCommand|goods-no''''' }} - номер товара. Номер должен быть уникален. Поиск товара при добавлении/обновлении ведется по этому полю.
:'''''{{ProtocolCommand|goods-add-code''''' }} - дополнительный номер товар. Может использоваться при формировании штрих-кода товара.
:'''''{{ProtocolCommand|goods-display-number''''' }} - дополнительный номер товара. Данный номер можно вывести на кнопку товара. По данному номеру возможно сортировать товары внутри группы.
:'''''{{ProtocolCommand|goods-name''''' }} - название товара для печати на этикетке.
:'''''{{ProtocolCommand|goods-full-name''''' }} - название товара для вывода на кнопку товара. Если данное поле не задано, значение берется из поля '''''{{ProtocolCommand|goods-name'''''}}.
:'''''{{ProtocolCommand|goods-price''''' }} - цена товара. Можно передавать как строку: '''''"123.55"''''', можно как число: 123.55
:'''''{{ProtocolCommand|goods-dep''''' }} - отдел товара. Используется при формировании штрих-кода товара.
:'''''{{ProtocolCommand|goods-barcode-type''''' }} - тип структуры штрих-кода товара.
:'''''{{ProtocolCommand|goods-action''''' }} - признак акционности товара (используется для вывода на кнопке товара специальной картинки).
:'''''{{ProtocolCommand|goods-is-popular''''' }} - признак популярности товара (используется для вывода этих товаров в отдельное поле на форме выбора товаров).
:'''''{{ProtocolCommand|goods-ice-percent''''' }} - процент '''''ледяной глазури''''' в весе товара. В формате от '''''0.0''''' до '''''99.99'''''.
:'''''{{ProtocolCommand|goods-label''''' }} - номер шаблона этикетки.
:'''''{{ProtocolCommand|goods-label2''''' }} - номер 2-го шаблона этикетки.
:'''''{{ProtocolCommand|goods-discount-label''''' }} - номер шаблона этикетки для печати скидочных товаров.
:'''''{{ProtocolCommand|goods-discount-price''''' }} - цена со скидкой.
:'''''{{ProtocolCommand|goods-discount-percent''''' }} - процент скидки.
:'''''{{ProtocolCommand|goods-discount-type''''' }} - тип скидки ('''''0''''' - нет скидки).
:'''''{{ProtocolCommand|goods-limit-quantity''''' }} - ограничение количества для вывода на этикетку при использовании скидок.
:'''''{{ProtocolCommand|goods-owner-group''''' }} - группа-владелец товара.
:'''''{{ProtocolCommand|goods-picture-bytes''''' }} - картинка товара (массив байт).
:'''''{{ProtocolCommand|goods-picture-filename''''' }} - имя файла картинки товара.
:'''''{{ProtocolCommand|goods-second-picture-filename''''' }} - имя файла дополнительной картинки товара.
:'''''{{ProtocolCommand|goods-packing-date''''' }} - дата/время паковки (формат: '''''dd-MM-yyyy hh:mm''''').
:'''''{{ProtocolCommand|goods-produced-date''''' }} - дата/время производства (формат: '''''dd-MM-yyyy hh:mm''''').
:'''''{{ProtocolCommand|goods-valid-date''''' }} - дата/время окончания срока годности (формат: '''''dd-MM-yyyy hh:mm''''').
:'''''{{ProtocolCommand|goods-shelf-life''''' }} - срок годности в днях. Если число отрицательно - в часах.
:'''''{{ProtocolCommand|goods-weight-unit''''' }} - весовая единица товара.
:'''''{{ProtocolCommand|goods-tare''''' }} - вес тары товара.
:'''''{{ProtocolCommand|goods-message-x''''' }} - текстовые сообщения для печати на этикетке.
*Для успешного добавления товара необходимо передать как минимум следующие поля:
:'''''{{ProtocolCommand|goods-no'''''}}, '''''{{ProtocolCommand|goods-name'''''}}, '''''{{ProtocolCommand|goods-price'''''}},
*В поле '''''{{ProtocolCommand|goods-picture-filename''''' }} и '''''{{ProtocolCommand|goods-second-picture-filename''''' }} передается имя файла картинки для товара или группы. Указанный файл должен присутсвовать присутствовать в каталоге '''''{{Путь к файлу|./Data/Pictures/'''''}}. Можно располагать файлы в подкаталогах.
*Данные могут быть предварительно запакованы архиватором GZip (отключается в настройках весов). Так же флаг использования компрессии можно предать в объекте '''''{{ProtocolCommand|data''''': '''''use-compress''''' }} : 1 или 0.
:Далее данные кодируются в BASE-64.
*Срок годности товара имеет следующие значение:
:'''''0''''' - срок годности не задан
:'''''-х''''' - срок годности указан часах
:'''''х''''' - срок годности указан в днях
*Поля "{{ProtocolCommand|goods-message-x" }} служат для передачи дополнительной текстовой информации, печатаемой на этикетке.
:Перечень соответствия сообщений и элементов шаблона этикетки:
:"{{ProtocolCommand|goods-message-1" }} - текстовое сообшениесообщение
:"{{ProtocolCommand|goods-message-2" }} - ингридиенты
:"{{ProtocolCommand|goods-message-3" }} - страна происхождения
:"{{ProtocolCommand|goods-message-4" }} - реклама
*Поля данных группы:
:'''''{{ProtocolCommand|group-no''''' }} - номер группы.
:'''''{{ProtocolCommand|group-name''''' }} - название группы.
:'''''{{ProtocolCommand|group-picture-filename''''' }} - имя файла картинки группы.
:'''''{{ProtocolCommand|group-picture-bytes''''' }} - картинка товара (массив байт).
:'''''{{ProtocolCommand|group-owner-group''''' }} - номер группы-владельца.
*Для успешного добавления группы необходимо передать как минимум следующие поля:
:'''''{{ProtocolCommand|group-no'''''}}, '''''{{ProtocolCommand|group-name'''''}}
Сокращения используемые в таблице:
'''''D ''''' - отдел
'''''L ''''' - № товара
'''''I ''''' - код магазина
'''''P ''''' - цена
'''''Q ''''' - вес
'''''CRC ''''' - контрольная сумма

Навигация