Анализ HTTP API, документирование в OpenAPI и переиспользование в Postman

Публикация № 1319857 02.11.20

Разработка - Системная интеграция

В статье опишу порядок работы с описанием HTTP API на примере подсистемы "Получение обновлений программы" из БСП 3.

Вводные

  • БСП 3.1.3.17
  • Желание разобраться в механизме автоматического получения патчей и обновления типовых конфигураций
  • Статья с началом разбора темы //infostart.ru/1c/articles/1317652/
  • Отсутствие документации на сервис

В статье Yashazz привел описание сервиса в виде таблицы, что относительно трудно анализируется и для переиспользования нужно писать свой код. В этой статье опишу порядок формирования файла описания API и конвертации его в Postman коллекцию для дальнейшего использования. Вопрос обработки результата запроса, добавление и изменение расширений или запуск скрипта обновления конфигурации, будет рассмотрен в отдельной статье.

 

Формирование описания

Для документирования буду использовать OpenAPI спецификацию (ссылка) и формат YAML. В качестве редактора использую VS Code c модулем OpenAPI Editor (ссылка), возможно работать в online редакторе (ссылка). В общем автозаполнение для OpenAPI работает хуже чем для RAML и формирование документации вручную более трудоемко, но это спецификация более распространена среди разработчиков и инструментов.

Источником информации будет общий модуль ПолучениеОбновленийПрограммы

Общее описание

Создаем заголовок файла

openapi: '3.0.2'
info:
  title: API Сервиса автоматический обновлений 1С
  version: '1.0'

Сервера сервиса описаны в функции ХостСервисаОбновлений()

Добавляем в описание

servers:
  - url: https://update-api.1c.ru
  - url: https://update-api.1c.eu

 

Компоновка запроса производится в функции URLОперацииСервисаОбновлений(), в которой указан базовый адрес. В OpenAPI нет иерархии запросов, каждая точка подключения указывается от корня, группировка произодится по тегам. Добавляем базовый адрес в блок servers 

servers:
  - url: https://update-api.1c.ru/update-platform
  - url: https://update-api.1c.eu/update-platform

 

Список URL

Проходим поиском с "URLОперацииСервисаОбновлений" по модулю, получаем список URL из функций, и названия функций, которые переносим в описание. Формируем блок patch, на данный момент он валидный, но не рабочий, потому что в нем не указаны методы и ответы.

paths:
  /programs/update/ping:
    description: Ping
  /programs/update/info:
    description: Info
  /programs/update/:
    description: Файлы обновлений
  /patches/getInfo:
    description: Доступные исправления
  /patches/getFiles:
    description: Файлы исправлений

 

Проверка доступности сервиса

URLОперацииPing используется для формирования переменной "ПроверитьДоступностьСервиса", запускается через функцию ИнтернетПоддержкаПользователей.ЗагрузитьСодержимоеИзИнтернет(), анализируя параметры получем метод GET, проверка в коде на "ПустаяСтрока(РезультатПроверки.ИмяОшибки)", значит анализируется только код ответа 200. Дополняем описание.

paths:
  /programs/update/ping:
    description: Проверка доступности сервиса
    get:
      responses:
        '200':
          description: Успешный ответ

 

Получение информации о доступном обновлении конфигурации и платформы

Используется в функции ИнформацияОДоступномОбновленииВызовОперации() в которой указан метод "POST", тип данных "application/json", "ФорматОтвета = 1", структура данных запроса в функции InfoRequestJSON(), обработка ответа производится функцией ЗаполнитьИнформациюОбОбновленииИзInfoResonseИзJSON().

 
 Обработка формата тела ответа

 

Структуру данных запрос и ответа можно описать в самом запросе, но лучше выносить в отдельный компонент. 

 

В теле запроса импользуются Дополнительные параметры, получаемые в ИнтернетПоддержкаПользователей.ДополнительныеПараметрыВызоваОперацииСервиса()

