Получение дочерних отправок для заданной отправки ================================================= .. code:: abap *"---------------------------------------------------------------------- *"*"Локальный интерфейс: *" IMPORTING *" REFERENCE(IV_RECORD_ID) TYPE /TRL/XDE_HEADER-RECORD_ID *" REFERENCE(IV_REL_TYPE) TYPE /TRL/XDE_SHIP_RL-RTYPE DEFAULT 'RSC' *" REFERENCE(IV_MAX_LEVEL) TYPE INT3 DEFAULT '1' *" EXPORTING *" REFERENCE(ET_CHILDREN) TYPE /TRL/XDE_T_RECORD_ID *" CHANGING *" VALUE(CV_LEVEL) TYPE INT3 OPTIONAL *" EXCEPTIONS *" NOTHING_FOUND *" LEVEL_ERROR *"---------------------------------------------------------------------- Функциональный модуль ``/TRL/XDE_API_SHIPM_GET_CHILD`` предназначен для получения всех дочерних отправок для заданной отправки. .. table:: Описание интерфейса функционального модуля ``/TRL/XDE_API_SHIPM_GET_CHILD`` :align: center :widths: 2 8 +------------------------------------+-------------------------------------------------------------------------------------------------------+ | Параметр | Описание | +====================================+=======================================================================================================+ | ``IMPORTING`` | +------------------------------------+-------------------------------------------------------------------------------------------------------+ | ``IV_RECORD_ID`` | Уникальный идентификатор отправки, для которой выполняется поиск дочерних отправок. | +------------------------------------+-------------------------------------------------------------------------------------------------------+ | ``IV_REL_TYPE`` | Тип связи между отправками. | +------------------------------------+-------------------------------------------------------------------------------------------------------+ | ``IV_MAX_LEVEL`` | Максимальная глубина поиска. Если указано значение больше 0, то выполняется рекурсивный поиск | | | («дочерние к дочерним»). | +------------------------------------+-------------------------------------------------------------------------------------------------------+ | ``EXPORTING`` | +------------------------------------+-------------------------------------------------------------------------------------------------------+ | ``ET_CHILDREN`` | Список дочерних отправок. | +------------------------------------+-------------------------------------------------------------------------------------------------------+ | ``CHANGING`` | +------------------------------------+-------------------------------------------------------------------------------------------------------+ | ``CV_LEVEL`` | Для внутреннего использования. | +------------------------------------+-------------------------------------------------------------------------------------------------------+ | ``EXCEPTIONS`` | +------------------------------------+-------------------------------------------------------------------------------------------------------+ | ``NOTHING_FOUND`` | Дочерние отправки не найдены. | +------------------------------------+-------------------------------------------------------------------------------------------------------+ | ``LEVEL_ERROR`` | Для внутреннего использования. | +------------------------------------+-------------------------------------------------------------------------------------------------------+ Функциональный модуль является рекурсивным, поэтому сначала чистится выходная таблица ``et_children`` и проверяется, что параметр ``cv_level`` меньше или равен максимальному ``iv_max_level``. Затем выбираются данные из таблицы ``/TRL/XDE_SHIP_RL`` и для каждой записи также рекурсивно запускается ФМ ``/TRL/XDE_API_SHIPM_GET_CHILD``. Если в ходе выполнения данного ФМ находятся данные, то они добавляются к найденным ранее.