Универсальный http-сервис с автоматической сериализацией выходных данных и внешним управлением настройками

29.09.26

Интеграция - WEB-интеграция

Универсальное расширение для создания http-сервисов на базе произвольных запросов и подходящее для любой конфигурации 1С (платформа должна быть выше 8.3.5).

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Универсальный http-сервис с автоматической сериализацией выходных данных (с документацией)
.zip 259,24Kb ver:1.1
0 2 500 руб. Купить
Универсальный http-сервис с автоматической сериализацией выходных данных (только расширение конфигурации)
.cfe 31,33Kb
0 2 500 руб. Купить
Универсальный http-сервис с автоматической сериализацией выходных данных. Документация
.pdf 257,85Kb
0 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Добрый день.

В связи с активным развитием вайб-кодинга внутри компании появилась потребность регулярно доставать какие-то сведения из 1С, чтобы интегрироваться с новыми появляющимися приложениями. Каждый раз писать отдельный сервис и заниматься публикацией было достаточно трудоемко. OData не подходит по своему замыслу, да и где строились такие запросы, это было достаточно медленно. В результате родился универсальный http-сервис в формате расширения. Весь необходимый функционал содержит внутри себя и специально не применяет типовые методы (в т.ч. БСП). В результате может устанавливаться на любую конфигурацию и публиковаться.

Первая версия содержала только справочник запросов (с перечнем параметров) и возможность эти сведения получать, после чего было решено сделать лазейку для создания новых запросов и правки имеющихся отдельным сервисом внутри. А для автоматического документирования построить swagger.

Решение уже несколько месяцев стабильно работает у нас, решил поделиться. Очень удобно для формирования различных выгрузок данных из 1С по запросам, которые мы можем легко администрировать и изменять.

В настоящий момент является одним из ключевых элементов полной ИИ-разработки, запросы от новых созданных приложений генерируются с помощью ИИ и далее встраиваются в рабочую базу, отдавая корректно необходимые данные - тем самым специалисты 1С не отвлекаются на постоянные мелкие задачи интеграции.

Расширение содержит совсем небольшой набор объектов:

  • Отдельную подсистему 
  • Общий модуль с универсальными процедурами
  • Роль для работы с расширением
  • Константу, разрешающую запись новых настроек через сервис
  • Справочник, хранящий настройки запросов с параметрами
  • Набор http-сервисов

 

 

На справочнике и сервисах мы остановимся подробнее - это основные объекты для взаимодействия. Установка расширения в базу и публикация вебсервисов расширений стандартная, при публикации ставим флаг для расширений.

Авторизацию можно настроить как в рамках публикации сервиса, так и на стороне приложений, которые будут подключаться, для безопасности я бы выбрал второй вариант. При необходимости, возможна публикация https.

Справочник настроек

В справочнике хранятся настройки запросов: Наименование будет передаваться как параметр в POST запросе, лимит строк задаем на всякий случай, но если не требуется, то в тексте запроса не прописываем. На закладке Параметры прописываем набор параметров с именами и типами значений. Важный момент, что используются только примитивные типы, так как мы строим универсальный сервис, работающий с прямой обработкой входящего JSON

Сервис получения данных

При публикации получает адрес /hs/UniversalRequestService/urs

Для получения данных по конкретной настройке, в структуру JSON передаем имя и набор параметров. Например для такой настройки

 

 

вот такой JSON

{
  "setting": "BARCODE_BY_ITEM",
  "parameters": {
    "КодНоменклатуры": "12345"
  }
}

Swagger

В рамках сервисов так же публикуется и динамически собираемый Swagger: /hs/UniversalRequestAPI/swagger - доступ к нему можно получить через браузер, все активные настройки из справочника будут выведены с описанием входных параметров и примерами выходных - активные настройки видны в списке.

Сервис формирования новых настроек запросов

При установке константы Разрешить создание сервисов внешним запросом в значение Истина, начинает работать сервис /hs/UniversalRequestAPI/UpdateService 

На входе принимается JSON с указанием:

  • имени создаваемой или изменяемой настройки (name),
  • родительской группы (parentName),
  • описания (description),
  • признака активности (active), 
  • лимита строк (rowLimit),
  • текста запроса (queryText)
  • массива параметров с указанием имени, типа (Строка, Число, Дата, Булево) и обязательности применения
{
  "name": "Номенклатура",
  "parentName": "Интеграции",
  "description": "Поиск номенклатуры по фрагменту наименования",
  "active": true,
  "rowLimit": 100,
  "queryText": "ВЫБРАТЬ ПЕРВЫЕ &ЛимитСтрок ...",
  "parameters": [
    {
      "name": "ФрагментНаименования",
      "valueType": "Строка",
      "required": true
    }
  ]
}

Данный сервис генерирует или перезаписывает настройку с указанным именем. Это позволяет управлять активными настройками, менять и совершенствовать их не затрагивая код 1С

Помощь сервиса в преобразовании процесса разработки