Добавляем их в виде схемы и добавляем к ним пример, готовый JSON получаем при запуске отладки, просматриваем с помощью https://jsoneditoronline.org/ конвретируем в YAML используя сервис https://www.json2yaml.com/

 
 Схема доп параметров с примером данных

Подключаем к схеме запроса

 
  Схема запроса

Для сложного форматирования описания используется Markdown.

 

При обработкке используется функция ЗаполнитьИнформациюОбОбновленииКонфигурацииИзJSON() из которого можно получить подструктуру которую можно описать отдельным компонентом и переиспользовать его.

 
 Схема элемента ответа

 

 
 Схема тела ответа

 

Дополняем описание запроса

  /programs/update/info:
    description: Получение информации о доступном обновлении конфигурации и платформы
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InfoRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InfoResonse'

 

Результат можно посмотреть в репозитории (сслыка), прямая ссылка на файл (ссылка)

Создание коллекции для тестирования работы

Для тестирования использую Postman (ссылка).

Загружаем описание API

 
 Скриншоты

 

Формируем коллекцию с наименованием "1c_update_service"

 
 Скриншоты

 

Проверяем работу проверки доступности

 
 Скриншот

 

Проверяем работу получения информации об обновлениях

 
 Скриншот

 

При клике на "issues" [8] можно увидеть расхождения относительно описания API.

 
 Скриншот

 

Итог

С помощью бесплатных инструменов можно удобно документировать и использовать описание HTTP API в работе.

 

Благодарю за внимание.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Yashazz 4083 02.11.20 12:39 Сейчас в теме
Сильно, грамотно, полезно. Отличная публикация, всё чётко, структурированно и технично. Не то, что у меня в кучу навалено...
8. Bukaska 136 02.11.20 17:39 Сейчас в теме
9. Yashazz 4083 02.11.20 18:38 Сейчас в теме
(8) а я никогда не отрицал, что оформление моих поделок - так себе. Я в этом плане всегда преклонялся перед дизайном Пермитина, например.
2. malikov_pro 733 02.11.20 12:52 Сейчас в теме
(1) От Вас зачин, от меня уточнение.

По описанию, напишите какие URL нужно детализировать для дальнейшего использования (например для тестирования локального аналога), в продолжении того что сейчас активно используете эту подсистему, будет возможность - уточню документацию.
По идее можно написать клиент по построению графа обновлений.

В целом по теме можем продолжить, разбирайте внутренний механизм, после буду уточнять отрисосывая его в UML.
3. Yashazz 4083 02.11.20 13:13 Сейчас в теме
(2) Под графом понимается кратчайший сценарий между релизами обновлений?
5. VVi3ard 50 02.11.20 16:32 Сейчас в теме
(2) Интересная статья, одно время описали наши сервисы в OpenApi 2.0 и в постмане, причём делали максимально подробно с заполнением секции shema, с использованием ссылок.
Начали писать тесты, но жестко обломались т.к. не понятно было как проверять главное для нас: Структуру ответа.

(в нашем случае структура JSON объектов очень сложная и многоуровневая и чаще всего ломается или сама структура, или появляются значения не подходящие под фильтры, чаще всего NULL вместо строки/числа/даты)

Т.е. сделать запрос/получить ответ и проверить поля ответа/статус/время это всё без проблем множество уроков, описаний, и даже в самом постмане много шаблонов. Я поискал, поспрашивал на форумах, даже писал вопрос разработчикам и никто не смог мне сказать как использовать shema из спецификации для валидации ответа. В самом постмане есть метод, но он требует на вход текст схемы, т.е. ему нельзя сказать, возьми из исходного описания схему и сверь по ней.

А у вас в статье есть "При клике на "issues" [8] можно увидеть расхождения относительно описания API." и это крайне интересно, получается это всегда было.

Я же правильно понимаю что это как раз валидация ответа по схеме которая описана в спецификации?
6. malikov_pro 733 02.11.20 16:45 Сейчас в теме
(5)
Понимаю что это как раз валидация ответа по схеме которая описана в спецификации?

Понимаете правильно.
Описание объекта в OpenAPI архитектурно состыковано с описанием JSON Schema.

