GetProductByGuid v2.0

Материал из Справочная система Россельхознадзора
Перейти к навигации Перейти к поиску

Общие сведения

Операция GetProductByGuid предназначена для получения актуальной версии записи продукции (2 уровень справочника) по её глобальному идентификатору (active=true, last=true). Выполнение операции заканчивается либо возвратом объекта продукции, либо ошибкой, в случае если параметры запроса не корректны, если запись по запросу не найдена или произошла иная ошибка выполнения запроса.

Входные данные

  • глобальный уникальный идентификатор продукции.

Выходные данные

  • данные о запрашиваемой продукции.

Спецификация запроса

# Название XML-элемента Тип Обязат. Описание (нажмите [...] для отображения дополнительного описания)
001 <ws:getProductByGuidRequest>
002 ···<bs:guid>GUID</bs:guid> bs:UUID [1..1]

Глобальный идентификатор продукции.

  • второй уровень иерархического справочника продукции ИС Меркурий
003 </ws:getProductByGuidRequest>

Спецификация ответа

# Название XML-элемента Тип Обязат. Описание Пример
1 <ws:getProductByGuidResponse>
2 ···<dt:product> dt:Product [1..1] Продукция
  • второй уровень иерархического справочника продукции ИС Меркурий
3 ······<bs:uuid> bs:UUID [1..1] Идентификатор версии продукции. <bs:uuid>3008afa9-8a88-8586-5f75-08ce43189ac8</bs:uuid>
4 ······<bs:guid> bs:UUID [1..1] Глобальный идентификатор продукции. <bs:guid>362aa885-9b9f-ae95-05d0-f9570f4fbdc6</bs:guid>
5 ······<bs:active> xs:boolean [1..1] Является ли запись активной:
  • true - запись активна;
  • false - запись не активна.
<bs:active>true</bs:active>
6 ······<bs:last> xs:boolean [1..1] Является ли версия записи последней:
  • true - да;
  • false - нет.
<bs:last>true</bs:last>
7 ······<bs:status> bs:VersionStatus [1..1] Статус версии записи. <bs:status>100</bs:status>
8 ······<bs:createDate> xs:DateTime [1..1] Дата создания записи. <bs:createDate>2017-07-07T12:00:00</bs:createDate>
9 ······<bs:updateDate> xs:DateTime [1..1] Дата изменения записи. <bs:updateDate>2017-07-07T12:00:00</bs:updateDate>
10 ······<bs:previous> bs:UUID [0..1] Идентификатор предыдущей версии записи. <bs:previous>c9781d68-8f7d-4fb6-a007-d7a14f0815f6</bs:previous>
11 ······<bs:next> bs:UUID [0..1] Идентификатор следующей версии записи. <bs:next>8aaaac24-8e10-499e-b1a2-cda0bf3f5855</bs:next>
12 ······<dt:name> bs:String255 [1..1] Название продукции. <dt:name>готовые мясные продукты</dt:name>
13 ······<dt:code> bs:String255 [1..1] Код ТН ВЭД продукции. <dt:code>0210, 1601, 1602</dt:code>
14 ······<dt:productType> dt:ProductType [1..1] Тип продукции
  • первый уровень иерархического справочника продукции ИС Меркурий
<dt:productType>5</dt:productType>
15 ···</dt:product>
16 </ws:getProductByGuidResponse>

Описание ошибок

Ошибка Описание
InternalServiceFault Внутренняя ошибка сервиса.
IncorrectRequestFault Некорректный запрос. Происходит в случае, если запрос не соответствует требованиям указанным в xsd, то есть сообщение не проходит валидацию.
EntityNotFoundFault Объект с заданными параметрами не найден в базе.

Пример запроса

Запрос на получение данных о продукции "Готовые мясные продукты".

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://api.vetrf.ru/schema/cdm/registry/ws-definitions/v2" xmlns:bs="http://api.vetrf.ru/schema/cdm/base">
   <soapenv:Header/>
   <soapenv:Body>
      <ws:getProductByGuidRequest>
         <bs:guid>e9fa27c7-c0e0-2f64-308c-c6409de238ae</bs:guid>
      </ws:getProductByGuidRequest>
   </soapenv:Body>
</soapenv:Envelope>


Ответ на запрос.

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Body xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
      <v2:getProductByGuidResponse xmlns:bs="http://api.vetrf.ru/schema/cdm/base" xmlns:dt="http://api.vetrf.ru/schema/cdm/dictionary/v2" xmlns:v2="http://api.vetrf.ru/schema/cdm/registry/ws-definitions/v2">
         <dt:product>
            <bs:uuid>3008afa9-8a88-8586-5f75-08ce43189ac8</bs:uuid>
            <bs:guid>e9fa27c7-c0e0-2f64-308c-c6409de238ae</bs:guid>
            <bs:active>true</bs:active>
            <bs:last>true</bs:last>
            <bs:status>100</bs:status>
            <bs:createDate>2011-05-23T10:35:08+04:00</bs:createDate>
            <bs:updateDate>2011-05-23T10:35:08+04:00</bs:updateDate>
            <dt:name>готовые мясные продукты</dt:name>
            <dt:code>0210, 1601, 1602</dt:code>
            <dt:productType>5</dt:productType>
         </dt:product>
      </v2:getProductByGuidResponse>
   </soap:Body>
</soapenv:Envelope>