ТЗ. ФМ ZKVET_TROPER V2
+----------+--------------+--------------------+------------------------------------------------------------------------------------+-------------------+
| # Версия | # Дата | # Автор | # Комментарий | # Номера запросов |
++++==================================================+=+
| # 1 | # 25.02.2026 | # Поликарпов А. Е. | # Оригинальная версия. | # HEDK904163 |
+----------+--------------+--------------------+------------------------------------------------------------------------------------+-------------------+
| # 2 | # 19.03.2026 | # Поликарпов А. Е. | # Исправление ошибки отсутствия завода для определения списка рассылки об ошибках. | # HEDK904326 |
+----------+--------------+--------------------+------------------------------------------------------------------------------------+-------------------+
Вводная информация
Функциональный модуль ZKVET_TROPER Транспортная операция предназначен
для обработки транспортной операции в Меркурии.
Цель доработки
Требуется реализовать функциональный модуль ZKVET_TROPER Транспортная
операция.
Место реализации
SAP ERP.
Схема реализации
SAP ERP
-
Изменить реализацию ФМ ZKVET_TROPER для возврата сообщений об
ошибках.- Если после операции регионализации (вызова ФМ ZKVET_REGOPER) RC
<> 0, то добавить сообщения из параметра T_MESSAGE в таблицу
T_MESSAGE в месте кода:
- Если после операции регионализации (вызова ФМ ZKVET_REGOPER) RC
{width="2.6055785214348206in"
height="2.6983792650918637in"}
- Если идентификатор группы условий перемещений не получен --
заполнить таблицу T_MESSAGE в месте кода
{width="5.648181321084865in"
height="0.8505183727034121in"}Сообщением с ошибкой «&[EWMVBELN] Ошибка получения номера из
&['/KVET/CNDN'] диапазона номеров» (класс ZKVET, номер 003).
- Если идентификатор транспортной операции не получен -- заполнить
таблицу T_MESSAGE в месте кода
{width="5.6382852143482065in"
height="0.7709142607174103in"}Сообщением с ошибкой «&[EWMVBELN] Ошибка получения номера из
&['/KVET/TROP'] диапазона номеров» (класс ZKVET, номер 003).
- Если идентификатор ВСД не получен -- заполнить таблицу T_MESSAGE в
месте кода
{width="5.7229822834645665in"
height="0.9143219597550306in"}Сообщением с ошибкой «&[EWMVBELN] Ошибка получения номера из
&['/KVET/VSD'] диапазона номеров» (класс ZKVET, номер 003).
- Если идентификатор записи транспортных данных не получен --
заполнить таблицу T_MESSAGE в месте кода
{width="5.698319116360455in"
height="1.0088845144356955in"}Сообщением с ошибкой «&[EWMVBELN] Ошибка получения номера из
&['/KVET/TRNS'] диапазона номеров» (класс ZKVET, номер 003).
- Если логин системного пользователя для вызова методов Меркурия не
найден -- заполнить таблицу T_MESSAGE в месте кода
{width="4.136169072615923in"
height="0.9727515310586177in"}Сообщением с ошибкой «&[EWMVBELN] Пользователь для системы ВЕТИС не
определён» (класс ZKVET, номер 004).
- Если идентификатор ВСД не получен -- заполнить таблицу T_MESSAGE в
месте кода
{width="5.652470472440945in"
height="1.1990080927384077in"}Сообщением с ошибкой «&[EWMVBELN] Ошибка получения номера из
&['/KVET/VSD'] диапазона номеров» (класс ZKVET, номер 003).
- Если идентификатор партии не получен -- заполнить таблицу T_MESSAGE
в месте кода
{width="5.639760498687664in"
height="0.8287740594925634in"}Сообщением с ошибкой «&[EWMVBELN] Ошибка получения номера из
&['/KVET/BATCH'] диапазона номеров» (класс ZKVET, номер 003).
- Если идентификатор связанного списка документов не получен --
заполнить таблицу T_MESSAGE в месте кода
{width="5.597728565179352in"
height="0.9424037620297463in"}Сообщением с ошибкой «&[EWMVBELN] Ошибка получения номера из
&['/KVET/RFDL'] диапазона номеров» (класс ZKVET, номер 003).
- Если идентификатор связанного списка документов не получен --
заполнить таблицу T_MESSAGE в месте кода
{width="5.63007874015748in"
height="0.8607042869641295in"}Сообщением с ошибкой «&[EWMVBELN] Ошибка получения номера из
&['/KVET/RFDL'] диапазона номеров» (класс ZKVET, номер 003).
- Если идентификатор связанного списка документов не получен --
заполнить таблицу T_MESSAGE в месте кода
{width="5.65636154855643in"
height="0.8582370953630796in"}Сообщением с ошибкой «&[EWMVBELN] Ошибка получения номера из
&['/KVET/RFDL'] диапазона номеров» (класс ZKVET, номер 003).
- Если при создании запроса на транспортную партию в Меркурий возникла
ошибка, которая была перехвачена в исключении, то заполнить таблицу
T_MESSAGE в месте кода
{width="4.449056211723534in"
height="1.5413396762904636in"}Сообщением с ошибкой с исходящей поставкой ERP и текстом ошибки.
- Если при отправке сообщения о создании транспортной партии в
Меркурии возникла ошибка, которая перехвачена в исключении, то
заполнить таблицу T_MESSAGE в месте кода
{width="4.449056211723534in"
height="1.5413396762904636in"}Сообщением с ошибкой с исходящей поставкой ERP и текстом ошибки.
- Если при отправке сообщения о создании транспортной партии в
Меркурии статус заявки непустой, равен '004' или '099', то заполнить
таблицу T_MESSAGE в месте кода
{width="5.061981627296588in"
height="1.1910542432195976in"}Сообщением с ошибкой с исходящей поставкой ERP и текстом ошибки.
- Если при получении ответа на операцию по созданию транспортной
партии в Меркурии ошибка, которая перехвачена в исключении, то
заполнить таблицу T_MESSAGE в месте кода
{width="3.648624234470691in"
height="1.264035433070866in"}Сообщением с предупреждением (не ошибкой!) с исходящей поставкой ERP и
текстом ошибки.
Версия 2 от 19.03.2026
- Ввиду того, что параметр EWMWERKS не обязательный и для некоторых
случаев не определяется в исходном коде, то в конце ФМ рассылка
выполнена не будет, так как не будет найден список рассылки в ФМ
ZKVET_SEND_MAIL (ракурс ZKVET_V_MAIL).
Для исправления ошибки при отправке сообщений об ошибках в месте
исходного кода
{width="5.756856955380577in"
height="1.6353772965879265in"}получить номер завода LIPS-WERKS в переменную EWMWERKS для исходящей
поставки EWMVBELN.
{width="2.6055785214348206in"
{width="5.648181321084865in"
{width="5.6382852143482065in"
{width="5.7229822834645665in"
{width="5.698319116360455in"
{width="4.136169072615923in"
{width="5.652470472440945in"
{width="5.639760498687664in"
{width="5.597728565179352in"
{width="5.63007874015748in"
{width="5.65636154855643in"
{width="4.449056211723534in"
{width="5.061981627296588in"
{width="5.756856955380577in"