-
- Внешняя печатная форма «КС-2»
- Внешняя печатная форма «КС-3»
- Внешняя печатная форма «МХ-1»
- Внешняя печатная форма «МХ-3»
- Загрузка отчета комиссионера из Excel
- Задолженность в документе Реализация товаров и услуг
- Заполнение номеров ГТД
- Ограничение доступа к контрагентам
- Распознавание документов
- Расход материалов
- Резервирование товаров
- Создание внешнего отчета в 1С
- Создание внешней обработки 1С
- УПД со счетом в основании
- УПД со штрихкодом
- Шаблоны сообщений
Расширьте возможности 1С!
-
- Внешняя печатная форма «КС-2»
- Внешняя печатная форма «КС-3»
- Внешняя печатная форма «МХ-1»
- Внешняя печатная форма «МХ-3»
- Загрузка отчета комиссионера из Excel
- Задолженность в документе Реализация товаров и услуг
- Заполнение номеров ГТД
- Ограничение доступа к контрагентам
- Распознавание документов
- Расход материалов
- Резервирование товаров
- Создание внешнего отчета в 1С
- Создание внешней обработки 1С
- УПД со счетом в основании
- УПД со штрихкодом
- Шаблоны сообщений
Взаимодействие с облачными базами по API (json, публикация web и http сервисов)
Редакция Scloud
Scloud.ru
Такой обмен происходит через специальные веб‑интерфейсы, которые называют API (от англ. Application Programming Interface – интерфейс программирования приложений). API позволяет разным системам «общаться» друг с другом через интернет, используя понятные форматы данных (JSON или XML).
В данном случае роль сервиса (поставщика данных) выполняет сама 1С. Это не вы подключаетесь к чужому внешнему сервису, а наоборот – ваша собственная база 1С становится источником, к которому могут обращаться сторонние системы. Вы публикуете свои данные и методы (справочники, документы, обработки) через стандартные протоколы:
- OData – универсальный протокол для работы с данными (чтение, запись, фильтрация)
- Web-сервисы (SOAP) – классический формат обмена, использует XML
- HTTP-сервисы – более современный и простой способ, чаще всего работает с JSON
Все эти сервисы размещаются на вашем облачном сервере, и доступ к ним защищён паролем (сквозная авторизация). Вы сами решаете, какие именно объекты базы открыть для внешнего доступа и какие права дать.
Настройка сквозной авторизации
В рамках облака публикация баз производится автоматически. В рамках этого процесса на сервере публикуются web/http-сервисы из конфигурации и расширений по умолчанию, а также интерфейс OData.
При обращении к базе данных по API потребуется сквозная авторизация. Для её обеспечения следует создать в базе пользователя с логином и паролем, аналогичными учётным данным для основного или дополнительного пользователя. Также следует назначить данному пользователю полные либо необходимые для взаимодействия права.
Ознакомиться с созданием пользователей в 1С вы можете в следующей статье: Создание пользователя в базе 1С
Взаимодействие посредством web-сервисов
По умолчанию будут опубликованы все стандартные web-сервисы конфигурации. В таком режиме публикации к web-сервисам следует обращаться по ALIAS.
Узнать наименования сервисов, доступных для взаимодействия с данной конфигурацией, можно с помощью подключения к базе в режиме Конфигуратора.
Инструкции по подключению к информационной базе в режиме Конфигуратора:
После подключения к базе в режиме Конфигуратора необходимо:
- Открыть конфигурацию
- Раскрыть раздел «Общие»
- Раскрыть подраздел «Web-сервисы» (или «HTTP-сервисы» соответственно)
- Выбрать наименование интересующего сервиса
Проверить правильность выполняемых действий можно следующим образом. В любой конфигурации есть стандартный WS «EnterpriseDataExchange», к нему можно обратиться:
Откройте подраздел «Web-сервисы», выберите «EnterpriseDataExchange» (в примере — «EnterpriseDataExchange_1_0_1_1»), дважды кликните на него для открытия свойств и проверьте во вкладке «Прочее» его ALIAS — EnterpriseDataExchange_1_0_1_1.1cws
Для проверки доступа к веб-сервису необходимо скопировать ссылку на публикацию базы. Это можно сделать в Личном кабинете Scloud в разделе «Базы 1С», нажав на кнопку «Скопировать ссылку на публикацию».
Теперь обращаемся к сервису через браузер, добавив к ссылке на публикацию следующий параметр: /ws/EnterpriseDataExchange_1_0_1_1.1cws?wsdl
Пример:
https://terminal.scloud.ru/01/sc60889_base03/ws/EnterpriseDataExchange_1_0_1_1.1cws?wsdl
При запросе логина и пароля введите учётные данные пользователя, которые использовались для настройки сквозной авторизации.
Если при ответе на запрос отображаются XML-данные (WSDL-описание), значит предварительная настройка произведена корректно.
Взаимодействие посредством HTTP-сервисов
Перед началом обращения к HTTP-сервисам базы данных по API следует предварительно выполнить настройку сквозной авторизации.
Список HTTP-сервисов, предназначенных для взаимодействия с базой данных, доступен в режиме Конфигуратора: раскройте ветку «Общие» и перейдите в подраздел «HTTP-сервисы».
Доступ можно проверить, сделав соответствующий запрос через браузер. Запрос должен иметь следующую форму:
…/hs/имя_http_сервиса/имя_метода/запрос
Пример:
https://terminal.scloud.ru/01/sc60889_base03/hs/myapi/ping (при наличии соответствующего метода)
Правильный синтаксис метода и параметров запроса следует уточнять у разработчика каждого конкретного HTTP-сервиса.
Также необходимо учитывать тот факт, что для работы некоторых сервисов (например, для телефонии) необходима анонимная аутентификация; в рамках облака её допускается включать только для баз, работающих на SQL.
Взаимодействие посредством стандартного интерфейса OData
Перед началом обращения к интерфейсу OData также необходимо настроить сквозную авторизацию. Проверить доступность интерфейса можно обращением к корню OData через браузер:
https://terminal.scloud.ru/01/sc60889_base03/odata/standard.odata/
OData работает. Теперь необходимо обратиться к конкретному объекту базы данных, например, к справочнику «Контрагенты»:
https://terminal.scloud.ru/01/sc60889_base03/odata/standard.odata/Catalog_Контрагенты
Если получен ответ с ошибкой «Сущность не найдена», это означает, что в базе ещё не настроен состав публикуемых объектов OData.
Для настройки работы с OData выполните следующие шаги:
- Войдите в базу в режиме «1С:Предприятие»
- Откройте главное меню (в правом верхнем углу), наведите на пункт «Настройки» и перейдите в «Параметры...»
- Установите флажок «Режим технического специалиста» и нажмите «ОК»
- Повторно откройте главное меню и выберите пункт «Функции для технического специалиста...»
- Раскройте ветку «Обработки» и откройте обработку «Настройка стандартного интерфейса OData»
- В открывшейся обработке перейдите на вкладку «Состав», нажмите кнопку «Загрузить метаданные» и дождитесь окончания загрузки списка объектов. После этого отметьте галочками нужные для экспорта объекты (например, «Контрагенты») и нажмите «Сохранить и закрыть»
Теперь при повторном выполнении запроса:
https://terminal.scloud.ru/01/sc60889_base03/odata/standard.odata/Catalog_Контрагенты
База вернёт заполненный XML/JSON-ответ с данными справочника
Запрос по интерфейсу OData отработан корректно
Получение ссылки на анонимную публикацию
Анонимная публикация нужна для настройки интеграции базы 1С с внешними источниками данных (например, маркетплейсы, телефония), где не требуется интерактивный ввод логина и пароля пользователя.
Для создания анонимной публикации:
- Войдите в Личный кабинет сервиса
- Перейдите в раздел «Базы 1С»
- В карточке нужной базы нажмите плитку «Получить анонимную публикацию»
- В открывшемся «Мастере создания анонимной публикации» заполните обязательные поля:
- Логин — учётные данные от облака
- Пароль — пароль от облака
- Тип сервиса — выберите Web (ws) или HTTP (hs)
- Краткое наименование сервиса (alias) — имя файла публикации/сервиса
- После заполнения данных нажмите «Создать ссылку»
- В появившемся окне скопируйте сгенерированную итоговую ссылку с помощью кнопки копирования справа
Рекомендация: Не передавайте полученную ссылку третьим лицам. При необходимости скомпрометированную ссылку можно отозвать — для этого достаточно сменить пароль от учётной записи в облаке.