https://postman-quick-reference-guide.readthedocs.io/en/latest/schema-validation.html
Пример из Postman
const schema = {
    "type": "object",
    "properties": {
        "code": { "type": "string" }
    }
};


из YAML
    InfoResonse:
      type: object
      properties:
        errorName:
          description: ИмяОшибки
          type: string


Не все гладко, но работать можно
https://apisyouwonthate.com/blog/openapi-v31-and-json-schema-2019-09

Конвертер, который нашелся с ходу
https://github.com/mikunn/openapi-schema-to-json-schema

Можно переиспользовать в 1С на уровне валидатора
https://infostart.ru/public/1265429/
10. VVi3ard 50 03.11.20 10:24 Сейчас в теме
(6)
В вашем примере как раз то что я находил, использование:
const schema = {
"type": "object"
};
And here is the test:

pm.test("Validate schema", () => {
pm.response.to.have.jsonSchema(schema);
});

Тут нужно описать схему, я же не понимаю почему я должен отдельно еще раз её описывать если я уже описал её в спецификации. Это хорошо когда схема такая простая как в примере а если там 40 полей, и часть из них описана через ссылки?

т.е. поменялась у нас схема, мы идем правим спецификацию и отдельно правим все тесты которые на неё завязаны.

То что вы описали это валидация по схеме но не по схеме из спецификации а по схеме определённой в тесте.

Я же подумал что postman научился приимпорте спецификации импортировать так же и схемы и автоматически их использовать при выполнении запроса (анализе результата запроса)..
4. malikov_pro 733 02.11.20 13:28 Сейчас в теме
(3) В целом граф, дальше пользуйте как хотите, до этого в https://infostart.ru/public/633646/ данные брали со страницы ИТС, сейчас можно из public API взять.
По нахождению кратчайшего втречал в статье по разузлованию, но комментарий "Всегда ли кратчайший путь лучший? Я бы добавил отдельную опцию, чтобы переходы типа 2.0.*.* -> 2.1.*.* происходили с последнего из 2.0.*.*, например." актуален.
12. Ibrogim 1209 07.09.21 09:10 Сейчас в теме
(4) Делал в своё время (https://infostart.ru/1c/articles/385143/) поиск кратчайшего пути обновлений снизу и с верху, на сайте регулируется чекбоксом "Прямой/обратный обход релизов"
Оказалось, что результат может отличаться )
7. malikov_pro 733 02.11.20 16:51 Сейчас в теме
(5) При использовании RAML в https://atom.io/packages/api-workbench у меня валидатор схемы ругается на несоответствие паттерну строки значения в примере к структуре. С точки зрения модели оно нормально связано, с точки зрения инструментов не все гладко.
11. malikov_pro 733 03.11.20 11:35 Сейчас в теме
(10) Проблема понятна. Нужно учитывать что описание API не равняется тест-плану.

"т.е. поменялась у нас схема, мы идем правим спецификацию и отдельно правим все тесты которые на неё завязаны."
Если рассматриваем аспект проверки ответов на соответствие схеме то при применении Postman
1. Нет указания в коллекции ссылки к API, только обратная связь, проверяется после выполнения запроса не попадает в лог.
2. Схемы в OpenAPI как объекты в Postman это часть кода плана тестирования поэтому нужно их переносить скриптом, который
* разбирает коллекцию (JSON файл), выделяет из нее блоки,
* получает полные объекты из схемы, пример давал
* заполняет / дополняет код в элементе коллекции

Думаю более продвинутые инструменты для тестирования от описания есть, нужно дополнительно разбираться со списком https://openapi.tools/
Оставьте свое сообщение

См. также

Обмен данными. Консистентность vs Многопоточность Промо

Интеграция v8 1cv8.cf Бесплатно (free)

Рассмотрим теоретические основы обмена данными. Какие бывают обмены, какие гарантии при этом даются, зачем идти на компромиссы и что при этом может пойти не так. Есть ли идеальная схема?

03.09.2019    15061    m-rv    2    

Готовые модули для работы с Telegram

