GetSubProductChangesList v2.0

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

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

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

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

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

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

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

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

# Название XML-элемента Тип Обязат. Описание (нажмите [...] для отображения дополнительного описания)
001 <ws:getSubProductChangeListRequest>
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:getSubProductChangeListRequest>

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

# Название XML-элемента Тип Обязат. Описание Пример
1 <ws:getSubProductChangesListResponse>
2 ···<dt:subProductList count="23" total="23" offset="0"> dt:SubProductList [1..1] Список видов продукции
  • total - всего записей;
  • offset - смещение относительно первого элемента;
  • count - количество выводимых записей.
3 ······<dt:subProduct> dt:SubProduct [0..*] Вид продукции
  • третий уровень иерархического справочника продукции ИС Меркурий
4 ·········<bs:uuid> bs:UUID [1..1] Идентификатор версии вида продукции. <bs:uuid>d9078e32-353c-eb56-3839-9bc09e79bdf5</bs:uuid>
5 ·········<bs:guid> bs:UUID [1..1] Глобальный идентификатор вида продукции. <bs:guid>bb7ab7a7-4d5c-f81d-50a9-da5bf9bbb1e9</bs:guid>
6 ·········<bs:active> xs:boolean [1..1] Является ли запись активной:
  • true - запись активна;
  • false - запись не активна.
<bs:active>true</bs:active>
7 ·········<bs:last> xs:boolean [1..1] Является ли версия записи последней:
  • true - да;
  • false - нет.
<bs:last>true</bs:last>
8 ·········<bs:status> bs:VersionStatus [1..1] Статус версии записи. <bs:status>100</bs:status>
9 ·········<bs:createDate> xs:DateTime [1..1] Дата создания записи. <bs:createDate>2017-07-07T12:00:00</bs:createDate>
10 ·········<bs:updateDate> xs:DateTime [1..1] Дата изменения записи. <bs:updateDate>2017-07-07T12:00:00</bs:updateDate>
11 ·········<bs:previous> bs:UUID [0..1] Идентификатор предыдущей версии записи. <bs:previous>c9781d68-8f7d-4fb6-a007-d7a14f0815f6</bs:previous>
12 ·········<bs:next> bs:UUID [0..1] Идентификатор следующей версии записи. <bs:next>8aaaac24-8e10-499e-b1a2-cda0bf3f5855</bs:next>
13 ·········<dt:name> bs:String255 [1..1] Название вида продукции. <dt:name>мясо птицы</dt:name>
14 ·········<dt:code> bs:String255 [1..1] Код ТН ВЭД вида продукции. <dt:code>0207</dt:code>
15 ·········<dt:productGuid bs:UUID [1..1] Глобальный идентификатор продукции
  • второй уровень иерархического справочника продукции ИС Меркурий
<dt:productGuid>337f79dc-4376-6e33-dabe-d5447913b97d</dt:productGuid>
16 ······</dt:subProduct>
17 ···</dt:subProductList>
18 </ws:getSubProductChangesListResponse>

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

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

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

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

<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:getSubProductChangesListRequest>
         <bs:listOptions>
            <bs:count>3</bs:count>
            <bs:offset>0</bs:offset>
         </bs:listOptions>
         <bs:updateDateInterval>
            <bs:beginDate>2016-10-20T00:00:00</bs:beginDate>
         </bs:updateDateInterval>   
      </ws:getSubProductChangesListRequest>
   </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:getSubProductChangesListResponse 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:subProductList count="3" total="946" offset="0">
            <dt:subProduct>
               <bs:uuid>c51f5855-ea43-116e-3a5b-f7dcd2766d8a</bs:uuid>
               <bs:guid>2160cc9f-0380-6200-dce9-0f0b3c86a8aa</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>2016-11-11T14:03:00+03:00</bs:updateDate>
               <bs:next>619e5808-3262-4c19-aaa3-77ce377524ee</bs:next>
               <dt:name>молочная паста</dt:name>
               <dt:code>0405</dt:code>
               <dt:productGuid>686b55f7-c199-9788-5ee5-a755eb2b8d2a</dt:productGuid>
            </dt:subProduct>
            <dt:subProduct>
               <bs:uuid>6d71c9e1-3cf4-2afb-9d9a-75ea2ab95a12</bs:uuid>
               <bs:guid>c847eca1-641f-24e7-a44a-c71c28fb377f</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-03-10T10:06:36+03:00</bs:updateDate>
               <bs:next>4a6238db-dda6-4b51-8910-6d1cc6e63d69</bs:next>
               <dt:name>икра лососевых пород рыб мороженая соленая</dt:name>
               <dt:code>1604</dt:code>
               <dt:productGuid>46fde18a-f6af-f7b0-de47-044281271112</dt:productGuid>
            </dt:subProduct>
            <dt:subProduct>
               <bs:uuid>b694de27-45e0-ea26-c936-684f7db0dfd4</bs:uuid>
               <bs:guid>799e561f-4228-9bd5-fa45-11a6db084dfc</bs:guid>
               <bs:active>false</bs:active>
               <bs:last>false</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2009-11-17T14:45:40+03:00</bs:createDate>
               <bs:updateDate>2016-11-11T14:03:00+03:00</bs:updateDate>
               <bs:next>097c5951-aae6-4e1a-9152-cca3f9f8d295</bs:next>
               <dt:name>белок молочный сухой</dt:name>
               <dt:code>3504</dt:code>
               <dt:productGuid>686b55f7-c199-9788-5ee5-a755eb2b8d2a</dt:productGuid>
            </dt:subProduct>
         </dt:subProductList>
      </v2:getSubProductChangesListResponse>
   </soap:Body>
</soapenv:Envelope>