К публикации приложена выгрузка небольшой базы (dt), в которой реализован полноценный обмен со сторонним приложением через HTTP-сервис и JSON. Чем конфигурация может быть полезна:
-
Предложенный механизм обмена можно взять целиком, если он “ложится” на вашу задачу (см. описание механизма ниже).
-
Можно надергать примеры точно рабочего кода.
-
Посмотреть/пощупать работу с отдельными механизмами 1С (JSON, XDTO, планы обмена, HTTP-сервисы).
В конфигурации два справочника «Номенклатура», «Контрагенты», и один документ «Заказ клиента». Это простые объекты, набросок логики учета.
Механизм обмена реализуется с помощью:
-
Плана обмена «мойОбмен» – регистрирует изменения по справочникам и документу.
-
HTTP-сервиса «мойСервисОбмена» – выдает зарегистрированные изменения, позволяет создавать в базе объекты по запросам в формате JSON.
-
Пакет XDTO «моиСтруктурыДанныхОбмена» – описывает формат входящих запросов JSON для HTTP-сервиса. Позволяет проверять их правильность. Для документа «Заказ клиента» есть также описание/проверка табличной части.
-
Обработка «мояОбработкаОбменаJSON». В модуле объекта обработки реализована работа с планом обмена, JSON и т.д. в виде API. Отдельные операции этого API можно протестировать, открыв форму обработки. HTTP-сервис использует эту обработку для разбора запросов, формирования ответов.
API HTTP-сервиса
Конфигурация 1С умеет выдавать все зарегистрированные изменения и удалять регистрацию изменений (если изменения успешно загружены в приложение, с которым интегрируемся). Также есть возможность создавать/изменять отдельные элементы справочников и документы.
-
GET /hs/my_exch/changes
Получение всех измененных объектов, а также номера сообщения обмена. -
GET /hs/my_exch/clear/{msg}
Удаление регистрации изменений по принятому сообщению с номером {msg}. -
POST /hs/my_exch/product
Создание/изменение элемента спр-ка Номенклатура. -
POST /hs/my_exch/client
Создание/изменение элемента спр-ка Контрагенты. -
POST /hs/my_exch/order
Создание/изменение документа Заказ клиента.
Объекты синхронизируются по УИД. Примеры запросов и ответов можно увидеть, развернув базу и открыв обработку (можно даже не публиковать HTTP-сервис).
Проверено на платформе 8.3.22.2239