GetProductItemList v2.0

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

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

Операция GetProductItemList предназначена для получения списка наименований продукции с возможностью фильтрации по уровням продукции иерархического справочника, по номенклатуре определенного предприятия-производителя или всех предприятий определенного хозяйствующего субъекта. В список попадают только актуальные записи (active=true). Поддерживается возможность постраничного вывода. Добавить записи номенклатуры производителя можно с помощью операции ModifyProducerStockListOperation. Выполнение операции заканчивается либо возвратом списка наименований продукции, либо ошибкой, в случае если параметры запроса не корректны, если запись по запросу не найдена или произошла иная ошибка выполнения запроса.

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

  • параметры выводимого списка;
  • идентификатор типа продукции (1 уровень иерархического справочника);
  • глобальный идентификатор продукции (2 уровень иерархического справочника).
  • глобальный идентификатор вида продукции (3 уровень иерархического справочника).
  • глобальный идентификатор предприятия-производителя.
  • глобальный идентификатор хозяйствующего субъекта.

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

  • список продукции (4 уровень иерархического справочника), отфильтрованный по заданным параметрам.

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

# Название XML-элемента Тип Обязат. Описание Пример
1 <ws:getProductItemListRequest>
2 ···<bs:listOptions> bs:ListOptions [0..1] Параметры запрашиваемого списка.
3 ······<bs:count> xs:nonNegativeInteger [0..1] Максимальное запрашиваемое количество объектов в списке.
  • По умолчанию значение 100;
  • Максимально возможное значение 1000.
<bs:count>10</bs:count>
4 ······<bs:offset> xs:nonNegativeInteger [0..1] Номер элемента, по которому осуществляется смещение первого элемента списка.
  • По умолчанию значение 0.
<bs:offset>2</bs:offset>
5 ···</bs:listOptions>
6 ···<vd:productType> dt:ProductType [0..1] Тип продукции. Первый уровень иерархического справочника продукции ИС Меркурий. <vd:productType>1</vd:productType>
7 ···<vd:product> dt:Product [0..1] Продукция. Второй уровень иерархического справочника продукции ИС Меркурий.
8 ······<bs:guid> bs:UUID [1..1] Глобальный идентификатор продукции. <bs:guid>2c779c29-1fc2-44a6-8add-92752657f089</bs:guid>
9 ···</vd:product>
10 ···<vd:subProduct> dt:SubProduct [0..1] Вид продукции. Третий уровень иерархического справочника продукции ИС Меркурий.
11 ······<bs:guid> bs:UUID [1..1] Глобальный идентификатор вида продукции. <bs:guid>6f5feda1-a3d4-4dfd-8625-de62777a205e</bs:guid>
12 ···</vd:subProduct>
13 ···<dt:businessEntity> dt:BusinessEntity [0..1] Данные о хозяйствующем субъекте.
14 ······<bs:guid> bs:UUID [1..1] Глобальный идентификатор хозяйствующего субъекта. <bs:guid>8aaaac24-8e10-499e-b1a2-cda0bf3f5855</bs:guid>
15 ···</dt:businessEntity>
16 ···<dt:enterprise> dt:Enterprise [0..1] Данные о предприятии-производителе продукции
17 ······<bs:guid> bs:UUID [1..1] Глобальный идентификатор предприятия <bs:guid>8aaaac24-8e10-499e-b1a2-cda0bf3f5855</bs:guid>
18 ···</dt:enterprise>
19 </ws:getProductItemListRequest>

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

# Название XML-элемента Тип Обязат. Описание Пример
1 <ws:getProductItemListResponse>
2 ···<dt:productItemList count="100" total="874" offset="0"> dt:ProductItemList [1..1] Список номенклатуры
  • total - всего записей;
  • offset - смещение относительно первого элемента;
  • count - количество выводимых записей.
