Top.Mail.Ru
Full-time, 5/2
Формат: удаленный
Вакансия «1С-программист»

Метаданные расширения в стандартном интерфейсе OData

Метаданные расширения 1С в стандартном интерфейсе OData предоставляют доступ к основным видам объектов конфигураций на платформе «1С:Предприятие». Они включают бизнес-процессы, документы, журналы документов, задачи, константы, планы видов расчёта, планы видов характеристик, планы обмена, планы счетов, регистры бухгалтерии, регистры накопления, регистры расчёта, регистры сведений и справочники.

Стандартный интерфейс OData поддерживает операции чтения, создания, модификации и удаления данных, а также получение списков документов, справочников и записей регистров сведений с возможностью применения фильтров. Доступ к данным осуществляется через URL-адрес, содержащий идентификатор ресурса и параметры запроса, разделённые символами &.

Для аутентификации запроса используется HTTP-заголовок Authorization: Basic с указанием логина/пароля пользователя. HTTP-метод запроса выбирается в зависимости от выполняемой операции, такой как получение данных (GET), создание объекта (POST), обновление данных (PATCH или PUT) или удаление данных (DELETE).

В какой-то момент вам может потребоваться расширить метаданные с помощью расширения. В таком случае я могу показать на примере продукта компании Programming Store — «PROSTO:СКУД», как мы это сделали для конфигурации ЗУП 3.1.

Как расширить метаданные

  • Необходимо добавить обработку «Настройка стандартного интерфейса OData» в расширение.
  • Добавить функцию «ЗаполнитьМодельДанныхПредоставляемыхДляСтандартногоИнтерфейсаOData» в расширение из модуля менеджера обработки, что обеспечит автоматическое заполнение метаданных расширения при сборе информации о метаданных.
  • Из модуля менеджера обработки добавить функцию «ЭтоРазделенныйОбъект» в расширение и внести небольшие изменения, а именно при определении переменной ЭтоРазделенныйОбъектМетаданных принудительно установить значение Истина для метаданных расширения, иначе оно всегда останется ложью и не будет попадать в список метаданных для выгрузки. Я не усложнял и сделал проверку по имени. Если в имени присутствует слово «СКУД», которое используется в префиксе всех объектов метаданных, тогда устанавливаем значение Истина.
Было/Стало

Готово, мы видим в составе метаданные из расширения и можно включать их для обмена через Odata. При активации этих метаданных отображается информация о связанных объектах.

Настройки REST-сервиса

Проверка

Проверим доступность, обратимся 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!

Добавить комментарий

Sidebar