MergeOperation v2: различия между версиями
Перейти к навигации
Перейти к поиску
Строка 1128: | Строка 1128: | ||
| | | | ||
|} | |} | ||
Версия 16:16, 18 июля 2017
Общие сведения
Операция 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:origin> | vd:BatchOrigin | [0..1] | Сведения о происхождении продукции. | |
22 | ············<vd:productItem> | dt:ProductItem | [0..1] | Наименование продукции в номенклатуре производителя. | |
23 | ···············<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии номенклатуры продукции. | <bs:uuid>53557240-35e7-48c8-81ce-8b9948cfef90</bs:uuid> |
24 | ···············<bs:guid> | bs:UUID | [0..1] | Глобальный идентификатор номенклатуры продукции. | <bs:guid>2c779c29-1fc2-44a6-8add-92752657f089</bs:guid> |
25 | ···············<dt:globalID> | dt:GTINType | [0..1] | Trade Identification Number (GTIN) - уникальный идентификационный номер продукции производителя. В отличие от поля code GTIN уникален для продукции всех производителей. Уникальность обеспечивается использованием префикса компании-производителя в составе GTIN. | <dt:globalID>85672854</dt:globalID> |
26 | ···············<dt:name> | bs:String255 | [0..1] | Наименование продукции. | <dt:name>Наименование</dt:name> |
27 | ···············<dt:code> | bs:String255 | [0..1] | Артикул (код) продукции в соответствии с внутренним кодификатором производителя. Артикул продукции должен быть уникальным в пределах одного производителя. | <dt:code>12</dt:code> |
28 | ············</vd:productItem> | ||||
29 | ·········</vd:origin> | ||||
30 | ······</vd:batch> | ||||
31 | ···</vd:mergeOperation> | ||||
32 | </merc:mergeStockEntriesRequest> |
Данные ответа
# | Название XML-элемента | Тип | Кардинальность | Описание | Пример |
---|---|---|---|---|---|
1 | <merc:mergeStockEntriesResponse> | ||||
2 | ···<merc:stockEntryList> | vd:StockEntryList | [1..1] | Список измененных записей журнала. | |
3 | ······<merc:stockEntry> | vd:StockEntry | [3..*] | Сведения о записи журнала. | |
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] | Является ли запись журнала активной:
|
<bs:active>true</bs:active> |
7 | ·········<bs:last> | xs:boolean | [1..1] | Последняя версия записи журнала:
|
<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>7c78bf3f-c1e8-496b-a5c1-173af60e95e4</bs:previous> |
12 | ·········<bs:next> | bs:UUID | [0..1] | Идентификатор следующей версии записи журнала. | <bs:next>82c7af0d-7067-4a67-8a53-39f4a5bcd700</bs:next> |
13 | ·········<vd:entryNumber> | xs:string | [0..1] | Номер записи журнала, доступный через веб-интерфейс. | <vd:entryNumber>85628322</vd:entryNumber> |
14 | ·········<vd:batch> | vd:Batch | [1..1] | Сведения о партии продукции. | |
15 | ············<vd:productType> | dt:ProductType | [1..1] | Тип продукции. Первый уровень иерархического справочника продукции ИС Меркурий. | <vd:productType>1</vd:productType> |
16 | ············<vd:product> | dt:Product | [1..1] | Продукция. Второй уровень иерархического справочника продукции ИС Меркурий. | |
17 | ···············<bs:uuid> | bs:UUID | [1..1] | Идентификатор версии продукции. | <bs:uuid>53557240-35e7-48c8-81ce-8b9948cfef90</bs:uuid> |
18 | ···············<bs:guid> | bs:UUID | [1..1] | Глобальный идентификатор продукции. | <bs:guid>2c779c29-1fc2-44a6-8add-92752657f089</bs:guid> |
19 | ···············<dt:name> | bs:String255 | [0..1] | Наименование продукции. | <dt:name>говядина</dt:name> |
20 | ············</vd:product> | ||||
21 | ············<vd:subProduct> | dt:SubProduct | [1..1] | Вид продукции. Третий уровень иерархического справочника продукции ИС Меркурий. | |
22 | ···············<bs:uuid> | bs:UUID | [1..1] | Идентификатор версии вида продукции. | <bs:uuid>d9d008eb-057a-4cd4-8cb2-d69364318bbe</bs:uuid> |
23 | ···············<bs:guid> | bs:UUID | [1..1] | Глобальный идентификатор вида продукции. | <bs:guid>6f5feda1-a3d4-4dfd-8625-de62777a205e</bs:guid> |
24 | ···············<dt:name> | bs:String255 | [0..1] | Наименование вида продукции. | <dt:name>говядина на кости охлажденная</dt:name> |
25 | ············</vd:subProduct> | ||||
26 | ············<vd:volume> | bs:Decimal | [1..1] | Объем продукции. | <dt:volume>50</dt:volume> |
27 | ············<vd:unit> | dt:Unit | [1..1] | Единица измерения объема партии продукции. | |
28 | ···············<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии еиницы измерения. | <bs:uuid>c9781d68-8f7d-4fb6-a007-d7a14f0815f6</bs:uuid> |
29 | ···············<bs:guid> | bs:UUID | [0..1] | Глобальный идентификатор еиницы измерения. | <bs:guid>8aaaac24-8e10-499e-b1a2-cda0bf3f5855</bs:guid> |
30 | ···············<dt:name> | bs:String255 | [0..1] | Наименование единицы измерения. | <dt:name>кг.</dt:name> |
31 | ············</vd:unit> | ||||
32 | ············<vd:dateOfProduction> | vd:GoodsDate | [1..1] | Дата выработки продукции. Может быть указана датой или диапазоном дат. В случае точной даты выработки указывается только первая компонента - firstDate. | |
33 | ···············<vd:firstDate> | dt:ComplexDate | [1..1] | Начальная дата в интервале, либо единичная дата. | |
34 | ··················<dt:year> | dt:Year | [0..1] | Год. | <dt:year>2017</dt:year> |
35 | ··················<dt:month> | dt:Month | [0..1] | Месяц. | <dt:month>07</dt:month> |
36 | ··················<dt:day> | dt:Day | [0..1] | День. | <dt:day>07</dt:day> |
37 | ··················<dt:hour> | dt:Hour | [0..1] | Час. | <dt:hour>12</dt:hour> |
38 | ··················<dt:minute> | dt:Minute | [0..1] | Минута. | <dt:minute>41</dt:minute> |
39 | ···············</vd:firstDate> | ||||
40 | ···············<vd:secondDate> | dt:ComplexDate | [1..1] | Конечная дата в интервале. | |
41 | ··················<dt:year> | dt:Year | [0..1] | Год. | <dt:year>2017</dt:year> |
42 | ··················<dt:month> | dt:Month | [0..1] | Месяц. | <dt:month>07</dt:month> |
43 | ··················<dt:day> | dt:Day | [0..1] | День. | <dt:day>08</dt:day> |
44 | ··················<dt:hour> | dt:Hour | [0..1] | Час. | <dt:hour>12</dt:hour> |
45 | ··················<dt:minute> | dt:Minute | [0..1] | Минута. | <dt:minute>41</dt:minute> |
46 | ···············</vd:secondDate> | ||||
47 | ············</vd:dateOfProduction> | ||||
48 | ············<vd:expiryDate> | vd:GoodsDate | [1..1] | Дата окончания срока годности продукции. Может быть указана датой или диапазоном дат. В случае точной даты выработки указывается только первая компонента - firstDate. | |
49 | ···············<vd:firstDate> | dt:ComplexDate | [1..1] | Начальная дата в интервале, либо единичная дата. | |
50 | ··················<dt:year> | dt:Year | [0..1] | Год. | <dt:year>2018</dt:year> |
51 | ··················<dt:month> | dt:Month | [0..1] | Месяц. | <dt:month>07</dt:month> |
52 | ··················<dt:day> | dt:Day | [0..1] | День. | <dt:day>08</dt:day> |
53 | ··················<dt:hour> | dt:Hour | [0..1] | Час. | <dt:hour>12</dt:hour> |
54 | ··················<dt:minute> | dt:Minute | [0..1] | Минута. | <dt:minute>41</dt:minute> |
55 | ···············</vd:firstDate> | ||||
56 | ···············<vd:secondDate> | dt:ComplexDate | [1..1] | Конечная дата в интервале. | |
57 | ··················<dt:year> | dt:Year | [0..1] | Год. | <dt:year>2018</dt:year> |
58 | ··················<dt:month> | dt:Month | [0..1] | Месяц. | <dt:month>09</dt:month> |
59 | ··················<dt:day> | dt:Day | [0..1] | День. | <dt:day>08</dt:day> |
60 | ··················<dt:hour> | dt:Hour | [0..1] | Час. | <dt:hour>12</dt:hour> |
61 | ··················<dt:minute> | dt:Minute | [0..1] | Минута. | <dt:minute>41</dt:minute> |
62 | ···············</vd:secondDate> | ||||
63 | ············</vd:expiryDate> | ||||
64 | ············<vd:productionBatchID> | bs:String255 | [0..*] | Уникальный идентификатор производственной партии продукции. | <vd:productionBatchID>ПП64219</vd:productionBatchID> |
65 | ············<vd:perishable> | xs:boolean | [1..1] | Описывает, является ли продукция скоропортящейся:
|
<vd:perishable>false</vd:perishable> |
66 | ············<vd:origin> | vd:BatchOrigin | [0..1] | Сведения о происхождении продукции. | |
67 | ···············<vd:productItem> | dt:ProductItem | [0..1] | Наименование продукции в номенклатуре производителя. | |
68 | ··················<bs:uuid> | bs:UUID | [1..1] | Идентификатор версии номенклатуры продукции. | <bs:uuid>53557240-35e7-48c8-81ce-8b9948cfef90</bs:uuid> |
69 | ··················<bs:guid> | bs:UUID | [1..1] | Глобальный идентификатор номенклатуры продукции. | <bs:guid>2c779c29-1fc2-44a6-8add-92752657f089</bs:guid> |
70 | ··················<dt:globalID> | dt:GTINType | [0..1] | Trade Identification Number (GTIN) - уникальный идентификационный номер продукции производителя. В отличие от поля code GTIN уникален для продукции всех производителей. Уникальность обеспечивается использованием префикса компании-производителя в составе GTIN. | <dt:globalID>85672854</dt:globalID> |
71 | ··················<dt:name> | bs:String255 | [0..1] | Наименование продукции. | <dt:name>Наименование</dt:name> |
72 | ··················<dt:code> | bs:String255 | [0..1] | Артикул (код) продукции в соответствии с внутренним кодификатором производителя. Артикул продукции должен быть уникальным в пределах одного производителя. | <dt:code>12</dt:code> |
73 | ···············</vd:productItem> | ||||
74 | ···············<vd:country> | dt:Country | [0..1] | Страна происхождения партии продукции. | |
75 | ··················<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии страны. | <bs:uuid>cbd91ac0-bec2-4308-a395-33b68871d76b</bs:uuid> |
76 | ··················<bs:guid> | bs:UUID | [0..1] | Глобальный идентификатор страны. | <bs:guid>3aa0c3ce-8d01-4779-bfb7-df7f234cf86f</bs:guid> |
77 | ··················<dt:name> | bs:String255 | [0..1] | Наименование страны происхождения партии продукции. | <dt:name>Российская федерация</dt:name> |
78 | ···············</vd:country> | ||||
79 | ···············<dt:producer> | dt:Producer | [0..*] | Производитель продукции. | |
80 | ··················<dt:enterprise> | dt:Enterprise | [1..1] | Информация о предприятие-производителе продукции. Обязательно должно быть заполнено хотя бы одно из полей, либо UUID, либо GUID. При указании обоих полей, приоритет у UUID. | |
81 | ·····················<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии предприятия. | <bs:uuid>9c706614-b995-4bdd-bda3-8fa9de70803a</bs:uuid> |
82 | ·····················<bs:guid> | bs:UUID | [0..1] | Глобальный идентификатор предприятия. | <bs:guid>12f04ea3-e236-4b71-b427-e04d41b26de4</bs:guid> |
83 | ·····················<dt:name> | bs:String255 | [0..1] | Наименование производителя. | <dt:name>Мясной цех №36</dt:name> |
84 | ··················</dt:enterprise> | ||||
85 | ··················<dt:role> | dt:EnterpriseRole | [1..1] | Роль предприятия-производителя продукции. | <dt:role>PRODUCER</dt:role> |
86 | ···············</dt:producer> | ||||
87 | ············<vd:origin> | ||||
88 | ············<vd:lowGradeCargo> | xs:boolean | [1..1] | Является ли груз некачественным.
|
<vd:lowGradeCargo>false</vd:lowGradeCargo> |
89 | ············<vd:packageList> | dt:PackageList | [0..1] | Список физической упаковки. | |
90 | ···············<dt:package> | dt:Package | [0..*] | Описание упаковки. Поддерживается указание многоуровневой упаковки и маркировки партии продукции. Всего предусмотрено шесть уровней упаковки (см. тип dt:PackageLevelType). Количество единиц упаковки и маркировка партии указывается для каждой упаковки конкретного уровня отдельно. На каждом уровне может быть произвольное количество типов упаковки, в том числе и ни одного, т.е. какого-то уровня упаковки в описании партии продукции может не быть. | |
91 | ··················<dt:level> | dt:PackageLevelType | [1..1] | Уровень упаковки. | <vd:level>4</vd:level> |
92 | ··················<dt:packingType> | dt:PackingType | [1..1] | Тип упаковки. | <vd:packingType>1</vd:packingType> |
93 | ·····················<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии упаковки. | <bs:uuid>9c706614-b995-4bdd-bda3-8fa9de70803a</bs:uuid> |
94 | ·····················<dt:globalID> | dt:PackingCodeType | [1..1] | Уникальный идентификатор упаковки. | <dt:globalID>7B</dt:globalID> |
95 | ·····················<dt:name> | bs:String255 | [0..1] | Наименование упаковки. | <dt:name>Деревянный ящик</dt:name> |
96 | ··················</dt:packingType> | ||||
97 | ··················<dt:quantity> | xs:int | [0..1] | Количество единиц упаковки. | <vd:quantity>1</vd:quantity> |
98 | ··················<dt:productMarks class="UNDEFINED"> | dt:ProductMarks | [0..*] | Маркировка партии продукции. | <vd:productMarks class="BN">ПАРТИЯ1251</vd:productMarks> |
99 | ···············</dt:package> | ||||
100 | ············</vd:packageList> | ||||
101 | ············<vd:owner> | dt:BusinessEntity | [0..1] | Фирма-владелец продукции. | |
102 | ···············<bs:uuid> | bs:UUID | [0..1] | Идентификатор версии хозяйствующего субъекта-владельца. | <bs:uuid>dc400640-0496-4f06-b83c-d00107edc744</bs:uuid> |
103 | ···············<bs:guid> | bs:UUID | [0..1] | Глобальный идентификатор хозяйствующего субъекта-владельца. | <bs:guid>879b525c-248d-46a5-bbde-2ee02d4d0bf9</bs:guid> |
104 | ···············<dt:fullName> | bs:String255 | [0..1] | Полное наименование хозяйствующего субъекта. | <dt:fullName>Общество с ограниченной ответственностью "Первая торговая компания"</dt:fullName> |
105 | ···············<dt:fio> | bs:String255 | [0..1] | ФИО хозяйствующего субъекта. | <dt:fio>Иванов Сергей Петрович</dt:fio> |
106 | ···············<dt:juridicalAddress> | dt:Address | [0..1] | Адрес фирмы. | |
107 | ··················<dt:addressView> | bs:String255 | [0..1] | Представление адреса. | <dt:addressView>Российская Федерация, Владимирская обл., г. Владимир, ул. Ленина ул., д. 44</dt:addressView> |
108 | ···············</dt:juridicalAddress> | ||||
109 | ············</vd:owner> | ||||
110 | ·········</vd:batch> | ||||
111 | ······</merc:stockEntry> | ||||
112 | ···<merc:stockEntryList> | ||||
113 | </merc:mergeStockEntriesResponse> |