Интеграция v8 1cv8.cf Бесплатно (free)

Готовые модули для отправки сообщений и файлов с логами в Телеграм.

05.10.2021    1531    M_A_D    3    

WEB/HTTP сервисы. Базовые отличия и применение на практике

Практика программирования WEB v8 Бесплатно (free)

Рассказываем о WEB и HTTP сервисах, их практическом применении, о шишках, которые мы набили, и о выводах, которые сделали. Спойлер: тех, кто дочитает статью до конца, ждет бонус от автора.

04.10.2021    3781    Neti    14    

Обмен с HTTP сервисом файлами по формату multipart/form-data

WEB v8 1cv8.cf Россия Бесплатно (free)

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

07.09.2021    2126    ix5s    21    

.Net в 1С. На примере использования HTTPClient, AngleSharp. Удобный парсинг сайтов с помощью библиотеки AngleSharp, в том числе с авторизацией аля JQuery с использованием CSS селекторов. Динамическая компиляция Промо

Практика программирования WEB v7.7 v8 Бесплатно (free)

Часто приходится парсить сайты, в том числе с авторизацией, перескакивая со страницы на страницу по ссылкам. Тот, кто занимался вэб программированием, знает, как удобно использовать JQuery и CSS селекторы. На .Net написана очень удобная библиотека AngleSharp. Я покажу, как с её помощью можно значительно облегчить себе труд.

10.03.2016    58361    Serginio    33    

Разработка гибридного web-приложения на 1С, возможности и ограничения

WEB v8 Бесплатно (free)

Все чаще разработчики склоняются к использованию 1C в качестве бэкенда при разработке веб-приложений. Но благодаря встраиванию веб-клиента 1С в сайт можно получить еще больше готовой функциональности. О том, как реализовать гибридное приложение за счет связки 1С с другими веб-технологиями, рассказал разработчик компании Neti Эльдар Мингалиев.

06.09.2021    2404    Бэнни    11    

Работа с WEB-сервисами под HTTPS на примере прямого обмена между базами (1С – 1С) 

Обмен данными 1С WEB v8 Россия Бесплатно (free)

Использование веб-сервисов 1С при обмене 1С – 1С позволяет быстро передавать достаточно большие объемы данных из базы-источника в базу-приемник в объектах языка 1С. Данный метод обмена может применяться при бесшовной интеграции между двумя базами 1С, но требует определенной серверной инфраструктуры (установленного и настроенного WEB-сервера).

03.09.2021    5637    UltraUnion2005    8    

Взаимодействие с api Честный знак (Молочная продукция)

WEB Практика программирования Универсальные функции v8 1cv8.cf Бесплатно (free)

Обзор основных примеров взаимодействия с Честным знаком по api для нетиповых конфигураций.

30.08.2021    1421    user5300    39    

Регулярные выражения без внешних компонент? Легко! Промо

Практика программирования Обмен через XML v8 Бесплатно (free)

Сложный способ организовать проверку строки с помощью регулярного выражения в 1С. При этом ни одна внешняя компонента не пострадала. Ну и от платформы (Linux, MustDie) - не зависит.

04.03.2016    70133    starik-2005    108    

Встраивание форм 1С на страницы сайта

WEB v8 1cv8.cf Бесплатно (free)

В платформе 8.3.16 появилась возможность выводить на страницах сайта информацию из веб-клиента 1С так, что пользователь даже не заметит, что работает с платформой. Руководитель компании Айтон Михаил Пинягин на онлайн-митапе «Web-клиенты для 1С» рассказал о том, какие особенности нужно учесть при настройке встраиваемого веб-клиента, и какие возможности он дает.

27.08.2021    2343    mikepin    5    

Гарри Поттер и подкапотное пространство веб-клиента

WEB v8 Бесплатно (free)

При разработке сайтов, интегрированных с 1С через HTTP-сервисы, приходится бороться с кодировками, искать производительные интерфейсные решения и задумываться над безопасностью. В ходе онлайн-митапа «Web-клиенты для 1С» Юрий Лазаренко показал на практике, как работает магия самодельного веб-клиента и как решать проблемы, возникающие при интеграции.

