Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Контроль над документом Запись изменений Роль/Должнос ть Верс ия Пахомов А. Пахомов А. Пахомов А. Пахомов А. Пахомов А. Разработчик Разработчик Разработчик Разработчик Разработчик 1.1 1.2 1.3 1.4 1.5 19.04.2019 Пахомов А. Разработчик 1.6 16.05.2019 19.07.2019 30.08.2019 Пахомов А. Пахомов А. Пахомов А. Разработчик Разработчик Разработчик 1.7 1.8 1.9 20.12.2019 Пахомов А. Разработчик 1.10 25.12.2019 Пахомов А. Разработчик 2.0 29.01.2020 Пахомов А. Разработчик 2.1 27.07.2020 25.12.2020 Пахомов А. Пахомов А. Разработчик Разработчик 2.2 2.3 10.06.2021 Пахомов А. Разработчик 2.4 16.07.2021 Пахомов А. Разработчик 2.5 20.10.2022 Байсаров Т. Консультант 2.6 14.12.2022 Мыскин А. Консультант 2.7 Дата Автор 10.10.2018 20.11.2018 26.11.2018 31.01.2019 15.03.2019 Ссылка на изменение Создание Обновленная версия Добавлен документ ИД Обновленная версия Обновленная версия Добавлен поток по отгрузке в магазины через КДК-площадку Обновленная версия Обновленная версия Обновленная версия OT7 из OP в ORD; интеграция с PD, HR и ERP по схеме запросответ Интеграция с Кадуцей; актуализация существующих потоков Новый интерфейс для отправки запросов из SAP HR Новые потоки в OP из NQ DC Интеграция с Бахус Обновленная версия документа для передачи на поддержку Версия для передачи проекта на поддержку Повторный запрос документов из WMOS Изменение потока, логирование в AMQ Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 1 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Оглавление 1 2 3 4 5 6 7 8 9 Описание доступов к системам интеграции ...........................................................3 Общая схема интеграции ........................................................................................4 Описание процесса потоков данных .......................................................................8 Перечень потоков данных .....................................................................................11 Описание заданий (расписание выполнения загрузок\выгрузок) .......................42 Описание мониторинга загрузки данных и реакции на него ...............................42 Форматы потоков данных ......................................................................................43 Возможные инциденты и пути их разрешения .....................................................44 Последующие доработки .......................................................................................44 Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 2 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик ИНСТРУКЦИЯ 1 Описание доступов к системам интеграции Для решения инцидентов для консультантов поддержки интеграции необходим будет доступ в следующие системы: SAP ERP SAP PD SAP PI ActiveMQ В SAP ERP доступ запрашивается в системе GW2(https://dostup.x5.ru/). Для создания учетки в SAP PI и SAP PD можно написать письмо на САП Базис (DIS.SAPBasis@x5.ru), приложив согласование начальника отдела интеграционных решений. Приложение ActiveMQ запущено на серверах: Среда PROD PROD Название ActiveMQ ActiveMQ Имя сервера MSK-DPRO-APP561 MSK-DPRO-APP562 Ядра Память, GB Диск HDD, GB 4 8 100 4 8 100 Приложение доступно по ссылке - http://amq-wmos.x5.ru/admin/queues.jsp amq-wmos.x5.ru – это Allias на балансировщике. При обращении к приложению по ссылке выше балансировщик обращается к приложениям на двух хостах MSK-DPRO-APP561 и MSK-DPROAPP562. Подключение выполняется к тому приложению, которое активно в настоящий момент. Приложение на втором хосте может быть запущено, но находиться в неактивном состоянии. При этом, если отключить приложение на первом хосте, то на втором хосте приложение станет активно и Allias будет ссылаться на него. К БД ActiveMQ можно подключиться по TNS: (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = WMS-SAR-SOK-AMQ-DB)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = amq) ) ) В тестовой среде настроено также логирование всех документов, проходящих через AMQ в таблице MSGS_HISTORY: q_name – название очереди corrid – ID документа из PI msgid_prod – внутренний ID в AMQ Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 3 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик status – 0 если документ в очереди, 1 если забран enq_time – время прихода документа deq_time – время ухода документа user_data – JMS сообщение, в заголовке которого указан тип документа, номер РЦ или ещё какаято информация, передаваемая через header. Самого содержимого документа user_data не содержит, поскольку поток документов очень большой, но для временной отладки можно раскомментировать в триггере activemq_msgs_insert строку v_msg.set_bytes(:new.msg); тогда содержимое также можно будет получить из user_data. Ссылка в wiki на описание интеграции для https://wiki.x5.ru/pages/viewpage.action?pageId=308614116 WMOS через ActiveMQ 2 Общая схема интеграции Схема интеграции WMOS с SAP ERP: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 4 из 45 - Управление по операционной деятельности Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Название документа Версия документа, дата Автор, должность ActiveMQ WMOS SAP PI SAP ERP si_erp_manh_class_outb to.*.ClassCode.Item si_wms_manh_class_inb si_erp_manh_partners_outb si_wms_manh_partners_inb si_erp_manh_facility_outb to.*.Appointment to.*.Facility to.*.EquipmentInstance si_erp_manh_items_outb si_wms_manh_facility_inb si_erp_manh_asn_po_outb to.*.Relationship si_wms_manh_items_inb si_erp_manh_po_outb to.*.PO.ASN from to.*.BusinessPartnerUpdate si_wms_manh_po_inb si_erp_manh_relation_outb si_wms_manh_relation_inb si_erp_manh_carrier_outb to.*.PO.ASN.cancel si_wms_manh_carrier_inb to.*.Carrier.ProductLife si_erp_manh_drivers_outb si_erp_etrn_dcard_wmos_outb si_wms_manh_drivers_inb to.*.Driver.LPN si_erp_manh_equip_outb si_wms_manh_equip_inb to.*.DO si_transport_order_posx_outb si_wms_manh_appoint_inb si_erp_dlv_outb route_not_found si_wms_manh_product_life_inb si_erp_manh_prod_life_outb si_wms_manh_asnitem_inb si_erp_slc_outb si_erp_manh_asnitem_outb si_erp_manh_asn_po_outb DO_from DO to.ReqProc to.ER2.sqt SQT si_wms_manh_do_inb si_erp_manh_do_outb si_wms_manh_req_inb mi_posx_req_outb si_wms_manh_sqt_outb mi_sqt_inb mi_posx_zqm_inb to.ER2.PD2.ASN ASN_Verify/ASN Export si_wms_manh_asnitem_outb si_erp_etrn_gp_wmos_inb si_erp_manh_asnstatus_inb to.ER2.PD2.PIX PIX si_erp_manh_docnl_inb si_wms_manh_pix_outb to.ER2.ZSTOCK ZSTOCKIN.ZSTOCK02 ZSTOCKIN.ZSTOCK02 DELINF.DELVRY05.DELVRY05 to.ER2.PD2.ShipConfirm ShipmentConfirm si_wms_manh_shipconf_outb TTN si_posx_ttn_inb si_erp_etrn_go_wmos_inb si_erp_manh_asn_po_resp_inb to.ER2.Response si_wms_manh_response_outb si_erp_manh_no_md_resp_inb from.*.ProcessingResponse to.*.Response.error Схема интеграции WMOS с SAP POS DM: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 5 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность WMOS Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик ActiveMQ SAP PI Запрос на выгрузку реестра документов to.ReqProc to.*.Appointment from to.*.PO.ASN SAP PD si_wms_manh_req_inb mi_posx_req_outb si_wms_manh_appoint_inb si_pd_manh_asnitem_outb si_wms_manh_asnitem_inb si_pd_manh_asnlpn_outb route_not_found to.ER2.PD2.ASN Приемки si_wms_manh_asnitem_outb ASN_Verify si_pd_manh_asnvrf_inb PIX 300/606/613 si_pd_manh_pix_inv_inb to.ER2.PD2.PIX si_wms_manh_pix_outb from.ReqProc to.ER2.PD2.ShipConfirm si_pd_manh_shipconf_inb si_wms_manh_shipconf_outb to.PD2.ShipConfirm to.PD2.HR2.response to.PD2.BNN Списание/Пополнение бананов si_wms_manh_resp_outb DOC si_pd_manh_doc_inb si_wms_manh_bnn_outb BNN si_pd_manh_bnn_inb si_wms_manh_lpn_inb V14 si_merc_ship_create_reply_outb si_wms_manh_shipconf_outb V13 si_merc_ship_create_inb Схема интеграции WMOS с Кадуцей: ActiveMQ OP SAP PI to.OP.V14 to.Caduceus.ShipConfirm WMOS Кадуцей to.Caduceus.OUT si_merc_suppl_pvetdoc_req_inb to.Caduceus.Bacchus.OUT to.Caduceus.Bacchus.IN si_wms_manh_asnitem_outb V44 si_merc_suppl_confirm_inb si_wms_manh_asnitem_inb V43 si_merc_manh_upload_outb si_wms_manh_lpn_inb V45 si_merc_manh_conf_push_outb si_wms_manh_cancelcert_outb V15 si_merc_ship_vet_withdraw_inb si_wms_manh_pix_outb V46 si_merc_suppl_pvtdc_discard_inb si_wms_ma_update_order_outb V39 si_merc_39_errors_outb to.*.PO.ASN from to.*.Driver.LPN to.Caduceus.CancelCert Отмена сертификатов to.ER2.PD2.PIX from.Caduceus.errors Ошибки обработки в Кадуцей Схема интеграции WMOS с Бахус: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 6 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность ActiveMQ WMOS Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Бахус SAP PI si_bacchus_manh_shipready_inb to.Caduceus.Bacchus.OUT si_bacchus_manh_preasn_inb si_wms_manh_asnitem_outb si_bacchus_manh_recconf_inb to.Caduceus.Bacchus.IN to.*.PO.ASN si_wms_manh_asnitem_inb IN22M from to.*.BatchMaster si_bacchus_manh_asnresp_outb si_bacchus_manh_asnenrich_outb to.*.Shipment si_wms_manh_batchmaster_inb route_not_found si_wms_manh_shipment_inb OUT32M si_bacchus_manh_stopresp_outb si_wms_manh_pix_outb IN29M si_bacchus_manh_asncancel_inb to.ER2.PD2.PIX si_bacchus_manh_lot_outb Схема интеграции OP с WMOS, ORD, OMS, SAP ERP и NQ DC: ActiveMQ WMOS SAP PI ORD to.OP.ShipConfirm si_wms_ma_import_order_inb to.OP.MISC to.*.Appointment OP si_wms_ma_get_trip_inb si_wms_ma_get_trip_answer_outb si_wms_ma_confirm_trip_inb si_wms_ma_status_trip_inb to.ORD.OT1 si_wms_ma_import_order_outb to.ORD.OT2 si_wms_ma_get_trip_outb to.OP.OT2.Response si_wms_ma_get_trip_answer_inb to.ORD.OT3 si_wms_ma_status_trip_outb to.ORD.OT5.Delete si_wms_ma_delete_order_outb to.ORD.OT5.Update si_wms_ma_update_order_outb to.ORD.OT7 si_wms_ma_realize_action_outb si_wms_ma_delete_order_inb si_wms_ma_update_order_inb si_wms_ma_realize_action_inb OMS to.OMS.OT3 DO_from si_wms_ma_status_trip_outb si_oms_status_trip_inb si_wms_manh_do_inb si_wms_manh_pix_outb SAP ERP route_not_found from to.OP.MOR to.ER2.PD2.PIX si_wms_manh_mor_inb si_erp_manh_do_outb si_wms_manh_rot_inb si_erp_manh_pix_docnl_inb si_posx_mor_outb si_wms_manh_pbl_inb NQ DC to.NQ.SCM to.NQ.select_export_file mi_select_export_file_outb SCM / PBL / ROT mi_import_blob_inb to.OP.AsnCreate si_wms_manh_asnitem_inb ASN Item/LPN Level mi_select_export_file_doc_outb JDA Схема интеграции WMOS с Hadoop, СОМ, X5Транспорт, NQ DC, WMOS, ФК, OMS, JDA и SAP HR: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 7 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик ActiveMQ WMOS to.ER2.PD2.ASN SAP PI ASN Verify to.ER2.PD2.PIX SAP ERP si_wms_manh_po_inb si_erp_manh_po_outb si_wms_manh_asnitem_outb Hadoop si_wms_manh_po_inb si_wms_manh_pix_outb si_pd_manh_asnvrf_inb СОМ mi_import_blob_inb X5Транспорт to.ER2.PD2.ShipConfirm si_wms_manh_shipconf_outb SM6 si_mfp_sm6_inb NQ DC mi_import_blob_inb mi_select_export_file_doc_outb WMOS JDA si_wms_manh_asnitem_inb si_wms_manh_shipconf_outb si_wms_manh_asnitem_inb to.*.PO.ASN ФК from to.*.DO si_fk_scm_outb OMS route_not_found si_wms_distrib_order_inb si_oms_distrib_order_outb si_wms_manh_umf_outb si_jda_manh_umf_inb si_wms_manh_req_inb si_hr_manh_req_outb JDA to.JDA Остатки to.ReqProc SAP HR from.ReqProc to.PD2.HR2.response si_wms_manh_resp_outb Ответ на запрос si_posx_blg_inb 3 Описание процесса потоков данных В процессе интеграции участвуют системы: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 8 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик SAP ERP - система управления ресурсами предприятия – необходимо подразумевать все ключевые бизнес-процессы, которые необходимы для функционирования компании: финансы, производство, поставки, закупки и другие задачи. NQ DC – хранилище данных РЦ под управлением Exceed. SAP PD - отдельный компонент внутри BI-системы, предназначенный для работы с данными POS-систем (получение, хранение, обработка, отправка в другие системы) JDA - система управления цепочками поставок, решений для организации мерчендайзинга и совершенствования ценообразования. SAP PI - это промежуточное программное обеспечение, обеспечивающее бесшовную интеграцию между SAP и не-SAP-приложениями в компании или с системами за пределами компании. ActiveMQ - брокер сообщений с открытым исходным кодом (распространяется под лицензией Apache 2.0), реализующий спецификацию JMS. WMOS – система управления складскими предприятиями. СОМ (ADVM) – система оперативного мониторинга, предназначена для ведения и учета грузоперевозок. ORD (TMS) - логистическая платформа, использующая технологии, чтобы помогать предприятиям планировать, выполнять и оптимизировать физическое перемещение товаров, как входящих, так и исходящих, а также обеспечивать соответствие поставки требованиям и наличие нужной документации. OP – система, разработанная на базе Oracle. Предназначена для интеграции с ORD через ActiveMQ и SAP PI. SAP HR - автоматизация системы управления кадрами предприятия. Кадуцей - интеграционная шина между системами X5 и платформой Меркурий. Бахус – интеграционная шина между системами X5 и платформой ЕГАИС. Hadoop (BigData) – система хранения и обработки больших объемов данных OMS (5Post) - федеральная логистическая компания в составе X5 Retail Group. Фабрика кухни (ФК) – предприятия по доставке готовой продукции. X5Транспорт – это гибкая цифровая платформа сфокусированная на эффективности транспортной логистики для торговых сетей, импорта и внутренних пользователей. Сообщения можно разделить по направлению движения относительно системы WMOS на: входящие исходящие Для входящих сообщений во WMOS формируются jms-атрибуты DEST и TYPE в SAP PI. DEST содержит код завода SAP, на который отправлено сообщение, а TYPE наименование бизнессущности. Эти параметры используются в ActiveMQ для определения целевой очереди, из которой Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 9 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик WMOS забирает сообщения. Если не удается определить целевую очередь, то сообщения отправляются в очередь route_not_found. Маршрутизация настраивается на сервере ActiveMQ в конфигурационном файле /activemq/apacheactivemq-5.12.0/conf/activemq.xml. Для исходящих сообщений из WMOS определение получателя выполняется в SAP PI в зависимости от значений определенных тегов (см. поле «Conditions в ICO» в Таблице 1). Для входящих сообщений во WMOS генерируется ответное сообщение (response), содержащее информацию о результате обработки сообщений во WMOS. Если сообщение успешно обработано, то response направляется в очередь WMOS.Response.success в ActiveMQ, если сообщение обработано с ошибкой, то response направляется в очередь {трехбуквенный_идентификатор_WMOS}.Response.error в ActiveMQ. Два раза в день (00:00 и 12:00) выполняется автоматическая очистка очередей WMOS.Response.success и TEMP java-программой, которая запускается с серверов ActiveMQ (mskdpro-app561 и msk-dpro-app562) планировщиком заданий crontab. Очередь {трехбуквенный_идентификатор_WMOS}.Response.error раз в минуту обрабатывается java-программой. Результат обработки (текст ошибки) отправляется на почту проектной команды средствами Zabbix, а ошибочный response отправляется в очередь {трехбуквенный_идентификатор_WMOS}.Response.error.checked, так как может использоваться проектной командой для анализа ошибок при обработке сообщений во WMOS. Для интеграции WMOS с TMS (ORD) был разработан Order Processor (OP). Отдельной схемой в п. 2 представлена интеграция WMOS с Кадуцей. Для отгрузок используются уже существующие потоки V13 и V14. Для приемок были разработаны новые интеграционные потоки V42-V46. Отдельной схемой в п. 2 представлена интеграция WMOS с Бахус. Была разработана java-программа, которая обрабатывает запросы из PD/ERP/HR и отправляет ответы на запросы. Интеграционная схема по типу запрос-ответ подробна описана в п.4. Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 10 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик 4 Перечень потоков данных Реестр ICO представлен ниже в виде двух таблиц: Таблица 1. «Параметры ICO» № Систем Sender Sender SenderChannel Система а Interface NameSpace получатель отправ итель 1 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se bs_wmos h_class_out /erp nder_x06 b 2 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se bs_wmos h_do_outb /erp nder_x06 3 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se h_facility_o /erp nder_x06 utb 4 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se h_items_ou /erp nder_x06 tb 5 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se h_partners /erp nder_x06 _outb 6 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se h_po_outb /erp nder_x06 Conditions в ICO (при наличии) - - bs_wmos - bs_wmos - bs_wmos - bs_wmos - bc_hadoop - bs_wmos 15 BS_ER2 si_erp_dlv_ http://x5.ru cc_er_soap_xi_se outb :posx nder_x06 bs_wmos om_dlv_to_dest_system 16 BS_ER2 si_erp_slc_ http://x5.ru cc_er_soap_xi_se outb /erp nder_x06 bs_wmos om_slc_to_dest_system 17 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se h_prod_life /erp nder_x06 _outb 18 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se h_req_outb /erp nder_x06 bs_wmos - bs_wmos - bs_wmos bs_wmos bs_wmos bs_wmos bs_wmos bs_wmos Receiver Interface Receiver Receiver Chanel NameSpace om_wms_ma_cl si_wms_ma http://x5.ru/w cc_wms_ma_jm assificationcode nh_class_in mos s_receiver_x06 b om_wms_ma_d si_wms_ma http://x5.ru/w cc_wms_ma_do o nh_do_inb mos _jms_receiver_x 06 om_wms_ma_f si_wms_ma http://x5.ru/w cc_wms_ma_jm acility nh_facility_i mos s_receiver_x06 nb om_wms_ma_it si_wms_ma http://x5.ru/w cc_wms_ma_jm em nh_items_in mos s_receiver_x06 b om_wms_ma_b si_wms_ma http://x5.ru/w cc_wms_ma_jm usinesspartneru nh_partners mos s_receiver_x06 pdate _inb om_wms_ma_p si_wms_ma http://x5.ru/w cc_wms_ma_jm o nh_po_inb mos s_receiver_x06 si_wms_ma http://x5.ru/w cc_wms_ma_ha nh_po_inb mos doop_rest_rece iver_x06 om_wms_ma_r si_wms_ma http://x5.ru/w cc_wms_ma_jm elationship nh_relation mos s_receiver_x06 _inb om_wms_ma_c si_wms_ma http://x5.ru/w cc_wms_ma_jm arrier nh_carrier_i mos s_receiver_x06 nb om_wms_ma_d si_wms_ma http://x5.ru/w cc_wms_ma_jm river nh_drivers_i mos s_receiver_x06 nb om_wms_ma_e si_wms_ma http://x5.ru/w cc_wms_ma_jm quipment nh_equip_i mos s_receiver_x06 nb om_transport_order_dest_s om_wms_ma_a si_wms_ma http://x5.ru/w cc_wms_ma_jm ystem ppointment nh_appoint mos s_receiver_x06 _inb om_erp_etrn_d si_wms_ma http://x5.ru/w cc_wms_ma_jm card_to_wms nh_drivers_i mos s_receiver_x06 nb om_wms_ma_d si_wms_ma http://x5.ru/w cc_wms_ma_jm esadv_to_asnite nh_asnitem mos s_receiver_x06 m _inb om_mor_to_dest_system om_wms_ma_ si_wms_ma http://x5.ru/w cc_wms_ma_jm mor_to_mor nh_mor_inb mos s_receiver_x06 7 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se h_relation_ /erp nder_x06 outb 8 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se h_carrier_o /erp nder_x06 utb 9 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se h_drivers_o /erp nder_x06 utb 10 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se h_equip_ou /erp nder_x06 tb 11 BS_ER2 si_transpor http://x5.ru cc_er_soap_xi_se t_order_po :posx nder_b_x06 sx_outb 12 BS_ER2 si_erp_etrn http://x5.ru cc_er_soap_xi_se _dcard_wm /erp nder_x06 os_outb 13 BS_ER2 si_erp_man http://x5.ru cc_er_soap_xi_se h_asnitem_ /erp nder_x06 outb 14 BS_ER2 si_posx_mo http://x5.ru cc_er_soap_xi_se r_outb :posx nder_b_x06 bs_wmos Operarion Mapping (при наличии) - om_wms_ma_a si_wms_ma http://x5.ru/w cc_wms_ma_jm ppointment_dlv nh_appoint mos s_receiver_x06 _inb om_wms_ma_p si_wms_ma http://x5.ru/w cc_wms_ma_jm roduct_life nh_product mos s_receiver_x06 _life_inb om_wms_ma_p si_wms_ma http://x5.ru/w cc_wms_ma_jm rod_life nh_product mos s_receiver_x06 _life_inb om_wms_ma_e si_wms_ma http://x5.ru/w cc_wms_ma_jm rp_req nh_req_inb mos s_req_receiver_ x06 Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 11 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность si_erp_man http://x5.ru cc_er_soap_xi_se 19 BS_ER2 h_asn_po_ /erp nder_x06 outb bs_wmos bs_op Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик om_wms_ma_a si_wms_ma http://x5.ru/w cc_wms_ma_jm snitem_cancel nh_asnitem mos s_receiver_x06 _inb count(//ASNID[text()]) ≠ 0 om_wms_ma_p si_wms_ma http://x5.ru/w cc_wms_ma_jm o_cancel nh_po_inb mos s_receiver_x06 count(//ASNID[text()]) = 0 om_wms_ma_p si_wms_ma http://x5.ru/w cc_wms_ma_jm o_cancel nh_po_inb mos s_receiver_x06 om_wms_ma_a mi_posx_zq http://x5.ru:p cc_er_soap_xi_r sn_to_qm m_inb osx eceiver_x07 20 21 22 23 24 25 count(//ASNDetail/Purchase om_wms_ma_a si_erp_man http://x5.ru/er cc_er_soap_xi_r OrderID[text()]) ≠ 0 snstatus h_asnstatus p eceiver_x07 _inb count(//ASNDetail/Purchase om_wms_etrn_ si_erp_etrn http://x5.ru:p cc_er_soap_xi_r BS_ER2 OrderID[text()]) ≠ 0 AND gp_to_erp _gp_wmos_ osx eceiver_x07 (//ASN/CustomFieldList/Cus inb si_wms_ma bs_wm http://x5.ru cc_wms_ma_jms_ tomField/Name[text()='ETR nh_asnitem os /wmos asn_sender_x07 N']) and _outb (//ASN/CustomFieldList/Cus tomField/Value[stringlength(text())>0]) EX BS_PD2 om_wms_ma_a si_pd_manh http://x5.ru/xi cc_pd_soap_xi_ snvrf_pd _asnvrf_inb /pd receiver_x07 /tXML/Header/Action_Type bc_hadoop om_wms_ma_a si_pd_manh http://x5.ru/xi cc_wms_ma_ha = Update snvrf_pd _asnvrf_inb /pd doop_rest_rece iver_x07 /tXML/Header/IS_VET = 1 om_wms_ma_ si_merc_su http://x5.ru/er cc_rest_merc_ AND merc_req ppl_pvetdoc p manh_req_rece /tXML/Header/Destination _req_inb iver_x07 = PREMERCURY bs_merc /tXML/Header/IS_VET = 1 om_wms_ma_ si_merc_su http://x5.ru/er cc_rest_merc_ AND merc_confirm_t ppl_confirm p manh_confirm_ /tXML/Header/Destination mp _inb receiver_x07 = RECCONFMERCURY si_wms_ma cc_wms_ma_jms_ bs_wm http://x5.ru /tXML/Header/IS_ALCO = 1 om_wms_ma_b si_bacchus_ http://x5.ru/er cc_rest_bacchu nh_asnitem merc_bacchus_in os /wmos AND acchus_preasn manh_preas p s_manh_in21_r _outb _sender_x07 /tXML/Header/Destination n_inb eceiver_x07 = PREMERCURY AND /tXML/Message/ASN/Refer bs_bacchus enceField8 = PRERECEGAIS /tXML/Header/IS_ALCO = 1 om_wms_ma_b si_bacchus_ http://x5.ru/er cc_rest_bacchu AND acchus_recconf manh_recco p s_manh_in24_r /tXML/Header/Destination nf_inb eceiver_x07 = RECCONFEGAIS bs_merc /tXML/Header/IS_VET = 1 om_wms_ma_ si_merc_shi http://x5.ru/er cc_rest_merc_ merc_ship_crea p_create_in p manh_ship_cre te b ate_receiver_x0 si_wms_ma cc_wms_ma_jms_ bs_wm http://x5.ru 7 nh_asnitem merc_bacchus_ou os /wmos _outb t_sender_x07 bs_bacchus /tXML/Header/IS_ALCO = 1 om_wms_ma_b si_bacchus_ http://x5.ru/er cc_rest_bacchu acchus_shiprea manh_shipr p s_manh_out31_ dy eady_inb receiver_x07 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ BS_ER2 om_wms_ma_s mi_sqt_inb http://x5.ru:p cc_er_soap_xi_r os nh_sqt_out /wmos sqt_sender_x07 qt osx eceiver_x07 b bs_wm ZSTOCKIN.Z urn:sap- cc_wms_ma_jms_ BS_ER2 om_wms_ma_z ZSTOCKIN.Z http://x5.ru/w cc_er_idoc_rece os STOCK02 com:docum zstock_sender_x0 stock STOCK02 mos iver_gk_x07 ent:sap:ido 7 c:messages /tXML/Header/Source = om_wms_ma_a si_erp_man http://x5.ru/er cc_er_soap_xi_r PO_CNL sn_po_cancel_r h_asn_po_r p eceiver_x07 si_wms_ma cc_wms_ma_jms_ esp esp_inb bs_wm http://x5.ru nh_respons response_sender_ BS_ER2 os /wmos /tXML/Header/Source = om_wms_ma_n si_erp_man http://x5.ru/er cc_er_soap_xi_r e_outb x07 NO_MD o_md_resp h_no_md_r p eceiver_x07 esp_inb Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 12 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик BS_ER2 /tXML/Message/PIX/Transa om_wms_ma_p si_erp_man http://x5.ru/er cc_er_soap_xi_r ctionType = 601 ix_do_cancel h_pix_docnl p eceiver_x07 _inb BS_PD2 /tXML/Message/PIX/Transa om_wms_ma_p si_pd_manh http://x5.ru/xi cc_pd_soap_xi_ ctionType = 300 OR ix_inv _pix_inv_in /pd receiver_x07 /tXML/Message/PIX/Transa b ctionType = 606 OR /tXML/Message/PIX/Transa ctionType = 613 OR /tXML/Message/PIX/Transa ctionType = 200 INTEGRATION om_wms_ma_s mi_import_ http://x5.ru:p cc_pi_soap_java si_wms_ma bs_wm http://x5.ru cc_wms_ma_jms_ _ENGINE_JAV /tXML/Message/PIX/Transa m1 blob_inb osx _receiver_b_x0 26 nh_pix_out os /wmos pix_sender_x07 A_PE2 7 b ctionType = 611 AND INTEGRATION /tXML/Message/PIX/Transa om_wms_ma_s mi_import_ http://x5.ru:p cc_pi_soap_java ctionCode = 04 _ENGINE_JAV m1 blob_inb osx _receiver_b_x0 A_PE2 7 bs_merc /tXML/Message/PIX/Transa om_wms_ma_ si_merc_su http://x5.ru/er cc_rest_merc_ ctionType = 617 AND merc_discard ppl_pvtdc_d p manh_discard_r count(//PIXFields/Reference iscard_inb eceiver_x07 10[text()]) ≠ 0 bs_bacchus /tXML/Message/PIX/Transa om_wms_ma_b si_bacchus_ http://x5.ru/er cc_rest_bacchu ctionType = 617 AND acchus_asncanc manh_asnc p s_manh_in29_r count(//PIXFields/Reference el ancel_inb eceiver_x07 9[text()]) ≠ 0 count(//Stop/ReferenceFiel om_wms_ma_s DELINF.DEL urn:sapcc_er_idoc_fro d4[text() = 'GK']) ≠ 0 hipconf_delinf VRY05.DELV com:documen mpayload_recie RY05 t:sap:idoc:mes ver_x07 sages om_wms_ma_tt si_posx_ttn http://x5.ru/er cc_er_soap_xi_r n _inb p eceiver_x07 count(//Orders[OrderDestIn om_wms_ma_e si_erp_etrn http://x5.ru:p cc_er_soap_xi_r fo/DestFacilityETRN = '1' trn_go_to_erp _go_wmos_ osx eceiver_x07 and inb OrderOriginInfo/OrigFacility ETRN = '1' and CarrierETRN = '1' and DriverETRN = '1' and OrderDestInfo/DestFacilityA liasId != InternalWH]) ≠ 0 BS_PD2 om_wms_ma_s si_pd_manh http://x5.ru/xi cc_pd_soap_xi_ si_wms_ma cc_wms_ma_jms_ hipconf_pd _shipconf_i /pd receiver_x07 bs_wm http://x5.ru 27 nh_shipcon shipconf_sender_ nb os /wmos f_outb x07 INTEGRATION count(//Stop/ReferenceFiel om_wms_ma_s si_wms_ma http://x5.ru:p cc_pi_soap_java _ENGINE_JAV d9[text()]) ≠ 0 hipconf_anr -> nh_shipconf osx _receiver_b_x0 A_PE2 om_wms_ma_s _inb -> 7 hipconf_anr_v2 mi_import_ blob_inb INTEGRATION om_wms_ma_s mi_import_ http://x5.ru:p cc_pi_soap_java _ENGINE_JAV m6 blob_inb osx _receiver_b_x0 A_PE2 7 INTEGRATION om_wms_ma_s mi_import_ http://x5.ru:p cc_pi_soap_java _ENGINE_JAV m6 blob_inb osx _receiver_b_x0 A_PE2 7 bc_mfp om_wms_ma_s si_mfp_sm6 http://x5.ru:p cc_mfp_rest_s m6_to_mfp _inb osx m6_receiver_x0 7 bs_wmos count(//Stop/ReferenceFiel om_wms_ma_s si_wms_ma http://x5.ru/w cc_wms_ma_jm d4[text() = 'WMOS']) ≠ 0 hipconf_asn nh_asnitem mos s_receiver_x07 _inb 28 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ BS_PD2 om_wms_ma_s si_pd_manh http://x5.ru/xi cc_pd_soap_xi_ os nh_shipcon /wmos shipconf_pd2_sen hipconf_pd _shipconf_i /pd receiver_x07 f_outb der_x07 nb 29 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ bs_merc om_wms_ma_s si_merc_shi http://x5.ru/er cc_rest_merc_ os nh_shipcon /wmos shipconf_merc_se hipconf_v13 p_create_in p manh_ship_cre f_outb nder_x07 b BS_ER2 Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 13 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик ate_receiver_x0 7 30 BS_PD mi_posx_re http://x5.ru cc_pd_soap_xi_se 2 q_outb :posx nder_x04 bs_wmos 31 BS_HR si_hr_manh http://x5.ru cc_hr_soap_xi_se 2_501 _req_outb /hr nder_x04 bs_wmos BS_PD2 si_wms_ma bs_wm http://x5.ru cc_wms_ma_jms_ 32 nh_resp_ou os /wmos resp_sender_x07 BS_HR2_501 tb bs_wmos 33 si_pd_man BS_PD http://x5.ru cc_pd_soap_xi_se h_asnitem_ 2 /xi/pd nder_x04 outb 34 BS_PD si_pd_man http://x5.ru cc_pd_soap_xi_se 2 h_asnlpn_o /xi/pd nder_x04 utb 35 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ os nh_bnn_ou /wmos bnn_pd2_sender_ tb x07 36 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ os _import_or /wmos OT1_sender_x07 der_outb 37 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ os _get_trip_o /wmos OT2_sender_x07 utb bs_op bs_wmos BS_PD2 bs_otd_* bs_otd_* bs_wmos si_wms_ma bs_otd http://x5.ru 38 _get_trip_a cc_dummy_sync _* /wmos nswer_outb bs_otd_* 39 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ os _status_trip /wmos OT3_sender_x07 _outb 40 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ os _delete_or /wmos OT5_delete_send der_outb er_x07 41 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ os _update_or /wmos OT5_update_send der_outb er_x07 bs_otd_* 42 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ os _realize_ac /wmos OT7_sender_x07 tion_outb 43 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ os _status_trip /wmos oms_ot3_sender_ _outb x07 44 bs_wm si_wms_ma http://x5.ru cc_wms_ma_jms_ os nh_cancelc /wmos cnlcert_merc_sen ert_outb der_x07 45 bc_mer si_merc_shi http://x5.ru cc_rest_merc_shi c p_create_r /erp p_create_reply_1 eply_outb 4_x07 46 bc_mer si_merc_m http://x5.ru cc_rest_merc_ma c anh_upload /erp nh_suppl_upload_ _outb sender_x07 bs_otd_* bs_otd_* bs_otd_* bc_oms bc_merc bs_wmos bs_wmos /p1:mt_req/@SYSTEM_TYP om_wms_ma_r si_wms_ma http://x5.ru/w cc_wms_ma_jm E = WMO eq nh_req_inb mos s_req_receiver_ x04 om_wms_ma_h si_wms_ma http://x5.ru/w cc_wms_ma_jm r_req nh_req_inb mos s_req_receiver_ x04 /tXML/Header/Destination om_wms_ma_r si_pd_manh http://x5.ru/xi cc_pd_soap_xi_ = BS_PD2 esp_doc _doc_inb /pd receiver_x07 /tXML/Header/Destination om_wms_ma_r si_posx_blg http://x5.ru/h cc_hr_soap_xi_r = BS_HR2_501 esp_blg _inb r eceiver_x07 /p1:mt_wms_ma_asnitem/ om_wms_ma_a si_wms_ma http://x5.ru/w cc_wms_ma_jm ASN/IS_ZVTO = 0 snitem_pd nh_asnitem mos s_receiver_x04 _inb om_wms_ma_a si_wms_ma http://x5.ru/w cc_wms_ma_jm snitem_pd nh_asnitem mos s_receiver_x04 _inb /p1:mt_wms_ma_asnitem/ ASN/IS_ZVTO = 1 om_wms_ma_a si_wms_ma http://x5.ru/w cc_wms_ma_jm snitem_appt nh_appoint mos s_receiver_x04 _inb om_wms_ma_a si_wms_ma http://x5.ru/w cc_wms_ma_jm snlpn_pd nh_asnitem mos s_receiver_x04 _inb om_wms_ma_b si_pd_manh http://x5.ru/xi cc_pd_soap_xi_ nn _bnn_inb /pd receiver_x07 /p1:mt_wms_ma_import_o om_wms_ma_i si_wms_ma http://x5.ru/o cc_otd_soap_re rder/@server_name = * mport_order_to _import_or rd ceiver_x07 _ord der_inb /p1:mt_wms_ma_import_o om_wms_ma_g si_wms_ma http://x5.ru/o cc_otd_from_w rder/@server_name = * et_trip_from_or _get_trip_in rd mos_sync_recei d_to_wmos b ver_soap_x07 om_wms_ma_g si_wms_ma http://x5.ru/w cc_wms_ma_jm et_trip_answer _get_trip_a mos s_OT2_resp_rec nswer_inb eiver_x07 /s:Envelope/s:Body/p:Send om_wms_ma_a si_wms_ma http://x5.ru/o cc_otd_from_w MessageResponse/p:SendM uto_confirm_tri _confirm_tri rd mos_receiver_s essageResult ≈ *<code* p_to_ord p_inb oap_x07 /p1:mt_wms_ma_import_o om_wms_ma_s si_wms_ma http://x5.ru/o cc_otd_soap_re rder/@server_name = * tatus_trip _status_trip rd ceiver_x07 _inb /p1:mt_wms_ma_import_o om_wms_ma_d si_wms_ma http://x5.ru/o cc_otd_soap_re rder/@server_name = * elete_order _delete_ord rd ceiver_x07 er_inb /p1:mt_wms_ma_import_o om_wms_ma_u si_wms_ma http://x5.ru/o cc_otd_soap_re rder/@server_name = * pdate_order _update_or rd ceiver_x07 der_inb /p1:mt_wms_ma_import_o om_wms_ma_r si_wms_ma http://x5.ru/o cc_otd_soap_re rder/@server_name = * ealize_action _realize_act rd ceiver_x07 ion_inb om_status_trip si_oms_stat http://x5.ru/o cc_rest_oms_st _wmos_to_oms us_trip_inb ms atus_trip_receiv er_x07 om_wms_ma_ si_merc_shi http://x5.ru/er cc_rest_merc_ merc_cancelcer p_vet_with p manh_withdra t draw_inb w_receiver_x07 /p1:mt_merc_ship_create_r om_wms_ma_l si_wms_ma http://x5.ru/w cc_wms_ma_jm eply/body/SystemType = pn_v14 nh_lpn_inb mos s_v14_receiver_ WMOS x07 om_wms_ma_ si_wms_ma http://x5.ru/w cc_wms_ma_jm merc_upload nh_asnitem mos s_receiver_x07 _inb Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 14 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность 47 bc_mer si_merc_m http://x5.ru cc_rest_merc_ma c anh_conf_p /erp nh_conf_push_se ush_outb nder_x07 48 bc_mer si_merc_39 http://x5.ru cc_rest_merc_39_ c _errors_out /erp errors_sender_x0 b 7 49 bs_pos mi_select_e http://x5.ru cc_posx_soap_sen x_doc xport_file_ :posx der_doc_x02 doc_outb 50 51 52 53 54 55 Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик bs_wmos - om_wms_ma_ si_wms_ma http://x5.ru/w cc_wms_ma_jm merc_push nh_lpn_inb mos s_receiver_x07 bs_wmos /p1:mt_merc_39_errors/bo dy/SystemType = WMOS bs_wmos om_oms_distrib_order_to_ om_oms_distrib si_wms_dist http://x5.ru/w cc_wms_ma_jm dc _order_to_wms rib_order_i mos s_receiver_x07 nb p1:mt_fk_doc/@SYSTEM_T om_wms_ma_f si_wms_ma http://x5.ru/w cc_wms_ma_jm YPE = WMOS k_asnitem nh_asnitem mos s_receiver_x04 _inb si_wms_ma http://x5.ru/w cc_wms_ma_jm nh_merc_er mos s_merc_errors_ ror_inb receiver_x07 bs_wmos om_extend_export_file_doc om_wms_ma_d si_wms_ma http://x5.ru/w cc_wms_ma_jm _outb oc_to_asn nh_asnitem mos s_receiver_x02 _inb bs_wmos /p1:mt_select_export_file/r om_wms_ma_p si_wms_ma http://x5.ru/w cc_wms_ma_jm ow/PARAMETERS/rows/par bl_to_pbl nh_pbl_inb mos s_receiver_x07 ameter[@NAME='SYSTEM_ CODE']/@VALUE = WMOS AND /p1:mt_select_export_file/r ow/CHNG_TYPE = PBL /p1:mt_select_export_file/r om_wms_ma_r si_wms_ma http://x5.ru/w cc_wms_ma_jm mi_select_e cc_wms_ma_jms_ bs_wm http://x5.ru ow/PARAMETERS/rows/par ot_to_rot nh_rot_inb mos s_receiver_x07 xport_file_ for_nq_sender_x0 os :posx ameter[@NAME='SYSTEM_ outb 7 CODE']/@VALUE = WMOS AND /p1:mt_select_export_file/r ow/CHNG_TYPE = ROT INTEGRATION /p1:mt_select_export_file/r im_select_expo mi_import_ http://x5.ru:p cc_pi_soap_java _ENGINE_JAV ow/PARAMETERS/rows/par rt_dc_to_dc blob_inb osx _receiver_b_x0 A_PE2 ameter[@NAME='SYSTEM_ 7 CODE']/@VALUE ≠ WMOS bs_bac si_bacchus http://x5.ru cc_rest_bacchus_ bs_wmos om_wms_ma_b si_wms_ma http://x5.ru/w cc_wms_ma_jm chus _manh_sto /erp manh_32_sender acchus_stopres nh_shipmen mos s_receiver_x07 presp_outb _x07 p t_inb bs_bac si_bacchus http://x5.ru cc_rest_bacchus_ bs_wmos om_wms_ma_b si_wms_ma http://x5.ru/w cc_wms_ma_jm chus _manh_asn /erp manh_22_sender acchus_asnresp nh_asnitem mos s_receiver_x07 resp_outb _x07 _inb om_wms_ma_b si_wms_ma http://x5.ru/w cc_wms_ma_jm acchus_asnenric nh_asnitem mos s_receiver_x07 si_bacchus cc_rest_bacchus_ h _inb bs_bac _manh_asn http://x5.ru manh_23_sender bs_wmos chus enrich_out /erp om_wms_ma_b si_wms_ma http://x5.ru/w cc_wms_ma_jm _x07 b acchus_lot nh_batchm mos s_receiver_x07 aster_inb bs_bac si_bacchus http://x5.ru cc_rest_bacchus_ bs_wmos om_wms_ma_b si_wms_ma http://x5.ru/w cc_wms_ma_jm chus _manh_lot /erp manh_rep90_sen acchus_lot_out nh_batchm mos s_receiver_x07 _outb der_x07 b aster_inb bs_jda_prod om_wms_ma_a si_umf_inb http://x5.ru/er cc_jda_receiver mq_umf p _prod_amq_x0 si_wms_ma bs_wm http://x5.ru cc_wms_ma_jms_ 7 nh_umf_ou os /wmos umf_sender_x07 bs_jda_prepr om_wms_ma_a si_umf_inb http://x5.ru/er cc_jda_receiver tb od mq_umf p _rcod_amq_x07 56 bc_om si_oms_dist http://x5.ru cc_oms_rest_distr s rib_order_o /oms ib_order_sender_ utb x07 57 BS_FK2 si_fk_scm_ http://x5.ru cc_er_soap_xi_se outb /erp_fk nder_x04 bs_wmos - Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 15 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Таблица 2. «Descriptions для ICO в таблице 1» № Sender Interface Description 1 si_erp_manh_class_outb Передача из ERP во WMOS вспомогательных справочников 2 si_erp_manh_do_outb Передача из ERP во WMOS заказов на отгрузку 3 si_erp_manh_facility_outb Передача из ERP во WMOS информации о магазинах и компаниях 4 si_erp_manh_items_outb Передача из ERP во WMOS информации о товарах 5 si_erp_manh_partners_outb Передача из ERP во WMOS информации о внешних поставщиках 6 si_erp_manh_po_outb Передача из ERP во WMOS заказов на закупку 7 si_erp_manh_relation_outb Передача из ERP во WMOS информации по внешним поставщикам, перевозчикам 8 si_erp_manh_carrier_outb Передача из ERP во WMOS информации о перевозчиках 9 si_erp_manh_drivers_outb Передача из ERP во WMOS информации о водителях 10 si_erp_manh_equip_outb Передача из ERP во WMOS информации о транспортных средствах 11 si_transport_order_posx_outb Заказы на транспорт 12 si_erp_etrn_dcard_wmos_outb Передача из ERP во WMOS информации о водителях 13 si_erp_manh_asnitem_outb Передача из ERP во WMOS DESADV/UPD 14 si_posx_mor_outb Минимальный заказ 15 si_erp_dlv_outb Заявки на заказ автотранспорта 16 si_erp_slc_outb Централизация сроков годности на РЦ (Shelf Life Control) 17 si_erp_manh_prod_life_outb Выгрузка ОСГ из ERP во WMOS 18 si_erp_manh_req_outb Запрос из ERP во WMOS на повторный экспорт документов 19 si_erp_manh_asn_po_outb Отправка из ERP во WMOS отмены/закрытия ЗЗ и ASN 20 si_wms_manh_asnitem_outb Отправка из WMOS сообщений приёмки 21 si_wms_manh_asnitem_outb Отправка информации по приемке во WMOS в Кадуцей и Бахус 22 si_wms_manh_asnitem_outb Отправка информации по отгрузкам из WMOS в Кадуцей и Бахус 23 si_wms_manh_sqt_outb Передача из WMOS в ERP остатков и квантов 24 ZSTOCKIN.ZSTOCK02 Отправка из WMOS в ERP айдока ZSTOCKIN 25 si_wms_manh_response_outb Отправка response-сообщений из WMOS в ERP 26 si_wms_manh_pix_outb Отправка из WMOS сообщений PIX 27 si_wms_manh_shipconf_outb Передача из WMOS подтверждения отгрузки 28 si_wms_manh_shipconf_outb Отгрузки по заявкам на списание 29 si_wms_manh_shipconf_outb Отгрузка из WMOS в Кадуцей 30 mi_posx_req_outb Запрос реестра документов 31 si_hr_manh_req_outb Отправка запроса из SAP HR во WMOS на выгрузку информации о выработке сотрудников 32 si_wms_manh_resp_outb Отправка ответов из WMOS на запрос от HR и PD 33 si_pd_manh_asnitem_outb Возвраты алкопродукции и вторсырья во WMOS 34 si_pd_manh_asnlpn_outb Возвраты из магазинов во WMOS 35 si_wms_manh_bnn_outb Списание зеленых бананов во WMOS 36 si_wms_ma_import_order_outb Отправка из OP в ORD заявок на транспорт 37 si_wms_ma_get_trip_outb Отправка из OP в ORD запросов на получение рейсов 38 si_wms_ma_get_trip_answer_outb Отправка из ORD в OP информации о доступных рейсах 39 si_wms_ma_status_trip_outb Отправка из OP в ORD статусов рейсов 40 si_wms_ma_delete_order_outb Отправка из OP в ORD информации об удалении заявок на транспорт 41 si_wms_ma_update_order_outb Отправка из OP в ORD информации об изменении заявок на транспорт Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 16 из 45 Управление по операционной деятельности Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Название документа Версия документа, дата Автор, должность 42 si_wms_ma_realize_action_outb Отправка из OP в ORD фактической даты загрузки машины 43 si_wms_ma_status_trip_outb Отправка из wmos в OMS статусов рейсов 44 si_wms_manh_cancelcert_outb Отмена сертификатов отгрузки 45 si_merc_ship_create_reply_outb Меркурий. №14. Результаты отгрузки/fromCaduceus/ship/vetdoc/create/push (из Кадуцей) 46 si_merc_manh_upload_outb Поток V43 из Кадуцей во WMOS 47 si_merc_manh_conf_push_outb Поток V45 из Кадуцей во WMOS 48 si_merc_39_errors_outb Передает данные, оповещение об ошибках в процессе обработки запросов, из платформы Кадуцей 49 mi_select_export_file_doc_outb Экспорт файла из NQ 50 mi_select_export_file_outb Отправка из OP сообщений ROT, PBL и SCM 51 si_bacchus_manh_stopresp_outb Отправка из Бахус во WMOS данных по потоку OUT32M 52 si_bacchus_manh_asnresp_outb Отправка из Бахус во WMOS данных по потоку IN22M 53 si_bacchus_manh_asnenrich_outb Отправка из Бахус во WMOS данных по потоку IN23M 54 si_bacchus_manh_lot_outb Отправка из Бахус во WMOS данных по потоку REP90M 55 si_wms_manh_umf_outb Передача из WMOS в JDA данных по заводу 56 si_oms_distrib_order_outb OMS: Передача данных по несистемному грузу 57 si_fk_scm_outb Буфер приемки РЦ от фабрики Таблица 3. «Параметры канала и критичность» Данные для Sender и Receiver Channel (при их наличии) Критичность (заполняется бизнеспользователем совместно с сервис-менеджером (выбрать из выпадающего списка)) Другие параметры канала (указать другие параметры, необходимые для настройки продуктивного ICO, если они предусмотрены) USER / PASSWORD (для Sender Channel) USER / PASSWORD (для Receiver Channel) URL (IP) (отправител я) URL (IP) (получателя) - admin / admin x06csdb.sap. x5.ru failover(tcp://msk-dpro-app561: 61616\, tcp://msk-dpro-app562: 61616) admin / admin - failover(tcp:/ /msk-dproapp561: 61616\, tcp://mskdpro-app562: 61616) x07csdb.sap.x5.ru Queue name: from Message Attributes: DEST, TYPE 1 - SLA на доставку до 30 минут Queue name: to.ER2.PD2.ASN 1 - SLA на доставку до 30 минут Queue name: to.ER2.PD2.PIX 1 - SLA на доставку до 30 минут Queue name: to.ER2.PD2.ShipConfirm 1 - SLA на доставку до 30 минут Queue name: to.PD2.ShipConfirm 1 - SLA на доставку до 30 минут Queue name: to.ORD.OT1 1 - SLA на доставку до 30 минут Queue name: to.ORD.OT2 1 - SLA на доставку до 30 минут Queue name: to.ORD.OT3 1 - SLA на доставку до 30 минут Queue name: to.ORD.OT3 1 - SLA на доставку до 30 минут Queue name: to.ORD.OT5.Delete 1 - SLA на доставку до 30 минут Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 17 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность - admin / admin admin / admin - admin / admin - admin / admin x07csdb.sap. x5.ru Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик failover(tcp://msk-dpro-app561: 61616\, tcp://msk-dpro-app562: 61616) x07csdb.sap.x5.ru failover(tcp:/ /msk-dproapp561: 61616\, tcp://mskdpro-app562: 61616) failover(tcp:/ x04csdb.sap.x5.ru /msk-dproapp561: 61616\, tcp://mskdpro-app562: 61616) admin / admin x06csdb.sap. failover(tcp://msk-dpro-app561: x5.ru 61616\, tcp://msk-dpro-app562: 61616) failover(tcp:/ /msk-dproapp561: 61616\, x07csdb.sap.x5.ru tcp://mskdpro-app562: 61616) Queue name: to.ORD.OT5.Update 1 - SLA на доставку до 30 минут Queue name: to.ORD.OT7 1 - SLA на доставку до 30 минут Queue name: to.ER2.sqt 1 - SLA на доставку до 30 минут Queue name: to.OP.OT2.Response 1 - SLA на доставку до 30 минут Queue name: to.JDA 1 - SLA на доставку до 30 минут Queue name: to.PD2.HR2.response 1 - SLA на доставку до 30 минут Queue name: to.ReqProc 1 - SLA на доставку до 30 минут Queue name: to.Caduceus.ASN 1 - SLA на доставку до 30 минут Queue name: to.Caduceus.ShipConfirm 1 - SLA на доставку до 30 минут Queue name: to.ER2.ZSTOCK 1 - SLA на доставку до 30 минут Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 18 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Интеграция из ERP во WMOS/OP (Часть 1): ERP si_erp_manh_class_outb ActiveMQ PI cc_er_soap_xi_sender_x06 si_erp_manh_class_outb om_wms_ma_classificationcode mt_wms_ma_classificationcode si_wms_manh_class_inb mm_wms_ma_classificationcode cc_wms_ma_jms_receiver_x06 ed_wms_ma_classificationcode from dt_wms_ma_classificationcode si_erp_manh_do_outb si_erp_manh_do_outb cc_er_soap_xi_sender_x06 om_wms_ma_do mt_wms_ma_do si_wms_manh_do_inb mm_wms_ma_do cc_wms_ma_do_jms_receiver_x06 ed_wms_ma_do DO_from dt_wms_ma_do si_erp_manh_facility_outb cc_er_soap_xi_sender_x06 si_erp_manh_facility_outb om_wms_ma_facility mt_wms_ma_facility si_wms_manh_facility_inb mm_wms_ma_facility cc_wms_ma_jms_receiver_x06 ed_wms_ma_facility from dt_wms_ma_facility si_erp_manh_items_outb cc_er_soap_xi_sender_x06 si_erp_manh_items_outb om_wms_ma_item mt_wms_ma_item si_wms_manh_items_inb mm_wms_ma_item cc_wms_ma_jms_receiver_x06 ed_wms_ma_item from dt_wms_ma_item si_erp_manh_partners_outb cc_er_soap_xi_sender_x06 si_erp_manh_partners_outb mt_wms_ma_businesspartnerupdate om_wms_ma_businesspartnerupdate si_wms_manh_partners_inb mm_wms_ma_businesspartnerupdate cc_wms_ma_jms_receiver_x06 ed_wms_ma_businesspartnerupdate from dt_wms_ma_businesspartnerupdate si_erp_manh_po_outb cc_er_soap_xi_sender_x06 si_erp_manh_po_outb om_wms_ma_po mt_wms_ma_po si_wms_manh_po_inb mm_wms_ma_po cc_wms_ma_jms_receiver_x06 ed_wms_ma_po from dt_wms_ma_po si_erp_manh_relation_outb cc_er_soap_xi_sender_x06 si_erp_manh_relation_outb mt_wms_ma_relationship om_wms_ma_relationship si_wms_manh_relation_inb mm_wms_ma_relationship cc_wms_ma_jms_receiver_x06 ed_wms_ma_relationship from dt_wms_ma_relationship si_erp_manh_carrier_outb cc_er_soap_xi_sender_x06 si_erp_manh_carrier_outb om_wms_ma_carrier si_wms_manh_carrier_inb mt_wms_ma_carrier mm_wms_ma_carrier ed_wms_ma_carrier cc_wms_ma_jms_receiver_x06 from dt_wms_ma_carrier si_erp_manh_drivers_outb cc_er_soap_xi_sender_x06 si_erp_manh_drivers_outb om_wms_ma_driver si_wms_manh_drivers_inb mt_wms_ma_driver mm_wms_ma_driver ed_wms_ma_driver cc_wms_ma_jms_receiver_x06 from dt_wms_ma_driver si_erp_manh_equip_outb cc_er_soap_xi_sender_x06 si_erp_manh_equip_outb om_wms_ma_equipment si_wms_manh_equip_inb mt_wms_ma_equipment mm_wms_ma_equipment ed_wms_ma_equipment cc_wms_ma_jms_receiver_x06 from dt_wms_ma_equipment si_transport_order_posx_outb cc_er_soap_xi_sender_x06 si_transport_order_posx_outb om_wms_ma_appointment si_wms_manh_appoint_inb mt_transport_order_posx mm_wms_ma_appointment ed_wms_ma_appointment cc_wms_ma_jms_receiver_x06 from dt_transport_order_posx si_erp_manh_asnitem_outb cc_er_soap_xi_sender_x06 si_erp_manh_asnitem_outb om_wms_ma_desadv_to_asnitem si_wms_manh_asnitem_inb mt_wms_ma_asnitem mm_wms_ma_desadv_to_asnitem ed_wms_ma_asn cc_wms_ma_jms_receiver_x06 from dt_wms_ma_asnitem Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 19 из 45 Управление по операционной деятельности Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Название документа Версия документа, дата Автор, должность Интеграция из ERP во WMOS/OP (Часть 2): ERP si_posx_mor_outb ActiveMQ PI cc_er_soap_xi_sender_b_x06 si_posx_mor_outb om_wms_ma_mor_to_mor si_wms_manh_mor_inb mt_mor mm_wms_ma_mor_to_mor mt_mor dt_mor si_erp_dlv_outb cc_er_soap_xi_sender_x06 cc_wms_ma_jms_receiver_x06 from dt_mor si_erp_dlv_outb om_wms_ma_appointment_dlv si_wms_manh_appoint_inb mt_dlv mm_wms_ma_appointment_dlv ed_wms_ma_appointment cc_wms_ma_jms_receiver_x06 from dt_dlv si_erp_slc_outb cc_er_soap_xi_sender_x06 si_erp_slc_outb om_wms_ma_product_life si_wms_manh_product_life_inb mt_slc mm_wms_ma_product_life mt_wms_ma_product_life dt_slc si_erp_manh_req_outb cc_er_soap_xi_sender_x06 cc_wms_ma_jms_receiver_x06 from dt_wms_ma_product_life si_erp_manh_req_outb om_wms_ma_erp_req si_wms_manh_req_inb mt_req mm_wms_ma_erp_req ed_wms_ma_req_resp si_erp_manh_asn_po_outb om_wms_ma_po_cancel si_wms_manh_po_inb mt_wms_ma_asn_po mm_wms_ma_po_cancel ed_wms_ma_po cc_wms_ma_jms_req_receiver_x06 to.ReqProc dt_req si_erp_manh_asn_po_outb cc_er_soap_xi_sender_x06 cc_wms_ma_jms_receiver_x06 from dt_wms_ma_asn_po si_erp_manh_asn_po_outb cc_er_soap_xi_sender_x06 si_erp_manh_asn_po_outb om_wms_ma_asnitem_cancel si_wms_manh_asnitem_inb mt_wms_ma_asn_po mm_wms_ma_asnitem_cancel ed_wms_ma_asn cc_wms_ma_jms_receiver_x06 from dt_wms_ma_asn_po si_erp_etrn_dcard_wmos_outb cc_er_soap_xi_sender_x06 si_erp_etrn_dcard_wmos_outb om_erp_etrn_dcard_to_wms si_wms_manh_drivers_inb mt_erp_etrn_dcard_wmos mm_erp_etrn_dcard_to_wms ed_wms_ma_driver cc_wms_ma_jms_receiver_x06 from dt_erp_etrn_dcard_wmos si_erp_manh_prod_life_outb cc_er_soap_xi_sender_x06 si_erp_manh_prod_life_outb om_wms_ma_prod_life si_wms_manh_product_life_inb mt_wms_ma_product_life mm_wms_ma_prod_life ed_wms_ma_product_life cc_wms_ma_jms_receiver_x06 from dt_wms_ma_product_life Интеграция из NQ DC во WMOS: Сообщение в NQ из таблицы EXPORT_FILES схемы SAP поступает в SAP PI по каналу cc_posx_soap_sender_doc_p1. Далее выполняется java-маппинг om_extend_export_file_doc_outb, в котором определяется система получатель. Для WMOS условия отправки ниже (приведен фрагмент java-кода): //Отправка во WMOS if((ID_DOCTYPE.equals("7") || ID_DOCTYPE.equals("32") || ID_DOCTYPE.equals("47") || ID_DOCTYPE.equals("24")) && STATUS.equals("S")==false //Не сторнирован && CLIENT_WERKS!=null && CLIENT_WERKS.equals("")==false //есть завод место назначение && CLIENT_SYSTEM_CODE.equals("WMOS") //завод является заводом WMOS && CLIENT_FORMAT.equals("DC") //Формат && ISCARGO.equals("1") ==false && DEP_FORMAT_2.equals("FRANCH_STORE")==false //Отправитель Не франчазовый магазин Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 20 из 45 Управление по операционной деятельности Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Название документа Версия документа, дата Автор, должность ){ resultXml.append("<Receiver><Party agency=\"http://sap.com/xi/XI\" scheme=\"XIParty\">"+PARTY_WMOS+"</Party><Service>"+BS_WMOS+"</Service></Receiver>"); } Все сообщения буфера приемки, которые отправляются из NQ во WMOS должны содержать параметр CLIENT_SYSTEM_CODE = “WMOS”. Далее сообщения разархивируются и в зависимости от атрибутов сообщения mt_doc xsltпреобразование ia_doc_to_asn формирует ASN LPN Level, либо ASN Item Level, ASN LPN Level формируется, если во входящем сообщении mt_doc присутствует атрибут VALUE тега HEADER_EXT, атрибут NAME которого равен FINAL_CLIENT, а атрибут TYPE равен N и его значение не равно значению атрибута ID_CLIENT тега HEADER. Если это условие не выполняется, то формируется ASN Item Level. Далее выполняется message mapping, в котором происходит замена кодов заводов из перекодировки NQ в перекодировку SAP/WMOS, выполняется перерасчет единиц измерений и преобразования дат из формата NQ в формат WMOS. Для внедрения процесса по отгрузке через КДК, где КДК площадка выступает под управлением системой WMOS было добавлена 2 потока из NQ DC в OP: PBL и ROT. NQ DC cc_posx_soap_sender_doc_p1 om_extend_export_file_doc_outb PI mi_select_export_file_doc_outb om_wms_ma_doc_to_asn mt_select_export_file SAP.EXPORT_FILES ru/x5/posx2sap/ParseBinaryString mt_doc dt_select_export_file mt_select_export_file dt_select_export_file from ed_wms_ma_asn si_wms_manh_pbl_inb cc_wms_ma_jms_receiver_x02 from mm_wms_ma_pbl_to_pbl mt_pbl om_wms_ma_rot_to_rot si_wms_manh_rot_inb dt_pbl cc_wms_ma_jms_receiver_x02 ru/x5/wmos/NqDocsToOp mt_rot dt_select_export_file mm_wms_ma_asn_to_asn dt_pbl mi_select_export_file_outb SAP.EXPORT_FILES ia_doc_to_asn om_wms_ma_pbl_to_pbl mt_pbl mt_select_export_file cc_wms_ma_jms_receiver_p12 ru/x5/wmos/NqDocsToOp SAP.EXPORT_FILES cc_posx_soap_sender_x02 si_wms_manh_asnitem_inb dt_doc mi_select_export_file_outb cc_posx_soap_sender_x02 ActiveMQ dt_rot from mm_wms_ma_rot_to_rot mt_rot dt_rot Интеграция из WMOS в ERP: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 21 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность ActiveMQ to.ER2.PD2.ASN cc_wms_ma_jms_asn_sender_p12 Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик ERP PI si_wms_manh_asnitem_outb om_wms_ma_asnitem_outb mi_posx_zqm_inb ed_wms_ma_asn mm_wms_ma_asnitem_outb mt_zqm cc_er_soap_xi_receiver_p1 mi_posx_zqm_inb dt_zqm to.ER2.PD2.ASN cc_wms_ma_jms_asn_sender_p12 si_wms_manh_asnitem_outb om_wms_ma_asnvrf mi_posx_zqm_inb ed_wms_ma_asn mm_wms_ma_asnvrf mt_zqm cc_er_soap_xi_receiver_p1 mi_posx_zqm_inb dt_zqm to.ER2.PD2.ASN cc_wms_ma_jms_asn_sender_p12 si_wms_manh_asnitem_outb om_wms_ma_asndlt mi_posx_zqm_inb ed_wms_ma_asn mm_wms_ma_asndlt mt_zqm cc_er_soap_xi_receiver_p1 mi_posx_zqm_inb dt_zqm to.ER2.PD2.PIX cc_wms_ma_jms_pix_sender_p12 si_wms_manh_pix_outb om_wms_ma_pix_do_cancel si_erp_manh_pix_docnl_inb ed_wms_ma_pix mm_wms_ma_pix_do_cancel mt_wms_ma_pixdocancel cc_er_soap_xi_receiver_p1 si_erp_manh_pix_docnl_inb dt_wms_ma_pixdocancel to.ER2.sqt cc_wms_ma_jms_sqt_sender_p12 si_wms_manh_sqt_outb om_wms_ma_sqt mi_sqt_inb mt_sqt mm_wms_ma_sqt mt_sqt dt_sqt cc_wms_ma_jms_shipconf_sender_p12 mi_sqt_inb dt_sqt si_wms_manh_shipconf_outb om_wms_ma_shipconf_erp ed_wms_ma_shipconfirm ia_shipconf_to_multi_delinf DELINF.DELVRY05.DELVRY05 cc_er_idoc_frompayload_reciever_p1 DELINF.DELVRY05.DELVRY05 to.ER2.PD2.ShipConfirm cc_wms_ma_jms_shipconf_sender_p12 cc_er_soap_xi_receiver_p1 si_wms_manh_shipconf_outb om_wms_ma_ttn si_posx_ttn_inb ed_wms_ma_shipconfirm ia_shipconf_to_ttn mt_ttn to.ER2.PD2.ShipConfirm cc_er_soap_xi_receiver_p1 si_posx_ttn_inb dt_ttn cc_wms_ma_jms_zstock_sender_p12 ZSTOCKIN.ZSTOCK02 om_wms_ma_zstock ZSTOCKIN.ZSTOCK02 cc_er_idoc_receiver_gk_p7 mm_wms_ma_zstock to.ER2.ZSTOCK ZSTOCKIN.ZSTOCK02 Интеграция из WMOS в SAP PD: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 22 из 45 Управление по операционной деятельности Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Название документа Версия документа, дата Автор, должность ActiveMQ PD PI cc_wms_ma_jms_asn_sender_p12 to.ER2.PD2.ASN si_wms_manh_asnitem_outb om_wms_ma_asnvrf_pd si_pd_manh_asnvrf_inb ed_wms_ma_asn mm_wms_ma_asnvrf_pd mt_wms_ma_asnvrf_pd cc_pd_soap_xi_receiver_p1 si_pd_manh_asnvrf_inb dt_wms_ma_asnvrf_pd cc_wms_ma_jms_pix_sender_p12 to.ER2.PD2.PIX si_wms_manh_pix_outb om_wms_ma_pix_inv si_erp_manh_pix_inv_inb ed_wms_ma_pix mm_wms_ma_pix_inv mt_wms_ma_pix_inv cc_pd_soap_xi_receiver_p1 si_erp_manh_pix_inv_inb dt_wms_ma_pix_inv cc_wms_ma_jms_shipconf_sender_p12 to.ER2.PD2.ShipConfirm si_wms_manh_shipconf_outb om_wms_ma_shipconf_pd si_pd_manh_shipconf_inb ed_wms_ma_shipconfirm mm_wms_ma_shipconf_pd mt_wms_ma_shipconfirm cc_pd_soap_xi_receiver_p1 si_pd_manh_shipconf_inb dt_wms_ma_shipconfirm cc_wms_ma_jms_shipconf_sender_pd_p12 to.PD2.ShipConfirm si_wms_manh_shipconf_outb om_wms_ma_shipconf_pd si_pd_manh_shipconf_inb ed_wms_ma_shipconfirm mm_wms_ma_shipconf_pd mt_wms_ma_shipconfirm cc_pd_soap_xi_receiver_p1 si_pd_manh_shipconf_inb dt_wms_ma_shipconfirm cc_wms_ma_jms_resp_sender_p32 to.PD2.HR2.response si_wms_manh_resp_outb om_wms_ma_resp_doc si_pd_manh_doc_inb ed_wms_ma_req_resp mm_wms_ma_resp_doc mt_wms_ma_doc cc_pd_soap_xi_receiver_p3 si_pd_manh_doc_inb dt_wms_ma_doc Интеграция из SAP PD во WMOS: SAP PD mi_posx_req_outb ActiveMQ PI cc_pd_soap_xi_sender_p3 mi_posx_req_outb om_wms_ma_req si_wms_manh_req_inb mt_req mm_wms_ma_req ed_wms_ma_req_resp si_pd_manh_asnlpn_outb om_wms_ma_asnlpn_pd si_wms_manh_asnitem_inb mt_wms_ma_asnlpn mm_wms_ma_asnlpn_pd ed_wms_ma_asn cc_wms_ma_jms_req_receiver_p32 to.ReqProc dt_req si_pd_manh_asnlpn_outb cc_wms_ma_jms_receiver_p12 cc_wms_ma_jms_receiver_p12 from dt_wms_ma_asnlpn Интеграция из WMOS в JDA: ActiveMQ cc_wms_ma_jms_umf_sender_p22 JDA PI si_wms_manh_umf_outb om_wms_ma_umf si_jda_manh_umf_inb mt_wms_ma_umf mm_wms_ma_umf mt_wms_ma_umf_from_wmos cc_jda_receiver_multi_prioritet_p2 JDA_MULTI_VIP_INB to.JDA.PROD dt_umf_wmos dt_umf_from_wmos Интеграция из SAP HR во WMOS: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 23 из 45 Управление по операционной деятельности Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Название документа Версия документа, дата Автор, должность SAP HR si_hr_manh_req_outb ActiveMQ PI cc_hr_soap_xi_sender_p3 si_hr_manh_req_outb om_wms_ma_hr_req si_wms_manh_req_inb mt_req mm_wms_ma_hr_req ed_wms_ma_req_resp cc_wms_ma_jms_req_receiver_p32 to.ReqProc dt_req Интеграция из WMOS в SAP HR: ActiveMQ cc_wms_ma_jms_resp_sender_p32 to.PD2.HR2.response SAP HR PI si_wms_manh_resp_outb om_wms_ma_resp_blg si_posx_blg_inb ed_wms_ma_req_resp mm_wms_ma_resp_blg mt_blg cc_hr_soap_xi_receiver_p3 si_posx_blg_inb dt_blg Интеграция из WMOS в СОМ (ADVM): ActiveMQ cc_wms_ma_jms_pix_sender_p12 to.ER2.PD2.PIX si_wms_manh_pix_outb om_wms_ma_sm1 ed_wms_ma_pix mm_wms_ma_sm1 to.ER2.PD2.ShipConfirm mi_import_blob_inb cc_pi_soap_java_receiver_b_p1 mi_import_blob_inb dt_sm1 cc_wms_ma_jms_shipconfirm_sender_p12 СОМ PI mt_sm1 ia_wmos_to_som mt_import_blob si_wms_manh_shipconf_outb om_wms_ma_sm6 mi_import_blob_inb ed_wms_ma_shipconfirm ia_shipconf_to_sm6 mt_sm6 mm_wms_ma_sm6 dt_sm6 ia_wmos_to_som mt_import_blob mt_import_blob cc_pi_soap_java_receiver_b_p1 mi_import_blob_inb dt_import_blob Интеграция из WMOS в NQ DC: PI ActiveMQ cc_wms_ma_jms_shipconfirm_sender_p12 to.ER2.PD2.ShipConfirm cc_wms_ma_jms_shipconfirm_sender_p12 to.ER2.PD2.ShipConfirm NQ DC si_wms_manh_shipconf_outb om_wms_ma_shipconf_anr mi_import_blob_inb ed_wms_ma_shipconfirm ia_shipconf_to_anr mt_anr mm_wms_ma_anr dt_anr ia_wmos_to_nq mt_import_blob si_wms_manh_shipconf_outb om_wms_ma_shipconf_scm mi_import_blob_inb ed_wms_ma_shipconfirm ia_shipconf_to_scm mt_scm mm_wms_ma_scm_to_scm dt_scm ia_scm_to_zip mt_import_blob cc_pi_soap_java_receiver_b_p1 mi_import_blob_inb dt_import_blob cc_pi_soap_java_receiver_b_p1 mi_import_blob_inb dt_import_blob Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 24 из 45 Управление по операционной деятельности Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Название документа Версия документа, дата Автор, должность Повторный запрос документов из WMOS: - Запрос отправляется в интерфейс si_erp_manh_req_outb из ERP или mi_posx_req_outb из PD - Из обоих интерфейсов отправка идёт в AMQ, очередь to.ReqProc.PD.ER Из очереди сообщение забирает утилита ReqProc.jar, которая лежит в папке /mqadmin/activemq/java_programs/ProcessingRequest/. Ответное сообщение вытаскивается напрямую из БД WMOS, таблиц TRAN_LOG и TRAN_LOG_MESSAGE. Результат отправляется в очередь AMQ from.ReqProc Дальше, в зависимости от параметров BS (Бизнес-система) и MSG_TYPE(Тип сообщения) в заголовке, AMQ отправляет ответ в разные очереди, эта логика описана в конфиге activemq.xml BS MSG_TYPE DO_TYPE BS_PD2 Выходная очередь Входной интерфейс Выходной интерфейс to.PD2.HR2.response si_wms_manh_resp_outb si_pd_manh_doc_inb BS_CA2 BS_HR2_501 BS_ER2 si_posx_blg_inb 1 или 3 to.ER2.ShipConfirm.Resend si_wms_manh_shipconf_outb DELINF.DELVRY05.DELVRY05 3 to.PD2.ShipConfirm si_wms_manh_shipconf_outb si_pd_manh_shipconf_inb OFF to.PD2.ShipConfirm si_wms_manh_shipconf_outb si_pd_manh_shipconf_inb ASN to.ER2.PD2.ASN si_wms_manh_asnitem_outb PIX to.ER2.PD2.PIX si_wms_manh_pix_outb DO Документы в TRAN_LOG_MESSAGE лежат разбитые на части CLOB и в запросе на поиск аггрегируются из-за чего на большом объёме данных время может быть сильно увеличено. Интеграция OP с ORD (ADVM): 1) ОТ1 – в Order Processor (OP) по настроенному расписанию запускается процесс по созданию и массовому экспорту заявок для TMS на основании выгрузки из БД WMOS по заказам. Созданные заявки и данные по рассчитанным теоретическим паллетам записываются в БД OP и на основании их формируется пул транспортных запросов для TMS. 2) OT2/OT2.Response – в OP раз в X минут (Х – настраиваемый параметр) формируется синхронное сообщение и отправляется в ActiveMQ->SAP PI->TMS->SAP PI->Active MQ для получения информации по рассчитанным рейсам из TMS. 3) OT2.Confirm – OP прослушивает очередь Active MQ с ответами в ОТ2.Response. OP отправляет сообщение в TMS об успешном или неуспешном создании рейса во WMOS. 4) ОТ3 – в OP раз в пять минут происходит опрос БД WMOS для пересчета статуса рейса по связанным с ним заказам. Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 25 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик 5) OT5.Update – WMOS формирует сообщение ShipConfirm, которое через Active MQ попадает в OP для расчета фактически отгруженных паллет по каждой транспортной заявке, связанной с подтвержденным грузоотправлением и далее OP формирует xml сообщение OT5.Update, которое отправляется в TMS по цепочке OP > Active MQ > SAP PI > TMS . 6) OT5.Delete – при отмене заказа на отгрузку в WMOS формируется сообщение PIX 605-001na об отмене заказа, которое отправляется в отдельную очередь Active MQ. OP прослушивает эту очередь и при извлечении этого сообщения связывает заказ на отгрузку с транспортной заявкой и отправляет в TMS сообщение об удалении этой транспортной заявки. 7) OT7 – при выполнении загрузки машины на РЦ в OP формируется сообщение OT7, содержащее дату и время начала загрузки, и отправляется в TMS по цепочке OP > Active MQ > SAP PI > TMS. ActiveMQ to.ORD.OT1 cc_wms_ma_jms_OT1_send er_p12 ORD PI si_wms_ma_import_order_outb om_wms_ma_import_order_to_ord si_wms_ma_import_order_inb mt_wms_ma_import_order ia_wmos_to_ord mt_wms_ma_import_order dt_wms_ma_import_order to.ORD.OT2 cc_wms_ma_jms_OT2_send er_p12 cc_wms_ma_jms_OT2_resp _receiver_p12 si_wms_ma_import_order_inb dt_wms_ma_import_order si_wms_ma_get_trip_outb om_wms_ma_get_trip_from_ord_to_wmos si_wms_ma_get_trip_inb mt_wms_ma_get_trip ia_wmos_to_ord mt_wms_ma_get_trip dt_wms_ma_get_trip to.OP.OT2.Response cc_otd_from_wmos_reciver _soap_p12 cc_otd_from_wmos_sync_re civer_soap_p12 si_wms_ma_get_trip_inb dt_wms_ma_get_trip si_wms_ma_get_trip_answer_inb om_wms_ma_get_trip_answer si_wms_ma_get_trip_answer_outb mt_wms_ma_get_trip_answer ia_response_from_ord ed_wms_ma_get_trip_answer cc_dummy_sync dt_wms_ma_get_trip_answer om_wms_ma_auto_confirm_trip_to_ord si_wms_ma_confirm_trip_inb ia_create_planned_trips mt_wms_ma_confirm_trip ia_wmos_to_ord dt_wms_ma_confirm_trip si_wms_ma_status_trip_outb om_wms_ma_status_trip si_wms_ma_status_trip_inb mt_wms_ma_status_trip ia_wmos_to_ord mt_wms_ma_status_trip ed_wms_ma_get_trip_answer to.ORD.OT3 cc_wms_ma_jms_OT3_send er_p12 dt_wms_ma_status_trip to.ORD.OT5.Delete cc_wms_ma_jms_OT5_dele te_sender_p12 cc_wms_ma_jms_OT5_upd ate_sender_p12 si_wms_ma_delete_order_outb om_wms_ma_delete_order si_wms_ma_delete_order_inb mt_wms_ma_delete_order ia_wmos_to_ord mt_wms_ma_delete_order cc_wms_ma_jms_OT7_send er_p12 si_wms_ma_update_order_outb om_wms_ma_update_order si_wms_ma_update_order_inb mt_wms_ma_update_order ia_wmos_to_ord mt_wms_ma_update_order si_wms_ma_status_trip_inb cc_otd_from_wmos_reciver _soap_p12 si_wms_ma_delete_order_inb cc_otd_from_wmos_reciver _soap_p12 si_wms_ma_update_order_inb dt_wms_ma_update_order si_wms_ma_realize_action_outb om_wms_ma_update_order si_wms_ma_realize_action_inb mt_wms_ma_realize_action ia_wmos_to_ord mt_wms_ma_realize_action dt_wms_ma_realize_action cc_otd_from_wmos_reciver _soap_p12 dt_wms_ma_delete_order dt_wms_ma_update_order to.ORD.OT7 si_wms_ma_confirm_trip_inb dt_wms_ma_status_trip dt_wms_ma_delete_order to.ORD.OT5.Update cc_otd_from_wmos_reciver _soap_p12 cc_otd_from_wmos_reciver _soap_p12 si_wms_ma_realize_action_inb dt_wms_ma_realize_action Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 26 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Описание интеграции WMOS с Кадуцей: 1. Потоки приемки Поток Название Описание V42 Системаотправитель WMOS Сообщение предприемки по ПУО V43 Кадуцей V44 WMOS Сообщение предприемки по ПУО с сертификатами Сообщение подтверждения приемки V45 Кадуцей V46 WMOS Сообщение, содержащее строки ПУО, требующие сертификатов Меркурия. Сообщение, отправленное в ответ на V42 и содержащее список сертификатов и статус строк. Сообщение, отправленное до подтверждения ПУО, подтверждающее номера iLPN, принятые по ПУО. Сообщение, содержащее iLPN и данные ЗСЖ, присвоенных ПУО. Сообщение отправляется при отмене всего ПУО. Может быть отправлено только до сообщения V45. Сообщение с ЗСЖ LPN Сообщение об отмене ПУО Формат сообщения XMLJSON JSON XML XMLJSON JSON XML XMLJSON 2. Потоки отгрузки Поток Название Описание V13 Системаотправитель WMOS Сообщения отгрузки из WMOS, содержащие товары Кадуцея V14 Кадуцей Сертификаты на товары из сообщения отгрузки Когда груз загружен и готов к отправке, это сообщение отправляется со всеми строками, которые требуют исходящих сертификатов. Отправляется, когда Меркурий назначил сертификаты. Формат сообщения XMLJSON JSON XML Интеграция из WMOS в Кадуцей: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 27 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность ActiveMQ cc_wms_ma_jms_asn_sender_p72 to.Caduceus.ASN Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Кадуцей PI si_wms_manh_asnitem_outb om_wms_ma_merc_req si_merc_suppl_pvetdoc_req_inb ed_wms_ma_asn mm_wms_ma_merc_req mt_merc_suppl_pvetdoc_req cc_rest_merc_manh_req_receiver_p7 si_merc_suppl_pvetdoc_req_inb dt_merc_suppl_pvetdoc_req cc_wms_ma_jms_asn_sender_p72 to.Caduceus.ASN si_wms_manh_asnitem_outb om_wms_ma_merc_confirm si_merc_suppl_confirm_inb ed_wms_ma_asn mm_wms_ma_merc_confirm mt_merc_suppl_confirm cc_rest_merc_manh_confirm_receiver_p7 si_merc_suppl_confirm_inb dt_merc_suppl_confirm cc_wms_ma_jms_shipconf_sender_p72 to.Caduceus.ShipConfirm si_wms_manh_shipconf_outb om_wms_ma_shipconf_v13 si_merc_ship_create_inb ed_wms_ma_shipconfirm ia_shipconf_to_v13 mt_merc_ship_create cc_rest_merc_manh_ship_create_receiver_p7 si_merc_ship_create_inb dt_merc_ship_create cc_wms_ma_jms_pix_sender_p12 to.ER2.PD2.PIX si_wms_manh_pix_outb om_wms_ma_merc_discard si_merc_suppl_pvtdc_discard_inb ed_wms_ma_pix mm_wms_ma_merc_discard mt_merc_suppl_pvtdc_discard cc_rest_merc_manh_discard_receiver_p1 si_merc_suppl_pvtdc_discard_inb dt_merc_suppl_pvtdc_discard Интеграция из Кадуцея во WMOS: Кадуцей cc_rest_merc_manh_suppl_upload_sender_p7 si_merc_manh_upload_outb ActiveMQ PI si_merc_manh_upload_outb om_wms_ma_merc_upload si_wms_manh_asnitem_inb mt_merc_suppl_upload_wmos mm_wms_ma_merc_upload ed_wms_ma_asn si_merc_manh_conf_push_outb om_wms_ma_merc_push si_wms_manh_lpn_inb mt_merc_manh_confirm_push ia_v45_to_lpn ed_wms_ma_lpn cc_wms_ma_jms_receiver_p72 from dt_merc_suppl_upload_wmos cc_rest_merc_manh_conf_push_sender_p7 si_merc_manh_conf_push_outb cc_wms_ma_jms_receiver_p72 from dt_merc_manh_confirm_push cc_rest_merc_ship_create_reply_14_p7 si_merc_ship_create_reply_outb si_merc_ship_create_reply_outb om_wms_ma_lpn_v14 si_wms_manh_lpn_inb mt_merc_ship_create_reply mm_wms_ma_lpn_v14 ed_wms_ma_lpn si_merc_39_errors_outb om_wms_ma_merc_error si_wms_manh_merc_error_inb mt_merc_39_errors mm_wms_ma_merc_error mt_merc_39_errors cc_wms_ma_jms_v14_receiver_p7 from dt_merc_ship_create_reply cc_rest_merc_39_errors_sender_p72 si_merc_39_errors_outb dt_merc_39_errors cc_wms_ma_jms_merc_errors_receiver_p7 from.Caduceus.errors dt_merc_39_errors Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 28 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Интеграция WMOS c PD, HR и ERP по схеме запрос-ответ: 1. Описание интеграции. 1.1. Структура сообщения запроса представлена ниже. Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 29 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик 1.1.1. В случае запроса информации о выработке сотрудников из SAP HR заполняются следующие атрибуты: mt_req/@DESTINATION – код завода без ведущего нуля (пример, 309) mt_req/@FILEID – идентификатор запроса mt_req/@CREATEDATE – дата создания сообщения запроса mt_req/HEADER/@ID_DEPARTMENT – код завода без ведущего нуля (пример, 309) mt_req/HEADER/@CHNG_TYPE – тип сообщения ответа на запрос (для HR пока только BLG) mt_req/HEADER/@DT_BEGIN – Дата начала периода, за который нужно выгрузить информацию в сообщении ответа mt_req/HEADER/@DT_END – Дата окончания периода, за который нужно выгрузить информацию в сообщении ответа 1.1.2. В случае запроса реестра документов из SAP PD заполняются следующие атрибуты: mt_req/@DESTINATION – код завода с ведущим нулем (пример, 0309) mt_req/@FILEID – идентификатор запроса mt_req/@CREATEDATE – дата создания сообщения запроса mt_req/HEADER/@ID_DEPARTMENT – код завода с ведущим нулем (пример, 0309) mt_req/HEADER/@CHNG_TYPE – тип выгружаемых документов в реестре, ответе на запрос (для PD: ASN, DO, OFF, PIX, DOC) mt_req/HEADER/@CREATED – Дата, за которую нужно выгрузить информацию в сообщении ответа 1.1.3. В случае запроса документов на повторный экспорт из ERP заполняются следующие атрибуты: mt_req/@DESTINATION – код завода с ведущим нулем (пример, 0309) mt_req/@FILEID – идентификатор запроса mt_req/@CREATEDATE – дата создания сообщения запроса mt_req/HEADER/@ID_DEPARTMENT – код завода с ведущим нулем (пример, 0309) mt_req/HEADER/@CHNG_TYPE – тип сообщения ответа на запрос (для ERP: ASN, DO, OFF, PIX) mt_req/DETAILS/DETAIL/@ID – номер запрашиваемого документа mt_req/DETAILS/DETAIL/@DT_CREATED – дата проводки запрашиваемого документа 1.2. Условия для отправки сообщений запросов во WMOS. В целевом виде предполагается в сообщение запроса добавить атрибут (Например, mt_req/@SYSTEM_TYPE), указывающий на тип системы, для которой предназначено сообщение запроса (например, WMOS или NQ). В качестве временного решения все сообщения запроса из PD и ERP анализируются на номер завода. Для запросов из PD и ERP: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 30 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик 1.3. Из сообщений запроса PI формирует сообщения в формате tXML, структура представлена ниже: При этом заполняются следующие поля: tXML/Header/Source – наименования системы-отправителя запроса (Например, BS_ER2, BS_PD2 и BS_HR2) tXML/Header/Message_Type – тип запрашиваемого сообщения/сообщений tXML/Header/Destination – код завода-получателя запроса tXML/Message/Req – в эту группу тегов полностью мэппится структура mt_req из пункта 1.1. Ниже пример сообщения запроса из PD1 на выходе из PI в ActiveMQ: <?xml version="1.0" encoding="UTF-8"?> <tXML> <Header> <Source>BS_PD1</Source> <Message_Type>DOC</Message_Type> <Destination>0309</Destination> </Header> <Message> <Req CREATEDATE=”2019-11-13 14:39:38” FILEID=”00001431” DESTINATION="0309"> <HEADER CHNG_TYPE="DOC" DT_CREATED="20191101" ID_DEPARTMENT="0309"/> <DETAILS/> </Req> </Message> </tXML> Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 31 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик 1.4. Обработка сообщений запроса 1.4.1. Все сообщения запроса отправляются в очередь ActiveMQ to.ReqProc 1.4.2. Сообщения из данной очереди считываются java-программой. Название очереди, адрес ActiveMQ и количество параллельных java-процессов/обработчиков сообщений можно конфигурировать через файл конфигурации ConsumerConfig.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jms="http://www.springframework.org/schema/jms" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/jms http://www.springframework.org/schema/jms/spring-jms-3.0.xsd"> <bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory" p:brokerURL=" app561:61616,tcp://msk-dpro-app562:61616)" /> <bean id="listener" class="ru.x5.activemq.Consumer"> <property name="app_host" value="msk-dpro-app562"/> </bean> <jms:listener-container container-type="default" connection-factory="connectionFactory" acknowledge="auto"> <jms:listener destination="to.ReqProc" ref="listener" method="onMessage"></jms:listener> <jms:listener destination="to.ReqProc" ref="listener" method="onMessage"></jms:listener> <jms:listener destination="to.ReqProc" ref="listener" method="onMessage"></jms:listener> <jms:listener destination="to.ReqProc" ref="listener" method="onMessage"></jms:listener> <jms:listener destination="to.ReqProc" ref="listener" method="onMessage"></jms:listener> </jms:listener-container> </beans> failover:(tcp://msk-dpro- Выше представлен пример заполнения ConsumerConfig.xml. Количество тегов «listener» в данном файле конфигурации определяет сколько будет запущено параллельно обработчиков сообщений. Так как программа запускается одновременно с двух серверов ActiveMQ (для отказоустойчивости). В класс ru.x5.activemq.Consumer добавлена переменная app_host, которая заполняется значением из файла ConsumerConfig.xml. Значение задается перед запуском программы и используется для логирования в БД, чтобы понимать на каком сервере запущена программа. 1.4.3. Все xml на входе проходят проверку на валидность в соответствии с файлом Mapping.xml. Файл представлен ниже. В нем описаны все теги и атрибуты, которые могут присутствовать в сообщениях запроса и ответа. Также в соответствии с описанием в данном файле происходит преобразование xml в java объект и из java объекта в xml. Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 32 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Mapping.xml 1.4.4. После проверки xml запроса на валидность и конвертирование этого xml в java объект, выполняется анализ содержимого xml. Выполняется проверка наименования бизнес-системы отправителя запроса (значение тега tXML/Header/Source): Если в наименовании содержится «BS_ER», то вызывается метод, который анализирует xml запроса из ERP и выполняет поиск сообщений в БД на переотправку Если в наименовании не содержится «BS_ER», то вызывается метод, который анализирует xml запроса из HR и PD и в зависимости от типа запрашиваемого документа BLG или ASN, PIX, DO, OFF, DOC формирует ответный xml. 1.5. Формирование ответа на запрос из HR Если тип запрашиваемого сообщения (tXML/Message/Req/HEADER/@CHNG_TYPE) равен «BLG», то выполняется следующий запрос в БД SELECT external_user_id AS PERNR, TO_CHAR(dt_logic, 'YYYYMMDD') AS BEGDA, TO_CHAR(dt_logic + 1, 'YYYYMMDD') AS ENDDA, hr_code AS CPLAN, '0' AS PLVAL, ROUND(SUM(qty), 2) AS FAVAL FROM wms.X5_BILLING bl WHERE 1 = 1 AND dt_logic >= to_date('%s', 'YYYYMMDD') AND dt_logic < to_date('%s', 'YYYYMMDD') AND qty > 0 AND external_user_id IS NOT NULL GROUP BY external_user_id, dt_logic, hr_code Где вместо «%s» подставляются значения из @DT_BEGIN и @DT_END из сообщения запроса. Структура сообщения ответа, представлена ниже: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 33 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Основная часть сообщения ответа находится в группе тегов tXML/Message/Blg В сообщении ответа заполняются следующие поля: tXML/Header/Source - SAP код завода отправителя информации о выработке без ведущего нуля tXML/Header/Message_Type – тип запрашиваемого сообщения (в данном случае – BLG) tXML/Header/Destination – наименование бизнес-системы, отправившей запрос tXML/Message/Blg/@WERKS - SAP код завода отправителя информации о выработке без ведущего нуля tXML/Message/Blg/@CREATEDATE – дата создания сообщения в формате yyyy-MM-dd HH:mm:ss tXML/Message/Blg/row/@PERNR – табельный номер сотрудника tXML/Message/Blg/row/@BEGDA – дата начала периода tXML/Message/Blg/row/@ENDDA – дата окончания периода tXML/Message/Blg/row/@CPLAN – код показателя tXML/Message/Blg/row/@PLVAL – плановое значение tXML/Message/Blg/row/@FAVAL – фактическое значение 1.6. Формирование ответа на запрос из PD Если тип запрашиваемого сообщения (tXML/Message/Req/HEADER/@CHNG_TYPE) равен DOC (все документы движения), PIX, ASN, DO (все собщения ShipConfirm, кроме OFF), OFF (отгрузки по заявкам на списание), то выполняется следующий запрос в БД SELECT DOC_NUM, DOC_TYPE, Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 34 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик ORDER_TYPE, QTY, QTY_OF_POS FROM wms.x5_docs WHERE DOC_TYPE like '%s' AND DT_DOC >= to_date('%s', 'YYYY-MM-DD HH24:MI:SS') AND DT_DOC <= to_date('%s', 'YYYY-MM-DD HH24:MI:SS') Где вместо «%s» в строке «WHERE DOC_TYPE like '%s'» подставляются значения из @CHNG_TYPE. Вместо «%s» в строках «AND DT_DOC >= to_date('%s', 'YYYY-MM-DD HH24:MI:SS') AND DT_DOC <= to_date('%s', 'YYYY-MM-DD HH24:MI:SS')» подставляются значения ‘@DT_CREATED 00:00:00’ и ‘@DT_CREATED 23:59:59’ с пересчетом разницы во времени относительно московского. Для определения разницы во времени относительно мск выполняется запрос в базу. Запрос возвращает разницу в часах относительно часового пояса Лондона. По возвращаемому значению определяется разница в часах относительно мск: разница = gmt_offset - 3 select t.gmt_offset from time_zone t where t.time_zone_id = (select f.facility_tz from facility_alias fa join facility f on f.facility_id = fa.facility_id where fa.facility_alias_id = '%s') Вместо %s подставляется SAP-код РЦ из сообщения запроса. Структура сообщения ответа, представлена ниже: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 35 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Основная часть сообщения ответа находится в группе тегов tXML/Message/Doc В сообщении ответа заполняются следующие поля: tXML/Header/Source - SAP код завода отправителя информации о выработке без ведущего нуля tXML/Header/Message_Type – тип запрашиваемого сообщения (в данном случае – BLG) tXML/Header/Destination – наименование бизнес-системы, отправившей запрос tXML/Message/Blg/@WERKS - SAP код завода отправителя информации о выработке без ведущего нуля tXML/Message/Blg/@CREATEDATE – дата создания сообщения в формате yyyy-MM-dd HH:mm:ss tXML/Message/Blg/row/@DOC_NUM – уникальный номер документа tXML/Message/Blg/row/@DT_DOC – дата проводки документа tXML/Message/Blg/row/@QTY – суммарное количество по всем PLU tXML/Message/Blg/row/@TYPE – тип документа (ASN, PIX, DO, OFF) tXML/Message/Blg/row/@CATEGORY – категория документа tXML/Message/Blg/row/@POS_COUNT – количество позиций в документе 1.7. Повторная отправка документов Если в наименовании бизнес-системы отправителя запроса присутствует «BS_ER», то выполняется следующий запрос в БД: SELECT * FROM (SELECT tran_log_id, x5_clobagg(x5_r_cl_num(tlm.msg_line_text, tlm.msg_line_number)) cl Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 36 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик FROM tran_log_message tlm WHERE tlm.tran_log_id IN (SELECT tl.tran_log_id FROM tran_log tl WHERE tl.created_dttm BETWEEN TO_DATE('%s', 'YYYY-MM-DD') - 1 AND TO_DATE('%s', 'YYYY-MM-DD') + 1 AND tl.msg_type = '%s') GROUP BY tran_log_id ORDER BY tran_log_id DESC) t WHERE t.cl LIKE '%s' AND ROWNUM = 1 Где вместо «%s» подставляются значения @DT_CREATED два раза, тип документа во WMOS и номер документа (@ID) внутри тега (маска - %номер_документа%). Ниже таблица соответствия типа документа в PD с типом документа WMOS и сочетания тегов с номером документа, по которым осуществляется поиск в БД: Тип документа в PD Тип документа во WMOS Поиск по маске %номер_документа% ASN ASN %<TCASNID>@ID</TCASNID>% PIX PIX %<TransactionNumber>@ID</TransactionNumber>% DO ShipmentConfirm %<BillOfLadingNumber>@ID</BillOfLadingNumber>% OFF ShipmentConfirm %<InvcBatchNbr>@ID</InvcBatchNbr>% Так как запрос иногда возвращает несколько срок, добавил условия: ORDER BY tran_log_id DESC и ROWNUM = 1, то есть переотправляется последнее отправленное xml сообщение. 1.8. Отправка сообщений на запрос Сообщения сформированные в пунктах 1.5, 1.6 и 1.7 отправляются в очередь ActiveMQ from.ReqProc. За отправку сообщений отвечает Producer. Конфигурационный файл для Producer называется ProducerConfig.xml и представлен ниже: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:jms="http://www.springframework.org/schema/jms" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/jms http://www.springframework.org/schema/jms/spring-jms-3.0.xsd"> Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 37 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик <bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory" app561:61616,tcp://msk-dpro-app562:61616)" /> <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate"> <constructor-arg name="connectionFactory" ref="connectionFactory"> </constructor-arg> <property name="defaultDestinationName" value="from.ReqProc"></property> </bean> <context:component-scan base-package="ru.x5.activemq"></context:component-scan> </beans> p:brokerURL="failover:(tcp://msk-dpro- Название очереди и адрес ActiveMQ можно настроить с помощью этого файла. В примере файла выше сообщения отправляются в очередь from.ReqProc. При отправке сообщения добавляются в строковых jms-атрибута: «BS»(наименование бизнессистемы) и «MSG_TYPE» (наименование типа сообщения). 1.9. Конфигурация ActiveMQ для очереди from.ReqProc Сообщения ответа отправляются в очередь from.ReqProc. В файле activemq.xml настроена проверка на jms-атрибуты сообщений, поступающих в эту очередь: <route> <from uri="activemq:queue:from.ReqProc"/> <choice> <when> <el>${in.headers['BS'] == 'BS_PD2'}</el> <to uri="activemq:queue:to.PD2.HR2.response"/> </when> <when> <el>${in.headers['BS'] == 'BS_HR2_501'}</el> <to uri="activemq:queue:to.PD2.HR2.response"/> </when> <when> <el>${in.headers['BS'] == 'BS_ER2' &amp;&amp; in.headers['MSG_TYPE'] == 'DO'}</el> <to uri="activemq:queue:to.PD2.ShipConfirm"/> </when> <when> <el>${in.headers['BS'] == 'BS_ER2' &amp;&amp; in.headers['MSG_TYPE'] == 'OFF'}</el> <to uri="activemq:queue:to.PD2.ShipConfirm"/> </when> <when> <el>${in.headers['BS'] == 'BS_ER2' &amp;&amp; in.headers['MSG_TYPE'] == 'ASN'}</el> <to uri="activemq:queue:to.ER2.PD2.ASN"/> </when> <when> <el>${in.headers['BS'] == 'BS_ER2' &amp;&amp; in.headers['MSG_TYPE'] == 'PIX'}</el> <to uri="activemq:queue:to.ER2.PD2.PIX"/> </when> <otherwise> <to uri="activemq:queue:route_not_found"/> </otherwise> </choice> Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 38 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик </route> ActiveMQ перенаправляет сообщения из очереди from.ReqProc в очередь, которая соответствует условиям выше. 1.10. Маршрутизация сообщений ответа в HR и PD Сообщения, поступающие в очередь ActiveMQ «to.PD2.HR2.response» проходят проверку в PI на значение тега tXML/Header/Destination и в зависимости от значения данного тега PI определяет в какую систему отправить сообщение. Ниже пример проверки на тесте: 2. Логирование сообщений Настроено два типа логирования: логирование в файл логов и логирование в БД. 2.1. Логирование в БД Все сообщения запросов и ответов записываются в БД ActiveMQ. Была создана отдельная таблица для хранения таких сообщений: create table REQ_RESP_MSG ( msg_id NUMBER generated by default as identity, msg_guid VARCHAR2(50), msg_type VARCHAR2(20) not null, business_system VARCHAR2(20) not null, facility VARCHAR2(4) not null, direction VARCHAR2(1) not null, msg_date TIMESTAMP(6) not null, msg_clob CLOB, msg_corrid VARCHAR2(50) not null, app_host VARCHAR2(20) not null ) Пример записей, представлен ниже: Описание полей: MSG_ID – порядковый номер записи в таблицу Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 39 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик MSG_GUID – уникальный идентификатор сообщения. MSG_GUID из этой этой таблицы равен гуиду этого сообщения в PI/HR/ERP/PD. Можно по гуиду в PI/HR/ERP/PD найти сообщение запроса в БД или по MSG_GUID из БД найти сообщение ответа на запрос в PI/HR/ERP/PD по гуиду. MSG_TYPE – тип запрашиваемого сообщения BUSINESS_SYSTEM – наименование бизнес-системы, инициирующей запрос данных из WMOS FACILITY – SAP-код завода, на который отправлен запрос DIRECTION – указание направления сообщение: I – для сообщений запроса (inbound), O – для сообщение ответа на запрос (outbound). MSG_DATE – дата записи сообщения в БД. MSG_CLOB – содержимое сообщений в формате xml. MSG_CORRID – уникальный идентификатор, связывающий сообщения запроса и сообщения ответа. APP_HOST – имя сервера, с которого запущено приложение 2.2. Файл логов При первом запуске программы создается файл логов «application.log», куда логируются все ошибки, возникающие по ходу обработки запроса и формированию и отправки ответа. Файл логов расположен на серверах ActiveMQ в директории /mqadmin/activemq/java_programs/ProcessingRequest/logs Настройка логирования осуществляется через файл log4j.properties. Пример заполнения файла представлен ниже: log4j.rootLogger=INFO, file log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=logs/application.log log4j.appender.file.MaxFileSize=5MB log4j.appender.file.MaxBackupIndex=10 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n log4j.rootLogger – уровень логирования log4j.appender.file.File – расположение и наименование файла логов log4j.appender.file.MaxFileSize – максимальный размер файла логов log4j.appender.file.MaxBackupIndex – максимальное количество хранимых бэкапов файлов логов log4j.appender.file.layout.ConversionPattern – формат записей в файле логов Пример записей в файле логов представлен ниже: 2019-11-20 11:00:15 INFO DriverManagerDataSource:133 - Loaded JDBC driver: oracle.jdbc.driver.OracleDriver 2019-11-20 11:02:00 INFO FailoverTransport:1040 - Successfully connected to tcp://msk-dproapp561:61616 2019-11-20 11:02:00 INFO MessageListener:57 - Сообщение 2ba5c384-9a5e-466c-9239d8763f96dac1 отправлено на запрос 14187731-4ee1-1eda-82ed-78e767de52ce Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 40 из 45 Управление по операционной деятельности Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Название документа Версия документа, дата Автор, должность Как видно выше в файл логов пишется гуид пришедшего сообщения запроса и гуид отправленного сообщения ответа. По этим гуидам сообщения можно посмотреть в БД ActiveMQ. На ошибки с типом «ERROR» настроен мониторинг zabbix. Помимо стандартных ошибок: ошибок БД при выполнении запросов (различные ORA) или ошибок при парсинге сообщений xml добавлены следующие обработчики ошибок: Если прилетает запрос на тип документа отличный от BLG, DOC, ASN, PIX, DO и OFF, то выводится следующая ошибка с названием неизвестного типа документа logger.error("Неизвестный тип документа - " + doc_type); Если в сообщении запроса из ERP на переотправку документов не указан не один номер документа, то выводится следующая ошибка: logger.error("В сообщении запроса из ERP нет документов на переотправку - COUNT(ID)=0"); Если из сообщения запроса на переотправку документов не найдено xml-сообщение в БД в таблице tran_log_message по номеру документа(@ID из сообщения запроса), то выводится следующая ошибка с sql-текстом: logger.error("Документ не найден в БД - " + sql); 3. Подключение к БД Параметры подключения к БД заполняются в файле конфигурации jdbc.properties. Пример заполнения ниже: amq.url=jdbc:oracle:thin:@msk-dpro-ora273:1521/amq amq.driver=oracle.jdbc.driver.OracleDriver amq.user=amq amq.password=******** srt.url=jdbc:oracle:thin:@msk-dpro-ora240:1521:wmsdb srt.driver=oracle.jdbc.driver.OracleDriver srt.user=wms srt.password=******** 4. Структура ресурс-файлов Для наглядности структура ресурс-файлов представлена ниже. В отдельной директории конфиги, в отдельной запросы к БД: Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 41 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик 5 Описание заданий (расписание выполнения загрузок\выгрузок) В таблице ниже представлены программы/отчеты для взаимодействия ERP/PD/HR с WMOS. Название программы в se38 Описание Периодичность запуска и важность ZLO_WMOS_ASORT_SEND_DATA Передача из ERP во WMOS Запуск ежедневный в 21:00. информации по товарам, Важность: - высокая вспомогательным справочникам, заводам, внешним поставщикам, водителям и транспорту. Z_NQ_REQUEST Отправка запроса из PD во Запуск два раза в день: в WMOS на выгрузку реестра 06:30 и в 18:30. документов Важность: - не высокая. ZHR_WMS_EX_DATA_GET Отправка запроса из HR во Запуск ежедневный в 11:00. WMOS на выгрузку Важность: - высокая информации о выработке сотрудников. 6 Описание мониторинга загрузки данных и реакции на него Файл, в котором описан мониторинг проекта в PI/PD/ERP, представлен ниже. NewWMS. Мониторинг интеграции SAP.xlsx Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 42 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик 7 Форматы потоков данных № 1 Тип сообщения Item Краткое описание Формат данных Товары Item.xls 2 Facility Магазины и РЦ Facility.xls 3 DistributionOrder Заказы на отгрузку DO.xls 4 PurchaseOrder Заказы на закупку PO.xls 5 ClassificationCode Вспомогательные справочники Classification_Code. xls 6 Relationship Взаимосвязи БизПартнер - Компания Relationship.xls 7 8 BusinessPartner Carrier Бизнес партнеры грузоперевозчики) (внешние поставщики, BusinessPartnerUpda te.xls Перевозчики Carrier.xls 9 ASN Предварительное уведомление (документ приемки) об отгрузке ASN.xls Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 43 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность 10 11 PIX ShipConfirm Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Непрерывная Транзакция запаса (корректировки запасов, строк и заголовков заказов) PIX.xls Закрытый документа отгрузки ShipConfirm.xls 12 Driver Водители Driver.xls 13 EquipmentInstance Транспортные средства Equipment_Instance. xls 14 Appointment Заказы на транспорт Appointment.xlsx 15 LPN Паллеты LPN.xls 16 Shipment Информация об отгрузке на одну остановку Shipment.xls 8 Возможные инциденты и пути их разрешения До передачи на поддержку все возникающие интеграционных потоков. инциденты устраняются доработкой 9 Последующие доработки Структура полей, их описание и мэппинг представлены в документе - интеграционный дизайн (ИД). Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 44 из 45 Управление по операционной деятельности Название документа Версия документа, дата Автор, должность Инструкция для 2-й линии поддержки 2.6, 14.12.2022. Пахомов А.С., разработчик Все последующие изменения структуры полей, их описаний и мэппингов будут отображаться в документе ИД. INTEG-2659 Настройка SAP PI для обработки заказов на списание и формирования PIX на основании Shipconfirm 1) из SAP ERP передаются в интерфейс si_erp_manh_do_outb сообщения с типом заказа = 32. Нужно посмотреть, добавлен ли в PI добавление к значению "32" описания На стороне PI происходит преобразование значений: «9» - «9-Возврат» «5» - «5-Разнарядка» «4» - «4-Обычный» «32» - «32-Списание» 2) Если в теге <DoType> в ShipConfirm указаны значения «Customer Order» или «Return to Business Partner», то на основании данного shipconfirm нужно в PI создать сообщение PIX, которое в дальнейшем должно быть передано в SAP POS DM. На основании этого PIX должен быть создан IDOC WPUWBW (драфт мэппинга Shipconfirm в PIX подготовит Анна Матвеева). Для служебного пользования X5 Retail Group Распечатано: 20.09.2024 Страница 45 из 45