MergeOperation v2
Общие сведения
Операция MergeOperation предназначена для объединения в системе Меркурий нескольких записей складского журнала продукции в одну, для согласования особенностей партионного учёта, принятого в системе Меркурий и в учётной системе предприятия.
В рамках операции MergeOperation доступны следующие действия:
- объединение двух и более записей журнала в одну складскую запись журнала. При этом версии присоединяемых записей журнала становятся неактивными, а результирующей записи присваивается новый глобальный идентификатор;
- присоединение записей журнала. В случае присоединения записей главной записью журнала (к которой осуществляется присоединение), будет считать первая запись из списка. Результирующая запись журнала будет иметь тот же глобальный идентификатор и наименование продукции, что и главная.
На вход системы передаются следующие сведения:
- информация о пользователе - инициаторе запроса;
- данные о хозяйствующем субъекте и предприятии, где будет производиться объединение или присоединение записей;
- позиции в складском журнале системы Меркурий, которые необходимо объединить или присоединить;
- наименование продукции для объединенной записи журнала и другая дополнительная информация.
Результатом выполнения данной операции является:
- запись складского журнала продукции, сформированная в результате объединения или присоединения двух или более записей журнала, содержащая общий объем, даты выработки и срок годности.
Возможные сценарии
При обработке запроса возможны следующие сценарии:
- 1.1. Запрос успешно обработан. Пользователю вернулась объединенная запись, а так же записи измененные в результате операции.
- 1.2. Произошла ошибка при обработке запроса.
- • Некорректный запрос.
- • Внутренняя ошибка системы.
- 2.1. Запрос успешно обработан. Пользователю вернулась запись, к которой осуществлялось присоединение, а так же записи измененные в результате операции.
- 2.2. Произошла ошибка при обработке запроса.
- • Некорректный запрос.
- • Внутренняя ошибка системы.
Используемые пространства имён и типы
Данные запроса
| # | Название XML-элемента | Тип | Кардинальность | Описание | Пример |
|---|---|---|---|---|---|
| 1 | <merc:mergeStockEntriesRequest> | ||||
| 2 | ···<merc:localTransactionId> | xs:NCName | [1..1] | Идентификатор заявки в клиентской системе. | <bs:guid>A00001</bs:guid> |
| 3 | ···<merc:initiator> | dt:User | [1..1] | Пользователь, зарегистрированный в системе Меркурий и инициирующий запрос к шлюзу. Является ответственным за выполнение бизнес-операции. Здесь потребуется логин ветврача или пользователя ХС. Логин для базовой аутентификации не подойдёт. | |
| 4 | ······<dt:login> | xs:NCName | [1..1] | Логин пользователя, зарегистрированного в системе Меркурий. | <dt:login>user_ab_150101</dt:login> |
| 5 | ···</merc:initiator> | ||||
| 6 | ···<dt:enterprise> | dt:Enterprise | [1..1] | Предприятие, на котором выполняется операция объединения записей.Обязательно должно быть заполнено хотя бы одно из полей, либо UUID, либо GUID. При указании обоих полей, приоритет у UUID. | |
| 7 | ······<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии предприятия. | <bs:uuid>9c706614-b995-4bdd-bda3-8fa9de70803a</bs:uuid> |
| 8 | ······<bs:guid> | bs:UUID | [0..1] | Глобальный идентификатор предприятия. | <bs:guid>12f04ea3-e236-4b71-b427-e04d41b26de4</bs:guid> |
| 9 | ···</dt:enterprise> | ||||
| 10 | ···<vd:mergeOperation> | vd:MergeStockEntriesOperation | [1..1] | Сведения, необходимые для объединения нескольких записей журнала. | |
| 11 | ······<vd:type> | bs:RegisterModificationType | [0..1] | Тип операции. Поддерживается два типа: MERGE и ATTACH.
|
<vd:type>ATTACH</vd:type> |
| 12 | ······<vd:sourceStockEntry> | vd:StockEntry | [2..*] | Позиции в складском журнале системы Меркурий, не менее двух. Указанные позиции будут объединены в одну. Представляют собой идентификатор версии записи (uuid) в ИС Меркурий. | |
| 13 | ·········<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии записи журнала. | <bs:uuid>9c706614-b995-4bdd-bda3-8fa9de70803a</bs:uuid> |
| 14 | ······</vd:sourceStockEntry> | ||||
| 15 | ······<vd:batch> | vd:Batch | [1..1] | Сведения, которые будут содержаться в объединенной записи журнала. | |
| 16 | ·········<vd:subProduct> | dt:SubProduct | [1..1] | Вид продукции. Третий уровень иерархического справочника продукции ИС Меркурий. | |
| 17 | ············<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии вида продукции. | <bs:uuid>d9d008eb-057a-4cd4-8cb2-d69364318bbe</bs:uuid> |
| 18 | ············<bs:guid> | bs:UUID | [0..1] | Глобальный идентификатор вида продукции. | <bs:guid>6f5feda1-a3d4-4dfd-8625-de62777a205e</bs:guid> |
| 19 | ············<dt:name> | bs:String255 | [0..1] | Наименование вида продукции. | <dt:name>говядина на кости охлажденная</dt:name> |
| 20 | ·········</vd:subProduct> | ||||
| 21 | ·········<vd:productItem> | dt:ProductItem | [0..1] | Наименование продукции в номенклатуре производителя. | |
| 22 | ············<bs:uuid> | bs:UUID | [1..1] | Идентификатор версии номенклатуры продукции. | <bs:uuid>53557240-35e7-48c8-81ce-8b9948cfef90</bs:uuid> |
| 23 | ············<bs:guid> | bs:UUID | [1..1] | Глобальный идентификатор номенклатуры продукции. | <bs:guid>2c779c29-1fc2-44a6-8add-92752657f089</bs:guid> |
| 24 | ············<dt:globalID> | dt:GTINType | [0..1] | Trade Identification Number (GTIN) - уникальный идентификационный номер продукции производителя. В отличие от поля code GTIN уникален для продукции всех производителей. Уникальность обеспечивается использованием префикса компании-производителя в составе GTIN. | <dt:globalID>85672854</dt:globalID> |
| 25 | ············<dt:name> | bs:String255 | [0..1] | Наименование продукции. | <dt:name>Наименование</dt:name> |
| 26 | ············<dt:code> | bs:String255 | [0..1] | Артикул (код) продукции в соответствии с внутренним кодификатором производителя. Артикул продукции должен быть уникальным в пределах одного производителя. | <dt:code>12</dt:code> |
| 27 | ·········</vd:productItem> | ||||
| 28 | ······</vd:batch> | ||||
| 29 | ···</vd:mergeOperation> | ||||
| 30 | </merc:mergeStockEntriesRequest> |
Данные ответа
| # | Название XML-элемента | Тип | Кардинальность | Описание | Пример |
|---|---|---|---|---|---|
| 001 | <merc:mergeStockEntriesResponse> | ||||
| 002 | ···<merc:stockEntryList> | vd:StockEntryList | [1..1] | Список измененных записей журнала. | |
| 003 | ······<merc:stockEntry> | vd:StockEntry | [3..*] | Сведения о записи журнала. | |
| 004 | ·········<bs:uuid> | bs:UUID | [1..1] | Идентификатор версии записи журнала. | <bs:uuid>c9781d68-8f7d-4fb6-a007-d7a14f0815f6</bs:uuid> |
| 005 | ·········<bs:guid> | bs:UUID | [1..1] | Глобальный идентификатор записи журнала. | <bs:guid>8aaaac24-8e10-499e-b1a2-cda0bf3f5855</bs:guid> |
| 006 | ·········<bs:active> | xs:boolean | [1..1] | Является ли запись журнала активной:* true - запись активна;* false - запись не активна. | <bs:active>true</bs:active> |
| 007 | ·········<bs:last> | xs:boolean | [1..1] | Последняя версия записи журнала:* true - да;* false - нет. | <bs:last>true</bs:last> |
| 008 | ·········<bs:status> | bs:VersionStatus | [1..1] | Статус версии записи журнала. | <bs:status></bs:status> |
| 009 | ·········<bs:createDate> | xs:DateTime | [1..1] | Дата создания записи журнала. | <bs:createDate>2017-07-07T12:00:00</bs:createDate> |
| 010 | ·········<bs:updateDate> | xs:DateTime | [1..1] | Дата изменения записи журнала. | <bs:updateDate>2017-07-07T12:00:00</bs:updateDate> |
| 011 | ·········<bs:previous> | bs:UUID | [0..1] | Идентификатор предыдущей версии записи журнала. | <bs:previous>7c78bf3f-c1e8-496b-a5c1-173af60e95e4</bs:previous> |
| 012 | ·········<bs:next> | bs:UUID | [0..1] | Идентификатор следующей версии записи журнала. | <bs:next>82c7af0d-7067-4a67-8a53-39f4a5bcd700</bs:next> |
| 013 | ·········<vd:entryNumber> | xs:string] | [0..1] | Номер записи журнала, доступный через веб-интерфейс. | <vd:entryNumber>85628322</vd:entryNumber> |
| 014 | ············<vd:batch> | vd:Batch | [1..1] | Сведения о партии продукции. | |
| 015 | ···············<vd:productType> | dt:ProductType | [1..1] | Тип продукции. Первый уровень иерархического справочника продукции ИС Меркурий. | <vd:productType>1</vd:productType> |
| 016 | ···············<vd:product> | dt:Product | [1..1] | Продукция. Второй уровень иерархического справочника продукции ИС Меркурий. | |
| 017 | ··················<bs:uuid> | bs:UUID | [1..1] | Идентификатор версии продукции. | <bs:uuid>53557240-35e7-48c8-81ce-8b9948cfef90</bs:uuid> |
| 018 | ··················<bs:guid> | bs:UUID | [1..1] | Глобальный идентификатор продукции. | <bs:guid>2c779c29-1fc2-44a6-8add-92752657f089</bs:guid> |
| 019 | ··················<dt:name> | bs:String255 | [0..1] | Наименование продукции. | <dt:name>говядина</dt:name> |
| 020 | ···············</vd:product> | ||||
| 021 | ···············<vd:subProduct> | dt:SubProduct | [1..1] | Вид продукции. Третий уровень иерархического справочника продукции ИС Меркурий. | |
| 022 | ··················<bs:uuid> | bs:UUID | [1..1] | Идентификатор версии вида продукции. | <bs:uuid>d9d008eb-057a-4cd4-8cb2-d69364318bbe</bs:uuid> |
| 023 | ··················<bs:guid> | bs:UUID | [1..1] | Глобальный идентификатор вида продукции. | <bs:guid>6f5feda1-a3d4-4dfd-8625-de62777a205e</bs:guid> |
| 024 | ··················<dt:name> | bs:String255 | [0..1] | Наименование вида продукции. | <dt:name>говядина на кости охлажденная</dt:name> |
| 025 | ···············</vd:subProduct> | ||||
| 026 | ···············<vd:productItem> | dt:ProductItem | [0..1] | Наименование продукции в номенклатуре производителя. | |
| 027 | ··················<bs:uuid> | bs:UUID | [1..1] | Идентификатор версии номенклатуры продукции. | <bs:uuid>53557240-35e7-48c8-81ce-8b9948cfef90</bs:uuid> |
| 028 | ··················<bs:guid> | bs:UUID | [1..1] | Глобальный идентификатор номенклатуры продукции. | <bs:guid>2c779c29-1fc2-44a6-8add-92752657f089</bs:guid> |
| 029 | ··················<dt:globalID> | dt:GTINType | [0..1] | Trade Identification Number (GTIN) - уникальный идентификационный номер продукции производителя. В отличие от поля code GTIN уникален для продукции всех производителей. Уникальность обеспечивается использованием префикса компании-производителя в составе GTIN. | <dt:globalID>85672854</dt:globalID> |
| 030 | ··················<dt:name> | bs:String255 | [0..1] | Наименование продукции. | <dt:name>Наименование</dt:name> |
| 031 | ··················<dt:code> | bs:String255 | [0..1] | Артикул (код) продукции в соответствии с внутренним кодификатором производителя. Артикул продукции должен быть уникальным в пределах одного производителя. | <dt:code>12</dt:code> |
| 032 | ···············</vd:productItem> | ||||
| 033 | ···············<vd:volume> | bs:Decimal | [1..1] | Объем продукции. | <dt:volume>50</dt:volume> |
| 034 | ···············<vd:unit> | dt:Unit | [1..1] | Единица измерения объема партии продукции. | |
| 035 | ··················<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии еиницы измерения. | <bs:uuid>c9781d68-8f7d-4fb6-a007-d7a14f0815f6</bs:uuid> |
| 036 | ··················<bs:guid> | bs:UUID | [0..1] | Глобальный идентификатор еиницы измерения. | <bs:guid>8aaaac24-8e10-499e-b1a2-cda0bf3f5855</bs:guid> |
| 037 | ··················<dt:name> | bs:String255 | [0..1] | Наименование единицы измерения. | <dt:name>кг.</dt:name> |
| 038 | ···············</vd:unit> | ||||
| 039 | ···············<vd:dateOfProduction> | vd:GoodsDate | [1..1] | Дата выработки продукции. Может быть указана датой или диапазоном дат. В случае точной даты выработки указывается только первая компонента - firstDate. | |
| 040 | ··················<vd:firstDate> | dt:ComplexDate | [1..1] | Начальная дата в интервале, либо единичная дата. | |
| 041 | ·····················<dt:year> | dt:Year | [0..1] | Год. | <dt:year>2017</dt:year> |
| 042 | ·····················<dt:month> | dt:Month | [0..1] | Месяц. | <dt:month>07</dt:month> |
| 043 | ·····················<dt:day> | dt:Day | [0..1] | День. | <dt:day>07</dt:day> |
| 044 | ·····················<dt:hour> | dt:Hour | [0..1] | Час. | <dt:hour>12</dt:hour> |
| 045 | ·····················<dt:minute> | dt:Minute | [0..1] | Минута. | <dt:minute>41</dt:minute> |
| 046 | ··················</vd:firstDate> | ||||
| 047 | ··················<vd:secondDate> | dt:ComplexDate | [1..1] | Конечная дата в интервале. | |
| 048 | ·····················<dt:year> | dt:Year | [0..1] | Год. | <dt:year>2017</dt:year> |
| 049 | ·····················<dt:month> | dt:Month | [0..1] | Месяц. | <dt:month>07</dt:month> |
| 050 | ·····················<dt:day> | dt:Day | [0..1] | День. | <dt:day>08</dt:day> |
| 051 | ·····················<dt:hour> | dt:Hour | [0..1] | Час. | <dt:hour>12</dt:hour> |
| 052 | ·····················<dt:minute> | dt:Minute | [0..1] | Минута. | <dt:minute>41</dt:minute> |
| 053 | ··················</vd:secondDate> | ||||
| 054 | ···············</vd:dateOfProduction> | ||||
| 055 | ···············<vd:expiryDate> | vd:GoodsDate | [1..1] | Дата окончания срока годности продукции. Может быть указана датой или диапазоном дат. В случае точной даты выработки указывается только первая компонента - firstDate. | |
| 056 | ··················<vd:firstDate> | dt:ComplexDate | [1..1] | Начальная дата в интервале, либо единичная дата. | |
| 057 | ·····················<dt:year> | dt:Year | [0..1] | Год. | <dt:year>2018</dt:year> |
| 058 | ·····················<dt:month> | dt:Month | [0..1] | Месяц. | <dt:month>07</dt:month> |
| 059 | ·····················<dt:day> | dt:Day | [0..1] | День. | <dt:day>08</dt:day> |
| 060 | ·····················<dt:hour> | dt:Hour | [0..1] | Час. | <dt:hour>12</dt:hour> |
| 061 | ·····················<dt:minute> | dt:Minute | [0..1] | Минута. | <dt:minute>41</dt:minute> |
| 062 | ··················</vd:firstDate> | ||||
| 063 | ··················<vd:secondDate> | dt:ComplexDate | [1..1] | Конечная дата в интервале. | |
| 064 | ·····················<dt:year> | dt:Year | [0..1] | Год. | <dt:year>2018</dt:year> |
| 065 | ·····················<dt:month> | dt:Month | [0..1] | Месяц. | <dt:month>09</dt:month> |
| 066 | ·····················<dt:day> | dt:Day | [0..1] | День. | <dt:day>08</dt:day> |
| 067 | ·····················<dt:hour> | dt:Hour | [0..1] | Час. | <dt:hour>12</dt:hour> |
| 068 | ·····················<dt:minute> | dt:Minute | [0..1] | Минута. | <dt:minute>41</dt:minute> |
| 069 | ··················</vd:secondDate> | ||||
| 070 | ···············</vd:expiryDate> | ||||
| 071 | ···············<vd:productionBatchID> | bs:String255 | [0..*] | Уникальный идентификатор производственной партии продукции. | <vd:productionBatchID>ПП64219</vd:productionBatchID> |
| 072 | ···············<vd:perishable> | xs:boolean | [1..1] | Описывает, является ли продукция скоропортящейся:* true – скоропортящаяся;* false – не скоропортящаяся. | <vd:perishable>false</vd:perishable> |
| 073 | ···············<vd:origin> | vd:BatchOrigin | [0..1] | Сведения о происхождении продукции. | |
| 074 | ··················<vd:productItem> | dt:ProductItem | [0..1] | Наименование продукции в номенклатуре производителя. | |
| 075 | ·····················<bs:uuid> | bs:UUID | [1..1] | Идентификатор версии номенклатуры продукции. | <bs:uuid>53557240-35e7-48c8-81ce-8b9948cfef90</bs:uuid> |
| 076 | ·····················<bs:guid> | bs:UUID | [1..1] | Глобальный идентификатор номенклатуры продукции. | <bs:guid>2c779c29-1fc2-44a6-8add-92752657f089</bs:guid> |
| 077 | ·····················<dt:globalID> | dt:GTINType | [0..1] | Trade Identification Number (GTIN) - уникальный идентификационный номер продукции производителя. В отличие от поля code GTIN уникален для продукции всех производителей. Уникальность обеспечивается использованием префикса компании-производителя в составе GTIN. | <dt:globalID>85672854</dt:globalID> |
| 078 | ·····················<dt:name> | bs:String255 | [0..1] | Наименование продукции. | <dt:name>Наименование</dt:name> |
| 079 | ·····················<dt:code> | bs:String255 | [0..1] | Артикул (код) продукции в соответствии с внутренним кодификатором производителя. Артикул продукции должен быть уникальным в пределах одного производителя. | <dt:code>12</dt:code> |
| 080 | ··················</vd:productItem> | ||||
| 081 | ··················<vd:country> | dt:Country | [0..1] | Страна происхождения партии продукции. | |
| 082 | ·····················<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии страны. | <bs:uuid>cbd91ac0-bec2-4308-a395-33b68871d76b</bs:uuid> |
| 083 | ·····················<bs:guid> | bs:UUID | [0..1] | Глобальный идентификатор страны. | <bs:guid>3aa0c3ce-8d01-4779-bfb7-df7f234cf86f</bs:guid> |
| 084 | ·····················<dt:name> | bs:String255 | [0..1] | Наименование страны происхождения партии продукции. | <dt:name>Российская федерация</dt:name> |
| 085 | ··················</vd:country> | ||||
| 086 | ··················<dt:producer> | dt:Producer | [0..*] | Производитель продукции. | |
| 087 | ·····················<dt:enterprise> | dt:Enterprise | [1..1] | Информация о предприятие-производителе продукции. Обязательно должно быть заполнено хотя бы одно из полей, либо UUID, либо GUID. При указании обоих полей, приоритет у UUID. | |
| 088 | ························<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии предприятия. | <bs:uuid>9c706614-b995-4bdd-bda3-8fa9de70803a</bs:uuid> |
| 089 | ························<bs:guid> | bs:UUID | [0..1] | Глобальный идентификатор предприятия. | <bs:guid>12f04ea3-e236-4b71-b427-e04d41b26de4</bs:guid> |
| 090 | ························<dt:name> | bs:String255 | [0..1] | Наименование производителя. | <dt:name>Мясной цех №36</dt:name> |
| 091 | ·····················</dt:enterprise> | ||||
| 092 | ·····················<dt:role> | dt:EnterpriseRole | [1..1] | Роль предприятия-производителя продукции. | <dt:role>PRODUCER</dt:role> |
| 093 | ··················</dt:producer> | ||||
| 094 | ···············<vd:origin> | ||||
| 095 | ···············<vd:lowGradeCargo> | xs:boolean | [1..1] | Является ли груз некачественным.*true – груз некачественный;*false – груз качественный. | <vd:lowGradeCargo>false</vd:lowGradeCargo> |
| 096 | ···············<vd:packageList> | dt:PackageList | [0..1] | Список физической упаковки. | |
| 097 | ··················<dt:package> | dt:Package | [0..*] | Описание упаковки. Поддерживается указание многоуровневой упаковки и маркировки партии продукции. Всего предусмотрено шесть уровней упаковки (см. тип dt:PackageLevelType). Количество единиц упаковки и маркировка партии указывается для каждой упаковки конкретного уровня отдельно. На каждом уровне может быть произвольное количество типов упаковки, в том числе и ни одного, т.е. какого-то уровня упаковки в описании партии продукции может не быть. | |
| 098 | ·····················<dt:level> | dt:PackageLevelType | [1..1] | Уровень упаковки. | <vd:level>4</vd:level> |
| 099 | ·····················<dt:packingType> | dt:PackingType | [1..1] | Тип упаковки. | <vd:packingType>1</vd:packingType> |
| 100 | ························<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии упаковки. | <bs:uuid>9c706614-b995-4bdd-bda3-8fa9de70803a</bs:uuid> |
| 101 | ························<dt:globalID> | dt:PackingCodeType | [1..1] | Уникальный идентификатор упаковки. | <dt:globalID>7B</dt:globalID> |
| 102 | ························<dt:name> | bs:String255 | [0..1] | Наименование упаковки. | <dt:name>Деревянный ящик</dt:name> |
| 103 | ·····················</dt:packingType> | ||||
| 104 | ·····················<dt:quantity> | xs:int | [0..1] | Количество единиц упаковки. | <vd:quantity>1</vd:quantity> |
| 105 | ·····················<dt:productMarks class="UNDEFINED"> | dt:ProductMarks | [0..*] | Маркировка партии продукции. | <vd:productMarks class="BN">ПАРТИЯ1251</vd:productMarks> |
| 106 | ··················</dt:package> | ||||
| 107 | ···············</vd:packageList> | ||||
| 108 | ···············<vd:owner> | dt:BusinessEntity | [0..1] | Фирма-владелец продукции. | |
| 109 | ··················<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии хозяйствующего субъекта-владельца. | <bs:uuid>dc400640-0496-4f06-b83c-d00107edc744</bs:uuid> |
| 110 | ··················<bs:guid> | bs:UUID | [0..1] | Глобальный идентификатор хозяйствующего субъекта-владельца. | <bs:guid>879b525c-248d-46a5-bbde-2ee02d4d0bf9</bs:guid> |
| 111 | ··················<dt:fullName> | bs:String255 | [0..1] | Полное наименование хозяйствующего субъекта. | <dt:fullName>Общество с ограниченной ответственностью "Первая торговая компания"</dt:fullName> |
| 112 | ··················<dt:fio> | bs:String255 | [0..1] | ФИО хозяйствующего субъекта. | <dt:fio>Иванов Сергей Петрович</dt:fio> |
| 113 | ··················<dt:juridicalAddress> | dt:Address | [0..1] | Адрес фирмы. | |
| 114 | ·····················<dt:addressView> | bs:String255 | [0..1] | Представление адреса. | <dt:addressView>Российская Федерация, Владимирская обл., г. Владимир, ул. Ленина ул., д. 44</dt:addressView> |
| 115 | ··················</dt:juridicalAddress> | ||||
| 116 | ···············</vd:owner> | ||||
| 117 | ············</vd:batch> | ||||
| 118 | ······</merc:stockEntry> | ||||
| 119 | ···<merc:stockEntryList> | ||||
| 120 | </merc:mergeStockEntriesResponse> |