20.08.2021    2712    TitanLuchs    19    

Умная маршрутизация: кейс интеграции с 1С (часть 1)

WEB v8 Бесплатно (free)

Как мы решали проблемы с доставкой в нашем интернет-магазине, внедрили новый бизнес-процесс за 3 месяца и научились меньшим количеством машин привозить больше заказов клиентам.

18.08.2021    4076    greencactus    36    

Online телефонный справочник из 1С: Зарплата и управление персоналом Промо

WEB Управление персоналом (HRM) Управление персоналом (HRM) v8 ЗУП3.x Россия Бесплатно (free)

В интернете представлено много реализаций online телефонных справочников организаций. Есть справочники, которые использует для хранения информации базу Active Directory (LDAP), есть справочники, которые реализованы с использованием СУБД (например, MySQL). Но я не нашел справочника, который использует информацию из базы 1С. Далее я рассмотрю данную разработку.

10.03.2017    27288    ruha    21    

Телеграм-бот как инструмент

WEB v8 1cv8.cf Бесплатно (free)

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

21.07.2021    3902    M_A_D    19    

Описание формата 1С JDTO (JSON data transfer object)

Интеграция Перенос данных из 1C8 в 1C8 v8 Бесплатно (free)

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

16.07.2021    6068    zhichkin    32    

Настраиваем авторизацию пользователей 1С через Okta

Интеграция v8 Бесплатно (free)

Чем больше в компании различных конфигураций и сервисов, тем актуальнее становится проблема единой системы авторизации single Sign-On. Его лидером практически безоговорочно считается Okta. Но на просторах интернета очень мало информации про интеграцию 1С с Okta через протокол OpenID Connect. Что ж, настало время восполнить недостающие пробелы и перевернуть эту печальную страницу в вашей истории

30.04.2021    3665    ripreal1    14    

SMS рассылка из 1С Промо

SMS рассылки v8 1cv8.cf Бесплатно (free)

Четыре простых способа отправить SMS из 1С

19.11.2014    75591    sdn-1    27    

ВИДы на жительство. Использование внешних источников данных в прикладных задачах

Внешние источники данных v8 Бесплатно (free)

На Infostart Meetup Novosibirsk выступил ведущий разработчик МКК «Ваш Инвестор» Вадим Фоминых. Он на практических примерах показал коллегам, как его команда использует внешние источники данных в прикладных задачах, призвал не отказываться от этого инструмента и объяснил – почему.

19.04.2021    1912    Shmell    4    

Правила обмена больше не нужны

Внешние источники данных Обмен через XML Перенос данных из 1C8 в 1C8 Распределенная БД (УРИБ, УРБД) WEB v8 Бесплатно (free)

Есть несколько общепринятых подходов к написанию обмена между 1С-системами, каждый из которых упирается в длительное изучение технологии, мучительную отладку правил конвертации и написание большого количества сервисного кода, в котором потом тяжело разобраться. О принципах работы универсального фреймворка liteExchange, который реализует быстрые обмены между 1С и внешними системами, и берет на себя всю техническую обвязку по стандартному преобразованию данных, на INFOSTART MEETUP Saint Petersburg.Online рассказал Николай Крылов.

17.03.2021    11733    Nikola23    39    

R.I.P. РИБ

Обмен через XML Распределенная БД (УРИБ, УРБД) v8 1cv8.cf Бесплатно (free)

РИБ, спасибо и до свидания.

19.02.2021    8617    1c-intelligence    132    

Загрузка из EXCEL в 1С. Чтение файла XLSX средствами 1С. ПостроительDOM Промо

Универсальные обработки Загрузка и выгрузка в Excel Обмен через XML v8 1cv8.cf Бесплатно (free)

ПРАКТИЧЕСКОЕ ПОСОБИЕ РАЗРАБОТЧИКА: Метод "NativeXLSX" (ПостроительDOM). Обрабатываются данные EXCEL типов: "Строка", "Число", "Дата" ("Время"), "Булево", "Процент", а также изображения.

