Создание МЧД по готовым данным
===============================

.. code:: abap

    *"----------------------------------------------------------------------
    *"*"Локальный интерфейс:
    *"  IMPORTING
    *"     REFERENCE(IT_MCHD_DATA) TYPE  /TRL/XDE_T_MCHD_MANUAL_CREATE
    *"     REFERENCE(IV_COMMIT) TYPE  FLAG_X
    *"  EXPORTING
    *"     REFERENCE(ES_RETURN) TYPE  /TRL/XDE_RETURN
    *"----------------------------------------------------------------------  

Функциональный модуль ``/TRL/XDE_API_MCHD_MANUAL_CREAT`` предназначен для создания МЧД в продукте xDE на основе данных, собранных вне продукта.


.. list-table:: Описание интерфейса функционального модуля /TRL/XDE_API_MCHD_MANUAL_CREAT
   :widths: auto
   :header-rows: 1

   * - Имя параметра
     - Тип параметра
     - Элемент данных
     - Описание
   * - IT_MCHD_DATA
     - Importing
     - /TRL/XDE_T_MCHD_MANUAL_CREATE
     - Набор данных для сохранения МЧД в продукте
   * - IV_COMMIT
     - Importing
     - FLAG_X
     - Флаг выполнения коммита
   * - ES_RETURN
     - Exporting
     - /TRL/XDE_RETURN
     - Код и текст сообщения ошибки

Первая проверка выполняет поиск записей в наборе с пустым значением номера МЧД и ИНН, выдавшего доверенность. Если такие записи были найдены, работа функционального
модуля будет прекращена и заполнен параметр ``ES_RETURN``.

Далее проверяются полномочия на создание МЧД. Проверяется объект полномочий ``/TRL/XDE_M`` поле ``XDE_MCHD`` код действия "01". Если полномочий нет, 
работа функционального модуля будет прервана.

Далее начинается цикл по набору данных. Из каждой строки берутся данные для заполнения заголовка, таблица представителей и таблица кодов полномочий.
МЧД присваивается статус "AR" (зарегистрировано).
Для каждой записи вызывается метод сохранения данных. Внутри метода сохранения не вызывается коммит, если значение входного параметра ``IV_COMMIT`` равно "X".
Коммит будет выполнен после выполнения сохранения по всему набору данных, если во время обновления не возникло ни одной ошибки и параметр ``IV_COMMIT`` равен "X"
- будет выполнен коммит в БД.