3 ······<dt:productItem> dt:ProductItem [0..*] Данные о номенклатуре производителя
4 ·········<bs:uuid> bs:UUID [1..1] Идентификатор версии номенклатуры. <bs:uuid>c9781d68-8f7d-4fb6-a007-d7a14f0815f6</bs:uuid>
5 ·········<bs:guid> bs:UUID [1..1] Глобальный идентификатор номенклатуры. <bs:guid>8aaaac24-8e10-499e-b1a2-cda0bf3f5855</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 ·········<dt:globalID> dt:GTINType [0..1] Trade Identification Number (GTIN) - идентификационный номер продукции производителя. <dt:globalID>85672854</dt:globalID>
12 ·········<dt:name> bs:String255 [0..1] Наименование продукции. <dt:name>Название</dt:name>
13 ·········<dt:code> bs:String255 [0..1] Артикул (код) продукции в соответствии с внутренним кодификатором производителя. <dt:code>12</dt:code>
14 ·········<dt:productType> dt:ProductType [1..1] Тип продукции. Первый уровень иерархического справочника продукции ИС Меркурий. <dt:productType>1</dt:productType>
15 ·········<dt:product> dt:Product [1..1] Продукция. Второй уровень иерархического справочника продукции ИС Меркурий.
16 ············<bs:uuid> bs:UUID [1..1] Идентификатор версии продукции. <bs:uuid>53557240-35e7-48c8-81ce-8b9948cfef90</bs:uuid>
17 ············<bs:guid> bs:UUID [1..1] Глобальный идентификатор продукции. <bs:guid>2c779c29-1fc2-44a6-8add-92752657f089</bs:guid>
18 ·········</dt:product>
19 ·········<dt:subProduct> dt:SubProduct [1..1] Вид продукции. Третий уровень иерархического справочника продукции ИС Меркурий.
20 ············<bs:uuid> bs:UUID [1..1] Идентификатор версии вида продукции. <bs:uuid>d9d008eb-057a-4cd4-8cb2-d69364318bbe</bs:uuid>
21 ············<bs:guid> bs:UUID [1..1] Глобальный идентификатор вида продукции. <bs:guid>6f5feda1-a3d4-4dfd-8625-de62777a205e</bs:guid>
22 ·········</dt:subProduct>
23 ·········<dt:correspondsToGost> xs:boolean [1..1] Соответствует ли ГОСТу. <dt:correspondsToGost>true</dt:correspondsToGost>
24 ·········<dt:gost> bs:String255 [0..1] ГОСТ. <dt:gost>ГОСТ-621187/53</dt:gost>
25 ·········<dt:producer> dt:BusinessEntity [0..1] ХС-производитель продукции.
26 ············<bs:uuid> bs:UUID [1..1] Идентификатор версии хозяйствующего субъекта-владельца. <bs:uuid>dc400640-0496-4f06-b83c-d00107edc744</bs:uuid>
27 ············<bs:guid> bs:UUID [1..1] Глобальный идентификатор хозяйствующего субъекта-владельца. <bs:guid>879b525c-248d-46a5-bbde-2ee02d4d0bf9</bs:guid>
28 ·········</dt:producer>
29 ·········<dt:tmOwner> dt:BusinessEntity [0..1] ХС-собственник торговой марки.
30 ············<bs:uuid> bs:UUID [1..1] Идентификатор версии хозяйствующего субъекта-владельца. <bs:uuid>dc400640-0496-4f06-b83c-d00107edc744</bs:uuid>
31 ············<bs:guid> bs:UUID [1..1] Глобальный идентификатор хозяйствующего субъекта-владельца. <bs:guid>879b525c-248d-46a5-bbde-2ee02d4d0bf9</bs:guid>
32 ·········</dt:tmOwner>
33 ·········<dt:producing> dt:ProductItemProducing [0..*] Список площадок, на которых выпускается данная продукция.
34 ············<dt:location> dt:Enterprise [1..1] Площадка, осуществляющая выпуск продукции.
35 ···············<bs:uuid> bs:UUID [1..1] Идентификатор версии предприятия. <bs:uuid>9c706614-b995-4bdd-bda3-8fa9de70803a</bs:uuid>
36 ···············<bs:guid> bs:UUID [1..1] Глобальный идентификатор предприятия. <bs:guid>12f04ea3-e236-4b71-b427-e04d41b26de4</bs:guid>
37 ············</dt:location>
38 ·········</dt:producing>
39 ·········<dt:packaging> dt:Packaging [0..1] Фасовка.
40 ············<dt:packagingType> dt:PackingType [1..1] Тип упаковки. <dt:packagingType>1</dt:packagingType>
41 ···············<bs:uuid> bs:UUID [1..1] Идентификатор версии типа упаковки. <bs:uuid>c9781d68-8f7d-4fb6-a007-d7a14f0815f6</bs:uuid>
42 ···············<bs:guid> bs:UUID [1..1] Глобальный идентификатор упаковки. <bs:guid>c9781d68-8f7d-4fb6-a007-d7a14f0815f6</bs:guid>
43 ···············<dt:globalID> dt:PackingCodeType [1..1] Уникальный идентификатор упаковки. <dt:globalID>7B</dt:globalID>
44 ···············<dt:name> bs:String255 [1..1] Наименование упаковки. <dt:name>Название</dt:name>
45 ············</dt:packagingType>
46 ············<dt:quantity> xs:int [0..1] Количество единиц упаковки. <dt:quantity>10</dt:quantity>
47 ············<dt:volume> bs:Decimal [0..1] Объём единицы упаковки товара. <dt:volume>50</dt:volume>
48 ············<dt:unit> dt:Unit [0..1] Единица измерения объёма единицы упаковки товара.
49 ···············<bs:uuid> bs:UUID [1..1] Идентификатор версии еиницы измерения. <bs:uuid>c9781d68-8f7d-4fb6-a007-d7a14f0815f6</bs:uuid>
50 ···············<bs:guid> bs:UUID [1..1] Глобальный идентификатор еиницы измерения. <bs:guid>8aaaac24-8e10-499e-b1a2-cda0bf3f5855</bs:guid>
51 ···············<dt:name> bs:String255 [1..1] Наименование единицы измерения <dt:name>кг</dt:name>
52 ············</dt:unit>
53 ·········</dt:packaging>
54 ······</dt:productItem>
55 ···</dt:productItemList>
56 </ws:getProductItemListResponse>

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

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

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