11.09.2014    79068    StepByStep    27    

Интеграция с API WB (Wildberries). Создание карточки товара (спецификации)

WEB v8 1cv8.cf ИТ-компания Россия Бесплатно (free)

Опыт интеграции с API WB (Wildberries), опыт создания карточки товара, получение токенов API WB.

18.01.2021    28553    jenyavp    56    

DaJet Exchange: обмен данными с 1С (часть 1)

Внешние источники данных v8 Бесплатно (free)

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

11.01.2021    3961    zhichkin    14    

HTML редактор/editor (Wysiwyg) для WebKit 1С (CMS, B2B), альтернатива TinyMCE и стандартному ФорматированныйДокумент

WEB Интеграция v8 v8::УФ 1cv8.cf Бесплатно (free)

Suneditor - отличная замена HTML редактору TinyMCE (бесплатному), в публикации с открытым кодом подключим его в 1С с WebKit, скачать HTMLeditor обработку можно бесплатно.

28.12.2020    3911    SizovE    25    

Отладка правил обмена 7.7, 8 Промо

Перенос данных из 1С7.7 в 1C8.X Обмен через XML Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

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

29.10.2013    52603    pyrkin_vanya    70    

Сказ о том, как в одной крупной компании документооборот внедряли, или проблемы типовых обменов между КА и ДО

Интеграция Перенос данных из 1C8 в 1C8 Документооборот и делопроизводство v8 ДО КА2 Бесплатно (free)

Приветствую всех. Сегодня пойдет речь о том, как на одной крупной компании внедряли 1С:Документооборот 2.1 в связке с КА 2.4. Вроде бы системы типовые, мы практически не добавляли ничего в них, но проблем было столько, что я решил изложить их в статье. Может, кому-то пригодится это в дальнейшем, и не придется тратить кучу времени на поиск решений.

10.11.2020    7290    maks_20    27    

Отладка модуля ДиадокПро

WEB v8 1cv8.cf Бесплатно (free)

В обработке ДиадокПро все дополнительные модули встроены во внешние обработки, которые хранятся в макетах. Это усложняет процесс самостоятельной интеграции, так как теряется возможность попасть в них в режиме отладки. Но не всё так страшно, поэтому ниже инструкция)

30.10.2020    4406    Максим-777    18    

Обмен с сайтом посредством Post-запроса, json

WEB v8 1cv8.cf Бесплатно (free)

Задача - передавать на сайт объекты с наименованием и уникальным идентификатором (УИ), которые изменяются в 1С. Также нужно сохранять историю отправленных пакетов.

29.10.2020    5833    John_d    26    

Кэширование COM-соединения. Три способа Промо

Практика программирования Перенос данных из 1С7.7 в 1C8.X Внешние источники данных WEB v8 Россия Бесплатно (free)

Статья о трех способах кэширования COM-соединения в 1С:Предприятии 8.x.

11.04.2013    43035    YPermitin    42    

Отладка http сервиса

WEB v8 Бесплатно (free)

При разработке http сервиса возникает ситуация, а как протестировать http сервис? Создали мы сервис, настроили шаблоны, передали, если нужно параметры, открываем браузер заполняем строку подключения и БАХ, ошибка. Что делать?

23.09.2020    5303    hpi    12    

Учимся создавать http сервисы (часть вторая). Передача параметра в http сервис

WEB v8 1cv8.cf Бесплатно (free)

Пошаговое руководство по созданию http-сервиса (часть вторая). Передача параметра в http сервис.

22.09.2020    8578    hpi    7    

Формирование HTTP запроса формата multipart/form-data с двоичными данными, используя ПотокВПамяти

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант формирования запроса

11.09.2020    5544    malikov_pro    15    

Обмен по расписанию типовыми средствами. Промо

Распределенная БД (УРИБ, УРБД) Обмен через XML Перенос данных из 1C8 в 1C8 v8 1cv8.cf Россия Бесплатно (free)

