====== Формат обмена данными JSON ====== ===== Общее описание ===== В файл JSON выгружаются данные: - Информация о базе данных, дате выгрузки, версии JSON [[#[info] Информация о JSON файле|[info]]] - Справочник "Организации" [[#[entities] Справочник Организаций|[entities]]] [[#[groups] Группы справочников|[entitiesgroups]]] - Справочник "Денежные счета организаций" [**moneyaccounts**] - Справочник "Склады" [**stores**] - Справочник "Партнеры (контрагенты)" [**partners**] - Справочник "Договора" [**contracts**] - Справочник "Налоговые группы" [**vats**] - Справочник "Статьи движения денежных средств" [**itemscost**] - Справочник "Валюты" [**currencies**] - Справочник "Пользователи" [**users**] - Справочник "Столы" (для ресторана) [**tables**] - Справочник "Товары" [[#[goods] Справочник Товаров|[goods]]] [[#[groups] Группы справочников|[goodsgroups]]] - Справочник "Рецепты" [**recipes**] - Документы [[#[docs] Документы список|[docs]]] В большинстве справочников также выгружается информация о группах, например, Справочник "Товары": {{ :обмен_данными_с_другими_системами:json-goods-1.png?nolink |}} При загрузке JSON-файла в другую систему учета рекомендуется загружать только те данные, которые будут использоваться. Например, раздел "Столы" можно не загружать, если объект учета не использует столы (фаст-фуд, магазин). Порядок загрузки желательно соблюдать, как в списке выше, так как, например, в документах есть ссылки на Товары, в Товарах есть ссылки на Поставщиков. Поэтому сначала выполняется загрузка Группы справочников, потом Справочников, потом Документов. ===== Структура JSON файла выгрузки ===== ==== [info] Информация о JSON файле ==== В секции [info] представлена информация о файле выгрузки. ^ Параметр ^ Тип ^ Описание ^ | ver | Целое число| Версия JSON-формата выгрузки.| | jsondocdate| Строка | Дата создания выгрузки в формате: ГГГГММДДччммсс | | sourceID| Строка | Идентификатор базы данных, с которой делалась выгрузка. Можно использовать, чтобы случайно не загрузить данные из других баз.| ==== [groups] Группы справочников ==== Большинство справочников имеют свою структуру - группы. Это секции в JSON-файле с именами: - **[entitiesgroups]** - относится к справочнику Организации. - **[stores]** - относится к справочнику Склады. - **[partnersgroups]** - относится к справочнику Партнеры (контрагенты). - **[vatsgroups]** - относится к справочнику Налоговые группы. - **[itemscostgroups]** - относится к справочнику Статьи движения денежных средств. - **[currenciesgroups]** - относится к справочнику Валюты. - **[usersgroups]** - относится к справочнику Пользователи. - **[tablesgroups]** - относится к справочнику Столы. - **[goodsgroups]** - относится к справочнику Товары. ^ Параметр ^ Тип ^ Описание ^ | guid | Строка | Уникальный глобальный идентификатор. Уникальный по всем базам данных. Рекомендуется его использовать. Размер строки всегда одинаковый.| | lid| Целое число | Локальный идентификатор в пределах одной базы данных. НЕ рекомендуется его использовать. | | level| Целое число | Уровень вложенности группы : 1 - верхний уровень.| | name| Строка | Имя группы. Например: "Снеки"| | fullpath| Строка | Полный путь к группе, например: "\Продукты\Снеки".| | children| Массив | Массив объектов - дочерние группы.| ==== [entities] Справочник Организаций ==== ^ Параметр ^ Тип ^ Описание ^ | guid | Строка | Уникальный глобальный идентификатор. Уникальный по всем базам данных. Рекомендуется его использовать. Размер строки всегда одинаковый.| | lid| Целое число | Локальный идентификатор в пределах одной базы данных. НЕ рекомендуется его использовать. | | group| Строка | Ссылка на guid Группы в [entitiesgroups].| | code| Строка | Внутренний код Организации.| | name| Строка | Короткое имя.| | namefull| Строка | Полное имя.| | inn| Строка | ИНН - индивидуальный налоговый номер.| | edrpou| Строка | ЕГРПОУ, ОКПО.| | nnds| Строка | № свидетельства НДС.| | tel1| Строка | Телефон1 организации.| | tel2| Строка | Телефон2 организации.| | tel3| Строка | Телефон3 организации.| | adr1| Строка | Адрес1 организации.| | adr2| Строка | Адрес1 организации.| | adr3| Строка | Адрес1 организации.| | visible| Целое число| Если = 1, то Огранизация доступна для выбора пользователям.| ==== [goods] Справочник Товаров ==== ^ Параметр ^ Тип ^ Описание ^ | guid | Строка | Уникальный глобальный идентификатор. Уникальный по всем базам данных. Рекомендуется его использовать. Размер строки всегда одинаковый.| | lid| Целое число | Локальный идентификатор в пределах одной базы данных. НЕ рекомендуется его использовать. | | group| Строка | Ссылка на guid Группы в [goodsgroups].| | code| Строка | Код товара.| | name| Строка | Короткое имя.| | namefull| Строка | Полное имя.| | qtty| Дробное число| Количество на складе (для выгрузки в интернет-магазин).| | barcode| Строка | Основной штрих код.| | barcode2| Строка | Штрих код 1-й дополнительной единицы измерения.| | barcode3| Строка | Штрих код 2-й дополнительной единицы измерения.| | barcodelist| Строка | Список дополнительных штрих кодов товара записываются через ";", пример:";2930000000008;2932372939017;2930089785748;".| | pin| Дробное число| Цена закупочная.| | p0| Дробное число| Цена продажная.| | p1..p10| Дробное число| Дополнительные продажные цены.| | unit1| Строка | Основная единица измерения.| | unit2| Строка | Дополнительная 1-я единица измерения.| | unit3| Строка | Дополнительная 2-я единица измерения.| | coeff2| Дробное число| Коэффициент преобразования в 1-ю доп. единицу измерения.| | coeff3| Дробное число| Коэффициент преобразования в 2-ю доп. единицу измерения.| | visible| Целое число| Доступность товара. 0-товар недоступный, 1-доступный и бек- и фронт-офис (экран кассира), 2-доступный только в бек-офис.| | vendor| Строка | Ссылка на guid Поставщика в [partners].| | vat| Целое число| Группа налога (для кассовых аппаратов) совпадает с кодом налога "code" в секции [vats]. 1-'А', 2-'Б', 3-'В' и т.д.| | desc| Строка | Дополнительное описание товара.| | min| Дробное число| Управление складскими запасами: минимальное количество на складе.| | nom| Дробное число| Управление складскими запасами: номинальное количество на складе.| | scs| Целое число| Весы с печатью этикетки: Срок годности в днях.| | plu| Целое число| Весы с печатью этикетки: номер PLU на весах. Если=0, то номер PLU совпадает с кодом товара "code". Если=-1, то товар на весы не выгружается.| | tare| Целое число| Весы с печатью этикетки: вес тары в граммах.| | piece| Целое число| Весы с печатью этикетки: если = 1, то товар на весы выгружается как штучный.| | type| Целое число| Если = 1, то товар имеет рецепт, и может автоматически производится.| | lost| Дробное число| Процент потерь при обработке товара, если он выступает ингредиентом в рецепте.| | outw| Дробное число| Вес порции, если этот товар имеет рецепт. Используется в печати технологической карты.| ==== [docs] Документы список ==== ^ Параметр ^ Тип ^ Описание ^ | guid | Строка | Уникальный глобальный идентификатор документа. Уникальный по всем базам данных. Рекомендуется его использовать. Размер строки всегда одинаковый.| | lid| Целое число | Локальный идентификатор в пределах одной базы данных. НЕ рекомендуется его использовать. | | type| Целое число | Тип документа:\\ 1-Приход\\ 2-Продажа\\ 3-Прайс-лист ЕККА\\ 4-Поступление денежных средств\\ 5-Расход денежных средств\\ 6-Заказ покупателя\\ 7-Заказ поставщику\\ 8-Перемещение\\ 9-Списание\\ 10-Оприходование\\ 11-Возврат покупателя\\ 12-Возврат поставщику\\ 13-Производство\\ 14-Переучет | | num| Целое число | Номер документа. | | sum| Дробное число | Сумма документа. | | date| Строка | Дата документа в формате: ГГГГММДДччммсс | | entity| Строка | Ссылка на guid Организации в [entities].| | partner| Строка | Ссылка на guid Партнера в [partners].| | contract| Строка | Ссылка на guid Договора в [contracts].| | store| Строка | Ссылка на guid Склада в [stores].| | storeto| Строка | Ссылка на guid Склада в [stores]. Присутствует в документах type: 8 (Перемещение). Склад на который перемещается товар.| | user| Строка | Ссылка на guid Пользователя в [users].| | moneyaccid| Строка | Ссылка на guid Денежнего счета в [moneyaccounts]. Присутствует в документах type: 4, 5. | | itemcostid| Строка | Ссылка на guid Статьи расхода в [itemscost]. Присутствует в документах type: 4, 5.| | state| Целое число| Состояние: 0-проведен, 1-не проведен, 2- помечен на удаление.| | desc| Строка | Примечание.| | treeid| Целое число| Идентификатор связанных документов. Документы одного дерева имеют один идентификатор treeid.| | innum| Строка | Номер входящего документа. Для документов type: 1, 7.| | indate| Строка | Дата входящего документа в формате: ГГГГММДДччммсс | | rrocnum| Целое число | Номер чека напечатанного на фискальном принтере (для type: 2, 11).| | rrodevnum| Строка | Заводской номер фискального принтера (для type: 2, 11). | | prodtype| Целое число| Только для Производства (type: 13).\\ 0-У каждого продукта свои ингредиенты.\\ 2-Список продуктов и ингредиентов общий: ингредиенты все списываются со склада, а продукты оприходываются (без конкретной привязки продукт-ингредиент).| | docgoods| Массив | Список товаров в документе | ===== [docs.docgoods] Список товаров в документах ===== ^ Параметр ^ Тип ^ Описание ^ | guid | Строка | Ссылка на guid Товара в [goods].| | qtty| Дробное число| Количество товара в строке документа.| | sum| Дробное число| Сумма - стоимость товара в строке документа с учетом скидки.| | disc| Дробное число| Скидка (в денежном измерении) на стоимость товара в строке документа.| | tindoc| Целое число| Только для документа Производство (type: 13).\\ 1-продукт, 2-сырье/ингредиент.| | posdoc| Целое число| Только для документа Производство (type: 13).\\ По этому параметру в рамках документа сопоставляется "Продукт" и его "Ингредиенты".\\ У каждого "Продукта" свой номер **posdoc**, по этому номеру нужно найти все "Ингредиенты" (tindoc=2) у которых такой же **posdoc**.\\ Если в документе prodtype = 2, то не нужно сопоставлять.|