Прежде всего, SHP_OBDLV_SAVE_REPLICA02 - это IDoc на основе рабочего процесса, который запускается идентификатором процесса рабочего процесса WS30000483. Поэтому вам следует проверить, запущено ли в этом процессе ваше событие (создание исходящей доставки), чтобы убедиться, что оно будет работать.
Во-вторых, если вы хотите заполнить сегменты индивидуально, вы должны найти FM, который срабатывает во время отправки IDoc. Вот как это сделать:
- Перейдите к Tcode WE57 (эквивалентному представлению VEDIEDIFCT или таблице EDIFCT) и выполните поиск по полю IDOCTYP, чтобы найти свой FM по IDoc.
- В нашем случае это
BAPI_IDOC_INPUT1
, который является обычным FM, который ищет соответствующий FM из таблиц отображения TBDBA / TBDBE и, если он не найден, выдает ошибку.
- В этой обработке FM вы найдете процедуру заполнения сегмента
В-третьих, вы уверены, что вам особенно нужен SHP_OBDLV_SAVE_REPLICA02
для ваших целей? Это входящий IDoc, который не является вашим случаем, вам нужен исходящий.
Полагаю, вам нужно сообщение DESADV и код процесса SD05. Вот как найти FM для этого IDoc: перейдите к t64 WE64, выберите тип сообщения и код процесса, и вы увидите обработку FM для этого IDoc
Вот FM обработки для этого IDoc, в котором есть форма SEGMENTS_FILL
, где сегменты заполнены.
Просто скопируйте этот FM в Z, внесите необходимые исправления и заполните эту запись настройки в WE64.