Часто перед интеграторами стоит задача организовать автообмен (по расписанию или при наступлении какого-либо события) данными между различными конфигурациями. В этой статье я попробую изложить простую инструкцию, как это можно сделать средствами, заложенными в типовые конфигурации 1С (ЗУП, БП, УПП и т.д.). Для обмена используется подсистема "Обмен данными" из БСП

20.06.2012    105471    kser87    52    

Интеграция с Трелло. Готовый код

Обмен данными 1С Интеграция Agile (XP, SCRUM, Канбан) v8 Бесплатно (free)

Код основных действий, интеграция с API Трелло.

19.08.2020    4520    Yashazz    14    

Загрузка или обновление файла на яндекс диске через rest-api

Практика программирования Файловые протоколы обмена, FTP WEB v8 Бесплатно (free)

Коллеги, в данной публикации я хочу поделиться кодом, с помощью которого можно загрузить файл на яндекс диск или обновить существующий.

12.08.2020    3893    pavelpribytkin96    11    

Самый простой парсинг и обработка веб-страниц в 1С

WEB Универсальные функции v8 1cv8.cf Бесплатно (free)

Рассмотрим самый простой парсинг веб-страниц средствами платформы 1С и еще некоторые полезные приемы работы с веб-страницами.

07.08.2020    12685    YPermitin    23    

Заготовка для загрузки файлов по ftp Промо

WEB Перенос данных из 1C8 в 1C8 v8 1cv8.cf Бесплатно (free)

3 процедуры и 1 макет

03.06.2013    31255    anig99    6    

Загрузка или обновление файла на гугл диске

Практика программирования Файловые протоколы обмена, FTP WEB v8 1cv8.cf Бесплатно (free)

Коллеги, в данной публикации я хочу поделиться кодом, с помощью которого можно загрузить файл на гугл диск или обновить существующий.

06.08.2020    2971    pavelpribytkin96    7    

Ограничение доступа к HTTP публикациям 1С сервера используя NGINX

WEB v8 1cv8.cf Бесплатно (free)

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

02.07.2020    9111    malikov_pro    9    

Работа с AliExpress через API

WEB v8 Бесплатно (free)

В публикации опишу подход работы с API AliExpress и примеры кода.

23.06.2020    9998    malikov_pro    36    

Перенос данных из учетных программ Парус в конфигурации 1С Промо

Внешние источники данных v7.7 v8 БП2.0 ЗУП2.5 ЗКБУ БГУ 1С7:Бух 1С7:ЗиК 1С7:ББУ Россия БУ Госбюджет Бесплатно (free)

Статья посвящена анализу процессов переноса данных из учетных программ Парус в конфигурации 1С.

05.11.2012    53787    sklowsky    16    

Маркировка лекарственных препаратов. Часть первая "Быстрая интеграция"

Интеграция Розничная торговля v8 1cv8.cf Фармацевтика, аптеки Россия УУ Бесплатно (free)

Данный цикл будет посвящен маркировке лекарственных препаратов (далее ЛП), нюансам работы с "1С: Библиотека интеграции с МДЛП", доступной для скачивания на сайте ИТС, методиками работы с регистраторами выбытия, и проблемам, с которыми пришлось столкнуться при интеграции. Эта статья будет представлять из себя краткую инструкцию, что делать, когда маркировка уже близко и необходимо быстро внедрить ее. Надеюсь, она станет подспорьем в данной задаче. Будут приведены рекомендации, как в короткие сроки с минимально необходимой функциональностью и минимумом чтения документации произвести интеграцию библиотеки МДЛП и выполнить начальные настройки. Также будут даны рекомендации по быстрым, но важным, на мой взгляд, доработкам.

23.06.2020    9926    IssakN    38    

Диадок. Подключаемый модуль. Отладка

Интеграция Внешние источники данных v8 1cv8.cf Бесплатно (free)

Небольшой пример, как работать с подключаемым модулем Диадок (для изменения УПД перед выгрузкой на сайт Диадок.). Отладка подключаемого модуля, если не смогли подключить стандартную отладку.

