Метаданные расширения в стандартном интерфейсе OData
Метаданные расширения 1С в стандартном интерфейсе OData предоставляют доступ к основным видам объектов конфигураций на платформе «1С:Предприятие». Они включают бизнес-процессы, документы, журналы документов, задачи, константы, планы видов расчёта, планы видов характеристик, планы обмена, планы счетов, регистры бухгалтерии, регистры накопления, регистры расчёта, регистры сведений и справочники.
Стандартный интерфейс OData поддерживает операции чтения, создания, модификации и удаления данных, а также получение списков документов, справочников и записей регистров сведений с возможностью применения фильтров. Доступ к данным осуществляется через URL-адрес, содержащий идентификатор ресурса и параметры запроса, разделённые символами &.
Для аутентификации запроса используется HTTP-заголовок Authorization: Basic с указанием логина/пароля пользователя. HTTP-метод запроса выбирается в зависимости от выполняемой операции, такой как получение данных (GET), создание объекта (POST), обновление данных (PATCH или PUT) или удаление данных (DELETE).
В какой-то момент вам может потребоваться расширить метаданные с помощью расширения. В таком случае я могу показать на примере продукта компании Programming Store — «PROSTO:СКУД», как мы это сделали для конфигурации ЗУП 3.1.
Как расширить метаданные
- Необходимо добавить обработку «Настройка стандартного интерфейса OData» в расширение.
- Добавить функцию «ЗаполнитьМодельДанныхПредоставляемыхДляСтандартногоИнтерфейсаOData» в расширение из модуля менеджера обработки, что обеспечит автоматическое заполнение метаданных расширения при сборе информации о метаданных.
- Из модуля менеджера обработки добавить функцию «ЭтоРазделенныйОбъект» в расширение и внести небольшие изменения, а именно при определении переменной ЭтоРазделенныйОбъектМетаданных принудительно установить значение Истина для метаданных расширения, иначе оно всегда останется ложью и не будет попадать в список метаданных для выгрузки. Я не усложнял и сделал проверку по имени. Если в имени присутствует слово «СКУД», которое используется в префиксе всех объектов метаданных, тогда устанавливаем значение Истина.
Готово, мы видим в составе метаданные из расширения и можно включать их для обмена через Odata. При активации этих метаданных отображается информация о связанных объектах.
Проверка
Проверим доступность, обратимся GET запросом через браузер к РС «События (СКУД)». Запрос будет иметь вид http://localhost/PROSTO/odata/standard.odata/InformationRegister_ПРОСТО_СКУД_СобытияСКД?$format=json&$filter=КартаДоступа eq ‘121236’, где в конце указали, что нам требуется получить информацию в формате JSON и нужно устанавливать отбор по карте доступа.
При обращении необходимо авторизоваться любым пользователем, у которого есть права на выгружаемый объект.
Результат запроса
Полная информация по работе с Odata есть в 1С:ИТС, также я пользовался информацией из статьи из 1С:Фреш «Работа с данными приложения в сервисе 1С:Фреш через стандартный интерфейс OData»
Comments
So empty here ... leave a comment!