Получение списка номенклатуры производителей по виду продукции (3 уровень иерархического справочника)

Получение списка номенклатуры производителей по виду продукции. Вывод первых трёх записей без смещения.

<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" xmlns:dt="http://api.vetrf.ru/schema/cdm/dictionary/v2">
   <soapenv:Header/>
   <soapenv:Body>
      <ws:getProductItemListRequest>
         <bs:listOptions>
            <bs:count>3</bs:count>
            <bs:offset>0</bs:offset>
         </bs:listOptions>
         <dt:subProduct>
            <bs:guid>23175390-cfa2-94a4-8eac-6237f4a47385</bs:guid>
         </dt:subProduct>
      </ws:getProductItemListRequest>
   </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:getProductItemListResponse 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:productItemList count="3" total="201" offset="0">
            <dt:productItem>
               <bs:uuid>fe037d3f-952d-427c-9890-e3a35c6051f4</bs:uuid>
               <bs:guid>e131554d-300a-4767-817c-ed4583edcb57</bs:guid>
               <bs:active>true</bs:active>
               <bs:last>true</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2015-04-13T09:20:38+03:00</bs:createDate>
               <bs:updateDate>2015-04-13T09:20:38+03:00</bs:updateDate>
               <dt:name>ГРУДКА с кожей цыпленка-бройлера охлажд. (подложка)</dt:name>
               <dt:productType>1</dt:productType>
               <dt:product>
                  <bs:uuid>e42c2a82-2624-eeeb-9193-8187a888d276</bs:uuid>
                  <bs:guid>337f79dc-4376-6e33-dabe-d5447913b97d</bs:guid>
               </dt:product>
               <dt:subProduct>
                  <bs:uuid>f73981a2-7c2c-d412-8e89-b3be6a1c15e1</bs:uuid>
                  <bs:guid>23175390-cfa2-94a4-8eac-6237f4a47385</bs:guid>
               </dt:subProduct>
               <dt:correspondsToGost>false</dt:correspondsToGost>
               <dt:producing>
                  <dt:location>
                     <bs:uuid>84723ee8-0cc3-4b5c-97a0-00a32b0d3f8d</bs:uuid>
                     <bs:guid>b2fdaf3c-78cc-4a2a-893a-b98f83bfe569</bs:guid>
                  </dt:location>
               </dt:producing>
            </dt:productItem>
            <dt:productItem>
               <bs:uuid>ec511dc1-19e2-44bc-9080-b1c6451cd18d</bs:uuid>
               <bs:guid>51a211aa-f02d-46b7-88aa-53a9c5d73267</bs:guid>
               <bs:active>true</bs:active>
               <bs:last>true</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2015-04-13T09:21:48+03:00</bs:createDate>
               <bs:updateDate>2015-04-13T09:21:48+03:00</bs:updateDate>
               <dt:name>ФИЛЕ без кожи цыпленка-бройлера охлажд. (подложка)</dt:name>
               <dt:productType>1</dt:productType>
               <dt:product>
                  <bs:uuid>e42c2a82-2624-eeeb-9193-8187a888d276</bs:uuid>
                  <bs:guid>337f79dc-4376-6e33-dabe-d5447913b97d</bs:guid>
               </dt:product>
               <dt:subProduct>
                  <bs:uuid>f73981a2-7c2c-d412-8e89-b3be6a1c15e1</bs:uuid>
                  <bs:guid>23175390-cfa2-94a4-8eac-6237f4a47385</bs:guid>
               </dt:subProduct>
               <dt:correspondsToGost>false</dt:correspondsToGost>
               <dt:producing>
                  <dt:location>
                     <bs:uuid>84723ee8-0cc3-4b5c-97a0-00a32b0d3f8d</bs:uuid>
                     <bs:guid>b2fdaf3c-78cc-4a2a-893a-b98f83bfe569</bs:guid>
                  </dt:location>
               </dt:producing>
            </dt:productItem>
            <dt:productItem>
               <bs:uuid>f5f1a1de-88d6-49fc-ac53-4ed0bc8be78e</bs:uuid>
               <bs:guid>5e09860b-9a6e-4011-8fda-8642c08da263</bs:guid>
               <bs:active>true</bs:active>
               <bs:last>true</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2015-04-13T09:22:08+03:00</bs:createDate>
               <bs:updateDate>2015-04-13T09:22:08+03:00</bs:updateDate>
               <dt:name>ГОЛЕНЬ с кожей цыпленка-бройлера охлажд. (подложка)</dt:name>
               <dt:productType>1</dt:productType>
               <dt:product>
                  <bs:uuid>e42c2a82-2624-eeeb-9193-8187a888d276</bs:uuid>
                  <bs:guid>337f79dc-4376-6e33-dabe-d5447913b97d</bs:guid>
               </dt:product>
               <dt:subProduct>
                  <bs:uuid>f73981a2-7c2c-d412-8e89-b3be6a1c15e1</bs:uuid>
                  <bs:guid>23175390-cfa2-94a4-8eac-6237f4a47385</bs:guid>
               </dt:subProduct>
               <dt:correspondsToGost>false</dt:correspondsToGost>
               <dt:producing>
                  <dt:location>
                     <bs:uuid>84723ee8-0cc3-4b5c-97a0-00a32b0d3f8d</bs:uuid>
                     <bs:guid>b2fdaf3c-78cc-4a2a-893a-b98f83bfe569</bs:guid>
                  </dt:location>
               </dt:producing>
            </dt:productItem>
         </dt:productItemList>
      </v2:getProductItemListResponse>
   </soap:Body>
</soapenv:Envelope>