Использование механизма Web-сервисов в системе "1С:Предприятие"

28.01.15

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

Web-сервис – это сетевая технология, обеспечивающая межпрограммное взаимодействие (между различными приложениями) на основе веб-стандартов. Web-сервисы дают возможность обратиться с одного приложения к другому и при этом выполнять определенные функции. Прикладное решение «1С:Предприятия 8» может являться: - поставщиком веб-сервисов; - потребителем веб-сервисов, опубликованных другими поставщиками.

    Механизм Web-сервисов системы «1С:Предприятие» основан на использовании одноименных объектов метаданных, т.е. объектов конфигурации из ветви «Web-сервисы».

 

1.      ОБЩИЕ ОПРЕДЕЛЕНИЯ

    Попробуем дать обобщённое определение термину «Web-сервис».

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

    Веб-сервис идентифицируется строкой URI (Uniform Resource Identifier) – унифицированным идентификатором ресурса (это символьная строка, позволяющая идентифицировать какой-либо ресурс).

    Веб-сервис имеет программный интерфейс, представленный в формате WSDL (Web Services Description Language) – язык описания веб-сервисов и доступа к ним, основанный на языке XML (спецификация http://www.w3.org/TR/wsdl). Предназначен для унифицированного представления внешних интерфейсов веб-службы и используется для того, чтобы другая программа знала, что такой «сервис» есть у этой программы (т.е. первая программа на веб сайте выкладывает сведения о своих сервисах именно в формате файла WSDL).

    Другие системы взаимодействуют с веб-сервисом путем обмена сообщениями протокола SOAP (Simple Object Access Protocol – простой протокол доступа к объектам) – протокол обмена структурированными сообщениями в распределенной вычислительной среде (спецификация http://www.w3.org/TR/soap). Как любой текстовый протокол, SOAP может использоваться с любым протоколом прикладного уровня: SMTP, FTP, HTTPS и другие, но чаще всего SOAP используется поверх HTTP.

 

Рисунок 1. Концепция веб-сервиса.

    SOAP используется для обмена произвольными сообщениями в формате XML и удалённого вызова процедур (RPC).

    Таким образом, между веб-сервисом и приложением осуществляется обмен XML-документами, оформленными в виде сообщений. Стандарты веб-сервисов определяют:

    -  формат сообщений, интерфейс, которому передается сообщение;

    -  правила привязки содержания сообщения к реализующему сервис приложению и обратно;

    -  механизмы публикации и поиска интерфейсов.

Самый простой и очевидный пример применения web-сервисов – получение справочных данных из публичных сервисов, доступных в Интернете. Например, Аэрофлот посредством Web-сервиса предоставляет информацию о своих рейсах, Банк России – информацию о курсах валют, ценных бумагах, кредитных организациях – вариантов может быть много.

 

2.      WEB-СЕРВИСЫ В СИСТЕМЕ «1С:ПРЕДПРИЯТИЕ»

    Прикладное решение «1С:Предприятия 8» может являться:

    -   поставщиком веб-сервисов;

    -   потребителем веб-сервисов, опубликованных другими поставщиками.

    В системе «1С:Предприятия 8» Web-сервисы - это один из механизмов платформы, используемых для интеграции с другими информационными системами и приложениями «1С:Предприятия 8» между собой.

    Иными словами система «1С:Предприятие» может экспортировать свою функциональность через Web-сервисы. Их определения задаются в дереве конфигурации и становятся доступны произвольным информационным системам благодаря публикации их на веб-сервере.

    Механизм Web-сервисов в системе «1С:Предприятие» является средством поддержки сервисно-ориентированной архитектуры (Service-Oriented Architecture, SOA) – означает, что программы для обмена данными друг с другом используют «сервисы».

    Для того чтобы функциональность системы «1С:Предприятие» могла быть доступна внешним потребителям Web-сервисов, нужно выполнить следующие действия:

    -  создать в конфигурации необходимое количество Web-сервисов;

    -  опубликовать Web-сервисы с помощью специального инструмента конфигуратора.

    Создание Web-сервиса заключается:

    -  в добавлении в дерево метаданных объекта конфигурации Web-сервис;

    -  описании операций, которые может выполнять данный Web-сервис;

    -   описании параметров операций.

    Объект конфигурации Web-сервис содержит модуль, в котором создаются процедуры на встроенном языке, выполняемые при вызове тех или иных операций Web-сервиса. Типы параметров операций Web-сервиса описываются с помощью типов XDTO и могут представлять собой либо значения XDTO, либо объекты XDTO.

    Вызов Web-сервиса происходит следующим образом:

  - из пула соединений выбирается подходящее соединение с информационной базой; при отсутствии необходимого соединения соединение создается;

    -  создается новый сеанс;

    -  выполняется вызов затребованного метода Web-сервиса.

Механизм Web-сервисов, реализованный в системе «1С:Предприятие», поддерживает следующие стандарты:

    -  SOAP 1.1;

    -  SOAP 1.2;

    -  WSDL 1.1;

    -  WS-I Basic Profile 1.1;

    -  HTTP 1.1;

    -  SSL 3.0/TLS 1.0.

 

3.      ИЗУЧЕНИЕ WEB-СЕРВИСОВ В СИСТЕМЕ «1С:ПРЕДПРИЯТИЕ»

    Изучать возможности Web-сервисов в системе «1С:Предприятие» предлагаю по следующей схеме:

  1. Ознакомиться и проанализировать «Руководство разработчика «1С:Предприятие 8», глава 16 «Механизм XDTO» и глава 17 «Механизмы интернет-сервисов».
  2. Установить и изучить функционал демонстрационной конфигурация «Web-сервисы» (http://its.1c.ru/ «Главная → Разработка и администрирование →  Методическая поддержка для разработчиков и администраторов → Демонстрационные конфигурации → Web-сервисы»
  3. Попробовать реализовать свой Web-сервис в системе «1С:Предприятие».

 

Источники:

  1. http://its.1c.ru
  2. http://www.4stud.info/networking/web-services.html
  3. http://1с-обмен.рф/index.php/exchange-website-1c/integration-with-web-service
  4. http://citforum.ru/book/xml-wsdl/otryvok.shtml

Продолжение статьи Практическое применение механизма  WEB-сервисов в системе «1С:Предприятие»

axiomlab Лаборатория Аксиом web-сервисы

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    17794    19    22    

17

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

5040 руб.

04.05.2021    19878    13    17    

17

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    14432    42    8    

18

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Платные (руб)

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

24000 руб.

27.09.2024    1190    1    0    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. vano-ekt 124 28.01.15 13:19 Сейчас в теме
2. DimKirov 29.01.15 12:25 Сейчас в теме
Тема интересная, но изложенный материал из разряда общих знаний.
Для практического применения не хватает примера реализации или советов по использованию.
3. SMART1C 774 29.01.15 13:58 Сейчас в теме
(2) DimKirov, статья по практическому применению Web-сервисов в системе 1С сейчас находится на стадии разработки. В течении одной недели (до 04/02/2015 г.) ожидается ее публикация на infostart.ru.
5. tkachenkovu 03.02.15 11:38 Сейчас в теме
(3) AxiomLab, зачем изобретать велосипед когда можно поиском воспользоваться? http://infostart.ru/public/193460/ вот отличная практическая статья на эту тему. Коротко и ясно.
GreenDragon; +1 Ответить
9. Трофимов_Николай 09.01.21 21:02 Сейчас в теме
(5)tkachenkovu-Эта ссылка на удаленную статью .
10. tkachenkovu 15.01.21 03:54 Сейчас в теме
(9)Ты дату комментария видел? 6 лет прошло...
Мысль что со статьей что-то произошло за это время в голову не закралась?)
Ты еще мои комменты в мэйловском моем мире покритикуй xD
4. Makushimo 160 02.02.15 11:12 Сейчас в теме
жду развернутой статьи.
6. Reznik_Nikolay 26.09.17 22:02 Сейчас в теме
Спасибо большое вам за структурированную и понятную информацию!
7. Putinator 30.01.19 20:27 Сейчас в теме
Друзья, вопрос не по теме. При публикации WEB сервисов, автоматом открывается доступ к самой базе через браузер. Как можно закрыть эту форточку? Как запретить работу с базой именно через браузер, но оставить рабочими веб сервисы и работу с базой через 1Сприложение но с доступом к базе через WEBклиент?
8. dock 44 11.02.19 08:49 Сейчас в теме
(7) при публикации веб-сервиса убери галочку с доступом к базе :)
Оставьте свое сообщение