GetStockEntryByGuidOperation: различия между версиями

Материал из Справочная система Россельхознадзора
Перейти к навигации Перейти к поиску
 
(не показаны 2 промежуточные версии этого же участника)
Строка 1: Строка 1:
<!--- #перенаправление [[GetStockEntryByGuidOperation v1.2]] -->
<!--- #перенаправление [[GetStockEntryByGuidOperation v1.2]] -->
== Общие сведения ==
== Общие сведения ==
Операция '''GetStockEntryByGuidOperation''' предназначена для получения конкретной версии записи складского журнала продукции по ее идентификатору. Складской журнал продукции в системе Меркурий ведется с применением версионирования, это означает, что при каждом изменении записи складского журнала создается новая версия этой записи.  
Операция '''GetStockEntryByGuidOperation''' предназначена для получения последней (актуальной) версии записи складского журнала продукции по ее глобальному идентификатору. Складской журнал продукции в системе Меркурий ведется с применением версионирования, это означает, что при каждом изменении записи складского журнала создается новая версия этой записи.  
* GUID - глобальный идентификатор записи складского журнала. Данный идентификатор остается неизменным для всех версий записи складского журнала.
* GUID - глобальный идентификатор записи складского журнала. Данный идентификатор остается неизменным для всех версий записи складского журнала.
* UUID - идентификатор версии записи складского журнала. Данный идентификатор изменяется для каждой новой версии записи складского журнала.
* UUID - идентификатор версии записи складского журнала. Данный идентификатор изменяется для каждой новой версии записи складского журнала.
Строка 351: Строка 351:
| [[#Объект ..Response/stockEntry/batch/productMarkingList | '''productMarkingList''']] ||  Список маркировки, доступный для данного производителя.|| [[ProductMarkingList|vetd:ProductMarkingList]] || 0..1
| [[#Объект ..Response/stockEntry/batch/productMarkingList | '''productMarkingList''']] ||  Список маркировки, доступный для данного производителя.|| [[ProductMarkingList|vetd:ProductMarkingList]] || 0..1
|-
|-
|'''lowGradeCargo'''|| Является ли продукция некачественной.  
|'''lowGradeCargo'''|| Является ли груз некачественным.
* true – некачественная;
*true – груз некачественный;
* false – качественная.  
*false – груз качественный.
Элемент может не указываться. В этом случае значение по-умолчанию устанавливается false.  
|| [http://www.w3.org/TR/xmlschema-2/#boolean xs:boolean] || 1
|| [http://www.w3.org/TR/xmlschema-2/#boolean xs:boolean] || 1
|-
|-
Строка 520: Строка 521:
                   </mercvu:initiator>
                   </mercvu:initiator>
                   <base:guid>GUID</base:guid>
                   <base:guid>GUID</base:guid>
                   <ent:businessMember>
                   <mercvu:businessMember>
                       <ent:businessEntity>
                       <ent:businessEntity>
                           <base:guid>guid</base:guid>
                           <base:guid>guid</base:guid>
Строка 527: Строка 528:
                           <base:guid>guid</base:guid>
                           <base:guid>guid</base:guid>
                       </ent:enterprise>
                       </ent:enterprise>
                   </ent:businessMember>
                   </mercvu:businessMember>
               </mercvu:getStockEntryByGuidRequest>  
               </mercvu:getStockEntryByGuidRequest>  
           </app:data>
           </app:data>

Текущая версия на 11:29, 16 февраля 2017

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

Операция GetStockEntryByGuidOperation предназначена для получения последней (актуальной) версии записи складского журнала продукции по ее глобальному идентификатору. Складской журнал продукции в системе Меркурий ведется с применением версионирования, это означает, что при каждом изменении записи складского журнала создается новая версия этой записи.

  • GUID - глобальный идентификатор записи складского журнала. Данный идентификатор остается неизменным для всех версий записи складского журнала.
  • UUID - идентификатор версии записи складского журнала. Данный идентификатор изменяется для каждой новой версии записи складского журнала.

Так же следует различать актуальную и неактуальную версию записи складского журнала. Для одной записи журнала может существовать только одна актуальная версия.

При выполнении операции GetStockEntryByGuidOperation на вход системы передаются следующие сведения:

  • информация о пользователе - инициаторе запроса;
  • глобальный идентификатор записи складского журнала.

Результатом выполнения данной операции является:

  • пользователю передаются сведения о запрашиваемой версии записи складского журнала.

Запрашиваться могут только те записи складского журнала продукции, где хозяйствующий-субъект инициатор запроса является владельцем продукции.

Возможные сценарии

При обработке запроса возможны следующие сценарии:

  1. Запрос успешно обработан.
  2. Произошла ошибка при обработке запроса.
  • Некорректный запрос.
  • Внутренняя ошибка системы.

Используемые пространства имён и типы

Общие отличия между версией для хозяйствующих субъектов и ветеринарных управлений

Различающиеся параметры Версия для хозяйствующих субъектов Версия для ветеринарных управлений
Пространство имён merc:http://api.vetrf.ru/schema/cdm/mercury/applications mercvu:http://api.vetrf.ru/schema/cdm/mercury/vu/applications
Имя сервиса mercury-g2b.service mercury-vu.service

Данные запроса

Объект getStockEntryByGuidRequest

Корневой элемент содержимого заявки на получение версии записи складского журнала продукции по идентификатору.

Поле Описание Тип Обязательность
localTransactionId Идентификатор заявки в клиентской системе. xs:NCName 1
initiator Пользователь, зарегистрированный в системе Меркурий и инициирующий запрос к шлюзу. Является ответственным за выполнение бизнес-операции. Здесь потребуется логин ветврача или пользователя ХС. Логин для базовой аутентификации не подойдёт. argc:User 1
GUID Идентификатор версии записи складского журнала. bs:UUID 1
businessMember Обслуживаемые ХС и предприятие, по которым производится поиск записей. ent:BusinessMember 1 - при запросе от имени хозяйствующего субъекта по-прежнему достаточно enterpriseGuid; при запросе из ИС ветеринарного управления нуобходимо указывать businessMember.
enterpriseGuid Предприятие, по которому производится поиск записей. bs:UUID

Объект ..Request/initiator

Объект содержит сведения о пользователе, инициирующем запрос к шлюзу.

Поле Описание Тип Обязательность
UUID Идентификатор пользователя, зарегистрированного в системе Меркурий. bs:UUID 1 - обязательно должно быть заполнено хотя бы одно из полей, либо UUID, либо login.

При указании обоих полей, приоритет у UUID.

login Логин пользователя. xs:NCName


Объект ..Request/businessMember

Объект содержит сведения о параметрах запрашиваемого списка записей складского журнала.

Поле Описание Тип Обязательность
businessEntity Хозяйствующий субъект, для которого производится поиск записей складского журнала ent:BusinessEntity 0..1
enterprise Предприятие, для которого осуществляется отбор записей складского журнала ent:Enterprise 0..1

Объект ..Request/businessMember/businessEntity

Объект описывает хозяйствующий субъект, для которого производится отбор записей складского журнала.

Поле Описание Тип Обязательность
UUID Идентификатор версии записи хозяйствующего субъекта bs:UUID 0..1
GUID Глобальный идентификатор хозяйствующего субъекта в реестре РСХН bs:UUID 0..1

Объект ..Request/businessMember/enterprise

Объект описывает предприятие, для которого производится отбор записей складского журнала.

Поле Описание Тип Обязательность
UUID Идентификатор версии записи предприятия bs:UUID 0..1
GUID Глобальный идентификатор предприятия в реестре РСХН bs:UUID 0..1

Данные ответа

Объект getStockEntryByUuidResponse

Объект содержит результат обработки запроса на получение версии записи складского журнала по идентификатору.

Поле Описание Тип Обязательность
stockEntry Запись складского журнала продукции. vetd:StockEntry 1

Объект ..Response/stockEntry

Объект содержит сведения о записи складского журнала продукции.

Поле Описание Тип Обязательность
UUID Идентификатор версии записи журнала. bs:UUID 1
GUID Глобальный идентификатор записи журнала. bs:UUID 1
active Является ли запись журнала активной:
  • true - запись активна;
  • false - запись не активна.
xs:boolean 1
last Последняя версия записи журнала:
  • true - да;
  • false - нет.
xs:boolean 1
status Статус версии записи журнала. bs:VersionStatus 1
createDate Дата создания записи журнала. xs:DateTime 1
updateDate Дата изменения записи журнала. xs:DateTime 1
previous Идентификатор предыдущей версии записи журнала. bs:UUID 0..1
next Идентификатор следующей версии записи журнала. bs:UUID 0..1
entryNumber Номер записи журнала, доступный через веб-интерфейс. xs:string] 0..1
batch Сведения о партии продукции. vetd:Batch 1

Объект ..Response/stockEntry/batch

Объект содержит сведения о партии продукции.

Поле Описание Тип Обязательность
productType Тип продукции. Первый уровень иерархического справочника продукции ИС Меркурий. argpr:ProductType 1
product Продукция. Второй уровень иерархического справочника продукции ИС Меркурий. argpr:Product 1
subProduct Вид продукции. Третий уровень иерархического справочника продукции ИС Меркурий. argpr:SubProduct 1
productItem Наименование продукции в номенклатуре производителя. argpr:ProductItem 0..1
volume Объем продукции.
  • Значение должно быть больше нуля.
bs:Decimal 1
unit Единица измерения объема партии продукции. argc:Unit 1
packingList Список видов упаковки. argc:PackingFormList 0..1
packingAmount Общее количество единиц упаковки. xs:int 0..1
dateOfProduction Дата выработки продукции. Может быть указана тремя способами: датой, диапазоном дат, строкой. В случае точной даты выработки указывается только первая компонента - firstDate. vetd:GoodsDate 1
expiryDate Дата окончания срока годности продукции. Может быть указана тремя способами: датой, диапазоном дат, строкой. В случае точной даты выработки указывается только первая компонента - firstDate. vetd:GoodsDate 1
perishable Описывает, является ли продукция скоропортящейся:
  • true – скоропортящаяся;
  • false – не скоропортящаяся.
xs:boolean 1
countryOfOrigin Страна происхождения партии продукции. ikar:Country 1
producerList Список производителей продукции. ent:ProducerList 1
productMarkingList Список маркировки, доступный для данного производителя. vetd:ProductMarkingList 0..1
lowGradeCargo Является ли груз некачественным.
  • true – груз некачественный;
  • false – груз качественный.

Элемент может не указываться. В этом случае значение по-умолчанию устанавливается false.

xs:boolean 1
owner Хозяйствующий субъект - владелец продукции. ent:BusinessEntity 1

Объект ..Response/stockEntry/batch/product

Объект содержит сведения о продукции; второй уровень иерархического справочника продукции ИС Меркурий.

Поле Описание Тип Обязательность
UUID Идентификатор версии продукции. bs:UUID 1
GUID Глобальный идентификатор продукции. bs:UUID 1

Объект ..Response/stockEntry/batch/subProduct

Объект содержит сведения о видах продукции; третий уровень иерархического справочника продукции ИС Меркурий.

Поле Описание Тип Обязательность
UUID Идентификатор версии вида продукции. bs:UUID 1
GUID Глобальный идентификатор продукции. bs:UUID 1

Объект ..Response/stockEntry/batch/productItem

Объект содержит сведения о наименовании продукции.

Поле Описание Тип Обязательность
UUID Идентификатор версии наименования продукции. bs:UUID 1 - возвращается или UUID или name, либо оба значения.
name Наименование продукции в соответствии с номенклатурой производителя. xs:string

Объект ..Response/stockEntry/batch/unit

Объект содержит сведения о единице измерения объема партии продукции.

Поле Описание Тип Обязательность
UUID Идентификатор версии единицы измерения. bs:UUID 1
GUID Глобальный идентификатор единицы измерения. bs:UUID 1

Объект ..Response/stockEntry/batch/packingList

Объект содержит сведения о списке видов упаковки, которые используются для партии продукции.

Поле Описание Тип Обязательность
packingForm Вид упаковки. vetd:PackingForm 0..*

Объект ..Response/stockEntry/batch/packingList/packingForm

Объект содержит сведения о виде упаковки, которая используются для партии продукции.

Поле Описание Тип Обязательность
UUID Идентификатор упаковки. bs:UUID 1
name Наименование конкретного вида упаковки. xs:string 1

Объект ..Response/stockEntry/batch/countryOfOrigin

Объект содержит сведения о стране-происхождения продукции.

Поле Описание Тип Обязательность
UUID Идентификатор версии страны происхождения. bs:UUID 1
GUID Глобальный идентификатор страны происхождения. bs:UUID 1

Объект ..Response/stockEntry/batch/producerList

Объект содержит сведения о списке производителей продукции.

Поле Описание Тип Обязательность
producer Производитель продукции. vetd:Producer 0..*

Объект ..Response/stockEntry/batch/producerList/producer

Объект содержит сведения о производителе продукции.

Поле Описание Тип Обязательность
enterprise Информация о предприятие-производителе продукции. ent:Enterprise 1
role Роль предприятия-производителя продукции. ent:EnterpriseRole 1

Объект ..Response/stockEntry/batch/producerList/producer/enterprise

Объект содержит сведение о предприятие-производителе продукции.

Поле Описание Тип Обязательность
UUID Идентификатор версии предприятия-производителя продукции. bs:UUID 1
GUID Глобальный идентификатор предприятия-производителя продукции. bs:UUID 1

Объект ..Response/stockEntry/batch/productMarkingList

Объект содержит сведения о списке маркировки.

Поле Описание Тип Обязательность
productMarking Строка с маркировкой продукции. bs:String255 0..*

Объект ..Response/stockEntry/batch/owner

Объект содержит сведения о хозяйствующем субъекте-владельце продукции.

Поле Описание Тип Обязательность
UUID Идентификатор версии хозяйствующего субъекта - владельца продукции. bs:UUID 1
GUID Глобальный идентификатор хозяйствующего субъекта - владельца продукции. bs:UUID 1

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

Получение записи складского журнала по её идентификатору - для версии ветеринарного управления
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:ws="http://api.vetrf.ru/schema/cdm/application/ws-definitions" 
                  xmlns:app="http://api.vetrf.ru/schema/cdm/application" 
                  xmlns:mercvu="http://api.vetrf.ru/schema/cdm/mercury/vu/applications" 
                  xmlns:vet="http://api.vetrf.ru/schema/cdm/mercury/vet-document"
                  xmlns:base="http://api.vetrf.ru/schema/cdm/base" 
                  xmlns:com="http://api.vetrf.ru/schema/cdm/argus/common" 
                  xmlns:ent="http://api.vetrf.ru/schema/cdm/cerberus/enterprise" 
                  xmlns:ikar="http://api.vetrf.ru/schema/cdm/ikar">
   <soapenv:Header/>
   <soapenv:Body>
      <ws:submitApplicationRequest>
         <ws:apiKey>apikey</ws:apiKey>
         <app:application>
            <app:serviceId>mercury-vu.service</app:serviceId>
            <app:issuerId>issuerId</app:issuerId>
            <app:issueDate>2015-01-10T17:03:00</app:issueDate>
            <app:data>
               <mercvu:getStockEntryByGuidRequest>                       
                   <mercvu:localTransactionId>t2345</mercvu:localTransactionId>
                   <mercvu:initiator>
                       <com:login>a13</com:login>
                   </mercvu:initiator>
                   <base:guid>GUID</base:guid>
                   <mercvu:businessMember>
                       <ent:businessEntity>
                           <base:guid>guid</base:guid>
                       </ent:businessEntity>
                       <ent:enterprise>
                           <base:guid>guid</base:guid>
                       </ent:enterprise>
                   </mercvu:businessMember>
              </mercvu:getStockEntryByGuidRequest> 
           </app:data>
        </app:application>
      </ws:submitApplicationRequest>
   </soapenv:Body>
</soapenv:Envelope>


Получение записи складского журнала по её идентификатору - для версии хозяйствующего субъекта
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
                  xmlns:ws="http://api.vetrf.ru/schema/cdm/application/ws-definitions" 
                  xmlns:app="http://api.vetrf.ru/schema/cdm/application" 
                  xmlns:merc="http://api.vetrf.ru/schema/cdm/mercury/applications" 
                  xmlns:vet="http://api.vetrf.ru/schema/cdm/mercury/vet-document"
                  xmlns:base="http://api.vetrf.ru/schema/cdm/base" 
                  xmlns:com="http://api.vetrf.ru/schema/cdm/argus/common" 
                  xmlns:ent="http://api.vetrf.ru/schema/cdm/cerberus/enterprise" 
                  xmlns:ikar="http://api.vetrf.ru/schema/cdm/ikar">
   <soapenv:Header/>
   <soapenv:Body>
      <ws:submitApplicationRequest>
         <ws:apiKey>apikey</ws:apiKey>
         <app:application>
            <app:serviceId>mercury-g2b.service</app:serviceId>
            <app:issuerId>issuerId</app:issuerId>
            <app:issueDate>2015-01-10T17:03:00</app:issueDate>
            <app:data>
               <merc:getStockEntryByGuidRequest>                       
                   <merc:localTransactionId>t2345</merc:localTransactionId>
                   <merc:initiator>
                       <com:login>a13</com:login>
                   </merc:initiator>
                   <base:guid>GUID</base:guid>
                   <ent:enterpriseGuid>guid</ent:enterpriseGuid>
              </merc:getStockEntryByGuidRequest> 
           </app:data>
        </app:application>
      </ws:submitApplicationRequest>
   </soapenv:Body>
</soapenv:Envelope>

Коды ошибок

В таблице содержатся коды ошибок, которые могут возникать при отправке неверных данных в приложение.

Код ошибки Описание
MERC34008 Запись складского журнала продукции с указанным идентификатором не найдена в реестре РСХН, либо идентификатор не соответствует установленному формату.
MERC34180 Предприятие с указанным идентификатором не найдено в реестре РСХН, либо идентификатор не соответствует установленному формату.

Вернуться к началу ↑