GetProductChangesList v2.0

Материал из Справочная система Россельхознадзора
Перейти к навигации Перейти к поиску
Версия для печати больше не поддерживается и может содержать ошибки обработки. Обновите закладки браузера и используйте вместо этого функцию печати браузера по умолчанию.

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

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

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

  • параметры возвращаемого списка;
  • интервал дат, за который необходимо получить изменения.

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

  • список продукции, изменённый за заданный период.

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

# Название XML-элемента Тип Обязат. Описание (нажмите [...] для отображения дополнительного описания)
001 <ws:getProductChangeListRequest>
002 ···<bs:listOptions> bs:ListOptions [0..1] Параметры запрашиваемого списка.
003 ······<bs:count>10</bs:count> xs:nonNegativeInteger [0..1]

Максимальное запрашиваемое количество объектов в списке.

  • По умолчанию значение 100;
  • Максимально возможное значение 1000.
004 ······<bs:offset>2</bs:offset> xs:nonNegativeInteger [0..1]

Номер элемента, по которому осуществляется смещение первого элемента списка.

  • По умолчанию значение 0.
005 ···</bs:listOptions>
006 ···<bs:updateDateInterval> bs:DataInterval [1..1]

Интервал времени обновления.

  • В список попадают все записи, дата обновлений которых попадает в указанный интервал.
007 ······<bs:beginDate>2017-07-07T00:00:00</bs:beginDate> xs:dateTime [1..1] Начало временного интервала.
008 ······<bs:endDate>2017-07-25T00:00:00</bs:endDate> xs:dateTime [0..1] Конец временного интервала.
009 ···</bs:updateDateInterval>
010 </ws:getProductChangeListRequest>

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

# Название XML-элемента Тип Обязат. Описание (нажмите [...] для отображения дополнительного описания)
001 <ws:getProductChangeListResponse>
002 ···<dt:productList total="2" offset="0" count="2"> dt:ProductList [1..1]

Продукция.

  • второй уровень иерархического справочника продукции ИС Меркурий
003 ······<dt:product> dt:Product [0..*] Идентификатор версии продукции.
004 ·········<bs:uuid>UUID</bs:uuid> bs:UUID [1..1] Глобальный идентификатор продукции.
005 ·········<bs:guid>GUID</bs:guid> bs:UUID [1..1]

Описывает, является ли запись активной.

  • true - запись активна;
  • false - запись не активна.
006 ·········<bs:active>true</bs:active> xs:boolean [1..1]

Описывает, является ли версия записи последней.

  • true - да;
  • false - нет.
007 ·········<bs:last>true</bs:last> xs:boolean [1..1] Статус версии записи.
008 ·········<bs:status>100</bs:status> bs:VersionStatus [1..1] Дата создания записи.
009 ·········<bs:createDate>2017-07-07T12:00:00</bs:createDate> xs:DateTime [1..1] Дата изменения записи.
010 ·········<bs:updateDate>2017-07-07T12:00:00</bs:updateDate> xs:DateTime [1..1] Идентификатор предыдущей версии записи.
011 ·········<bs:previous>UUID</bs:previous> bs:UUID [0..1] Идентификатор следующей версии записи.
012 ·········<bs:next>UUID</bs:next> bs:UUID [0..1] Название продукции.
013 ·········<dt:name>готовые мясные продукты</dt:name> bs:String255 [1..1] Код ТН ВЭД продукции.
014 ·········<dt:code>0210, 1601, 1602</dt:code> bs:String255 [1..1]

Тип продукции.

  • первый уровень иерархического справочника продукции ИС Меркурий
015 ·········<dt:productType>5</dt:productType> dt:ProductType [1..1]
016 ······</dt:product>
017 ···</dt:productList>
018 </ws:getProductChangeListResponse>

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

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

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

Запрос на получение данных о трех первых изменениях за период с 09.01.2017 по текущий день без смещения.

<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:getProductChangesListRequest>
         <bs:listOptions>
            <bs:count>3</bs:count>
            <bs:offset>0</bs:offset>
         </bs:listOptions>
         <bs:updateDateInterval>
            <bs:beginDate>2017-01-09T00:00:00</bs:beginDate>
         </bs:updateDateInterval>
      </ws:getProductChangesListRequest>
   </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:getProductChangesListResponse 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:productList count="3" total="24" offset="0">
            <dt:product>
               <bs:uuid>2ae3bb0b-c9c9-69bd-e0c0-d876cbb5ba01</bs:uuid>
               <bs:guid>1bdc8c2c-ee40-593d-3bc8-e1b00b484264</bs:guid>
               <bs:active>false</bs:active>
               <bs:last>false</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2009-07-16T10:02:27+04:00</bs:createDate>
               <bs:updateDate>2017-04-17T16:37:24+03:00</bs:updateDate>
               <bs:next>b19e1829-299e-4269-8b84-8f2b7b5ff4e8</bs:next>
               <dt:name>субпродукты, кровь и боенские отходы непищевые кормовые</dt:name>
               <dt:code>1504</dt:code>
               <dt:productType>2</dt:productType>
            </dt:product>
            <dt:product>
               <bs:uuid>111be16b-b268-c093-8be3-f939cb052d77</bs:uuid>
               <bs:guid>46fde18a-f6af-f7b0-de47-044281271112</bs:guid>
               <bs:active>false</bs:active>
               <bs:last>false</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2008-01-01T00:00:00+03:00</bs:createDate>
               <bs:updateDate>2017-04-11T14:53:51+03:00</bs:updateDate>
               <bs:next>b11e92ec-68da-4c93-98b7-496f9e118f2b</bs:next>
               <dt:name>готовая или консервированная рыба; икра осетровых и ее заменители, изготовленные из икринок рыбы</dt:name>
               <dt:code>1604</dt:code>
               <dt:productType>7</dt:productType>
            </dt:product>
            <dt:product>
               <bs:uuid>c43b6edc-c123-4b82-ad25-120b2de88c96</bs:uuid>
               <bs:guid>82e5b09f-2ffd-c43c-0b64-892b3b3d80a8</bs:guid>
               <bs:active>false</bs:active>
               <bs:last>false</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2011-05-23T10:52:47+04:00</bs:createDate>
               <bs:updateDate>2017-03-10T13:33:36+03:00</bs:updateDate>
               <bs:next>6842e496-c008-413d-b6f9-53acfb4802a3</bs:next>
               <dt:name>дезсредства</dt:name>
               <dt:code>3808</dt:code>
               <dt:productType>6</dt:productType>
            </dt:product>
         </dt:productList>
      </v2:getProductChangesListResponse>
   </soap:Body>
</soapenv:Envelope>