17.06.2020    13320    John_d    17    

Конвертация данных 2. Использование подключаемых обработок в правилах обмена. Конвертация дерева значений

Обмен данными 1С Обмен через XML Перенос данных из 1C8 в 1C8 v8 КД Бесплатно (free)

Разработка правил обмена с использованием подключаемых обработок. В качестве примера рассмотрена реальная задача конвертации дерева значений.

15.06.2020    5850    Drivingblind    9    

Быстрый способ отправки SMS из 1С Промо

SMS рассылки v7.7 v8 1cv8.cf 1cv7.md Бесплатно (free)

Задача: Максимально быстро организовать рассылку SMS сообщений из 1С.

25.07.2012    30199    bestuzhev    31    

"Неверный реквизит платежного документа КодНазПлатежа". Исправляем обработку КлиентБанк

Обмен с банком v8 1cv8.cf Россия Бесплатно (free)

C 01.06.2020 банки требуют указывать реквизит КодНазПлатежа (код вида дохода) в выписках. При этом его заполнение необязательно. Соответственно в старых версиях обработок "Клиент банк" не загружаются файлы с плат.поручениями.

01.06.2020    37253    d.zhukov    67    

1C# – 1С моей мечты

Интеграция v8 Бесплатно (free)

Встроенных в платформу 1С возможностей не всегда хватает для построения сложных интеграционных схем между различными 1С и не-1С-решениями на базе MS SQL Server. Как сделать интеграцию между SQL-базами более гибкой с помощью платформы 1С# на конференции Infostart Event 2019 Inception рассказал Дмитрий Жичкин.

01.06.2020    13134    zhichkin    36    

История создания успешной системы чат-ботов на 1С

WEB v8 Бесплатно (free)

Использование чат-ботов в мессенджерах позволяет автоматизировать многие сложные бизнес-процессы путем диалога с системой через виртуального собеседника. О том, как создать универсальную систему ботов с бэкендом на 1С, работающую в Telegram, Viber и Facebook Messenger одновременно, на конференции Infostart Event 2019 Inception рассказал программист-фрилансер Константин Гейнрих.

21.05.2020    9913    CyberCerber    15    

Альтернативные способы работы с XML. Часть 2: Введение в xPath или запросы к XML Промо

Обмен через XML Математика и алгоритмы v8 1cv8.cf Бесплатно (free)

В предыдущей статье "Введение в DOM или объектная модель документа" было описано понятие объектной модели документа (DOM), раскрыты плюсы и минусы использования модели при разборе файлов XML, приведено сравнение с построчным последовательным разбором. Были представлены варианты выборки данных с помощью объекта 1С ДокументDOM. Теперь настало время познакомить читателей с самым, на мой взгляд, интересным способом извлечения данных из XML - при помощи языка запросов xPath.

09.08.2012    43218    1cspecialist    13    

Парсинг html страниц с выводом информации через JavaScript с использованием Selenium

WEB v8 1cv8.cf Бесплатно (free)

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

20.05.2020    7992    platonov.e    25    

Интеграция Camunda BPM и 1С

WEB Интеграция v8 Бесплатно (free)

Быстрый старт. Только практические примеры. Установка, запуск и публикация бизнес-процесса на сервере Camunda BPM. Управление бизнес-процессами из 1С при помощи Camunda REST API.

12.05.2020    6441    zhichkin    31    

Как мы загружаем данные в "Центр управления кассами Магнита"

Внешние источники данных Интеграция v8 1cv8.cf Бесплатно (free)

Статья о том, как мы делали механизм загрузки больших объемов данных в "Центр управления кассами Магнита"

08.05.2020    5824    chernenko_vv    26    

Синхронизация БИТ:СКУД 8 с Parsec.Net 2.5

Интеграция Внешние источники данных v8 1cv8.cf Бесплатно (free)

Настройка синхронизации БИТ:СКУД 8 с Parsec.Net.2.5, выгрузка данных из внешней системы контроля доступа.

04.05.2020    4897    RPGrigorev    0