Хочу отдельно описать как в нашем случае изменился подход к задачам интеграции с 1С при необходимости получить какие-то сведения.

Исходно процесс строился следующим образом:

  1. Появляется задача на разработку внешнего (за рамками основной рабочей ERP) приложения
  2. Обсуждается архитектура интеграции
  3. Разрабатывается новый http-сервис или строится обмен с основной системой
  4. Процесс тестирования разной длительности и сложности (в цикле этапы 2-3-4)
  5. Запуск в эксплуатацию
  6. Поддержка (в случае любых изменений сброс на этап 2)

Теперь, с учетом ИИ-разработки, наш процесс строится следующим образом:

  1. Появляется задача на разработку приложения
  2. ИИ с помощью MCP либо специалисты 1С готовят запрос для получения данных
  3. Строится интеграция и автоматизированное тестирование
  4. Запуск в эксплуатацию
  5. Поддержка (в случае любых изменений ИИ достраивает запрос, обновляет настройку в базе и прогоняет тесты, проверкой занимается непосредственно разработчик или пользователь внешнего приложения, ресурсы отдела автоматизации 1С не задействуются)

Дополнительно

Код приложения открыт полностью. На 99% сгенерирован с помощью ИИ и немного по мелочам доведен и донастроен.

Спасибо.

Проверено на следующих конфигурациях и релизах:

  • 1С:ERP Управление предприятием 2, релизы 2.5.22.186, 2.5.18.64
  • Управление нашей фирмой, редакция 3.0, релизы 3.0.13.363

Вступайте в нашу телеграмм-группу Инфостарт

расширение конфигурации HTTP HTTP-сервис

См. также

WEB-интеграция Разработчик Аналитик 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

Модуль "Экспортер" — это расширение для 1С, предназначенное для автоматизации процессов выгрузки данных. Оно позволяет эффективно извлекать, преобразовывать и передавать данные из систем 1С в интеграционную платформу Spot2D. Подсистема упрощает настройку, снижает количество ручных операций и обеспечивает удобный контроль данных.

17568 руб.

20.12.2024    7313    33    4    

34

WEB-интеграция Анализ продаж Системный администратор Разработчик Пользователь 1С:Предприятие 8 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

Модуль "Подсистема интеграции AmoCRM с 1С" позволяет обеспечить единое информационное пространство, в котором пользователи могут эффективно управлять клиентской базой, следить за статусами сделок и поддерживать актуальность данных как в AmoCRM, так и в 1С.

60000 руб.

07.05.2019    44339    76    45    

32

WEB-интеграция Системный администратор Разработчик Пользователь 1С:Предприятие 8 1C:Бухгалтерия 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена по API между конфигурацией 1С:Альфа-Авто 6 и порталом LogicStar. Позволяет работать с несколькими обменами LogicStars разных брендов (CHERY, OMODA, JAECOO, EXEED, TENET) в одной информационной базе в ручном и автоматическом режиме. Поддерживается выгрузка заказ-нарядов, реализаций товаров и товарных остатков.

20740 руб.

13.05.2025    2818    4    0    

7

WEB-интеграция Сайты и интернет-магазины Системный администратор Разработчик Пользователь Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1C:ERP Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Расширение предназначено для более гибкой и быстрой выгрузки остатков и цен на сайты под управление 1С.Битрикс. Управление сайтом(БУС). Настраиваемое гибкое сопоставление складов в 1С и складов в БУС с возможностью обеспечить связь складов один-ко-многим. Настраиваемое сопоставление видов цен в 1С и типов цен в БУС. Отчеты по сравнение остатков и цен в 1С и БУС. Возможность точечной выгрузки остатков и цен.

2278 руб.

08.07.2025    2137    1    0    

2

Обмен с ГосИС Мастера заполнения WEB-интеграция Бухгалтер Пользователь 1С:Предприятие 8 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Универсальное расширение конфигурации для автоматической загрузки и заполнения реквизитов контрагентов (партнеров) из ОГРН для 1С:ERP Управление предприятием 2 (1С:ERP Управление предприятием 2, редакция 2.4), 1С:ERP Управление предприятием 2 (1С:ERP Управление предприятием 2, редакция 2.2), 1С:Управление торговлей 8 (Управление торговлей, редакция 11.5), 1С:Управление торговлей 8 (Управление торговлей, редакция 11.4), 1С:Управление торговлей 8 (Управление торговлей, редакция 11.3), 1С:Управление торговлей 8 (Управление торговлей, редакция 11.2), 1С:Комплексная автоматизация 8 (1С:Комплексная автоматизация, редакция 2.4), 1С:Комплексная автоматизация 8 (1С:Комплексная автоматизация, редакция 2.2), 1С:Комплексная автоматизация 8 (1С:Комплексная автоматизация, редакция 2.0) и 1С:Бухгалтерия 8 (Бухгалтерия предприятия, редакция 3.0).

5000 руб.

08.11.2017    79413    419    298    

85
Для отправки сообщения требуется регистрация/авторизация