GetUnitList v2.0

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

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

Операция GetUnitList предназначена для получения списка актуальных записей о единицах измерения (active=true, last=true). Поддерживается постраничный вывод. Выполнение операции заканчивается либо возвратом списка единиц измерения, либо ошибкой, в случае если параметры запроса не корректны или произошла иная ошибка выполнения запроса.

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

  • параметры выводимого списка.

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

  • список актуальных единиц измерения.

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

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

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

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

Список единиц измерения.

  • total - всего записей;
  • offset - смещение относительно первого элемента;
  • count - количество выводимых записей.
003 ······<dt:unit> dt:Unit [0..*] Единица измерения.
004 ·········<bs:uuid>UUID</bs:uuid> bs:UUID [1..1] Идентификатор версии единицы измерения.
005 ·········<bs:guid>GUID</bs:guid> bs:UUID [1..1] Глобальный идентификатор единицы измерения.
006 ·········<bs:active>true</bs:active> xs:boolean [1..1]

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

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

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

  • true - да;
  • false - нет.
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 ·········<dt:name>кг</dt:name> bs:String255 [1..1] Наименование единицы измерения.
013 ·········<dt:fullName>килограмм</dt:fullName> bs:String255 [1..1] Полное наименование единицы измерения.
014 ·········<dt:commonUnitGuid>GUID</dt:commonUnitGuid> bs:UUID [1..1]

Глобальный идентификатор базовой единицы измерения.

  • Например, для тонны базовая единица - кг
015 ·········<dt:factor>1</dt:factor> xs:integer [1..1]

Коэффициент относительно базовой единицы измерения.

  • Например, для тонны = 1000
016 ······</dt:unit>
017 ···</dt:unitList>
018 </ws:getUnitListResponse>

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

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

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

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

<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:getUnitListRequest>
         <bs:listOptions>
            <bs:count>3</bs:count>
            <bs:offset>0</bs:offset>
         </bs:listOptions>
      </ws:getUnitListRequest>
   </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:getUnitListResponse 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:unitList count="3" total="25" offset="0">
            <dt:unit>
               <bs:uuid>069796f6-053d-11e1-99b4-d8d385fbc9e8</bs:uuid>
               <bs:guid>52082c55-8628-409f-818c-80a02632c09f</bs:guid>
               <bs:active>true</bs:active>
               <bs:last>true</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2008-01-01T00:00:00+03:00</bs:createDate>
               <bs:updateDate>2008-01-01T00:00:00+03:00</bs:updateDate>
               <dt:name>бочка</dt:name>
               <dt:fullName>бочка</dt:fullName>
               <dt:commonUnitGuid>52082c55-8628-409f-818c-80a02632c09f</dt:commonUnitGuid>
               <dt:factor>1</dt:factor>
            </dt:unit>
            <dt:unit>
               <bs:uuid>06979926-053d-11e1-99b4-d8d385fbc9e8</bs:uuid>
               <bs:guid>4c7c19ff-a24c-49da-b4e9-d64a8dd6ce94</bs:guid>
               <bs:active>true</bs:active>
               <bs:last>true</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2009-04-22T18:57:11+04:00</bs:createDate>
               <bs:updateDate>2009-04-22T18:57:11+04:00</bs:updateDate>
               <dt:name>голова</dt:name>
               <dt:fullName>голова</dt:fullName>
               <dt:commonUnitGuid>4c7c19ff-a24c-49da-b4e9-d64a8dd6ce94</dt:commonUnitGuid>
               <dt:factor>1</dt:factor>
            </dt:unit>
            <dt:unit>
               <bs:uuid>06979aca-053d-11e1-99b4-d8d385fbc9e8</bs:uuid>
               <bs:guid>db13bfe1-204f-4e28-a5ea-da51660b0469</bs:guid>
               <bs:active>true</bs:active>
               <bs:last>true</bs:last>
               <bs:status>100</bs:status>
               <bs:createDate>2009-12-22T15:48:57+03:00</bs:createDate>
               <bs:updateDate>2009-12-22T15:48:57+03:00</bs:updateDate>
               <dt:name>грамм</dt:name>
               <dt:fullName>грамм</dt:fullName>
               <dt:commonUnitGuid>2ed1cbda-22a4-4f3c-9865-dd47be2c655e</dt:commonUnitGuid>
               <dt:factor>1000</dt:factor>
            </dt:unit>
         </dt:unitList>
      </v2:getUnitListResponse>
   </soap:Body>
</soapenv:Envelope>