SAPPER SETTINGS - Настройки загрузки — различия между версиями

Материал из razgovorov.ru
Перейти к: навигация, поиск
(Создана пустая страница)
 
(FILE)
 
(не показаны 22 промежуточные версии 2 участников)
Строка 1: Строка 1:
 +
=Настройка загрузки=
 +
На основании входящего электронного документа в SAP можно создать документ, используя:
 +
* метод создания с помощью пакетного ввода (BATCH IPNUT)
 +
* BAPI
  
 +
Настройки загрузки сгруппированы в файлы, которые начинаются с префикса UI_, после префикса следует идентификатор документа, к примеру, ЭДОНакл_1175010_5_01.
 +
 +
На данный момент поддерживается создание документов из электронных документов:
 +
* счет-фактура
 +
* накладная
 +
 +
Верхний уровень настройки имеет следующее представление:
 +
#UPLOAD_DATA_XSLT – указание XSLT преобразования входящего XML в ABAP структуру, чаще всего используется "/SBIS/DOC301_XML_TO_ABAP"
 +
#FILE – массив, содержащий перечень создаваемых документов
 +
 +
Внутри массива FILE может быть перечислено несколько создаваемых документов, которые будут отображаться в всплывающем меню.
 +
 +
[[Файл:Контекстное_меню_загрузки.png|контекстное меню загрузки в SAP]]
 +
 +
<div style="border: 1px dashed;">
 +
пример файла загрузки с массивом FILE со списком создаваемых документов
 +
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 +
<br>
 +
<source lang=JSON>
 +
{
 +
  "UPLOAD_DATA_XSLT": {
 +
    "Значение": "/SBIS/DOC301_XML_TO_ABAP"
 +
  },
 +
  "FILE": {
 +
    "Значение": [
 +
      {
 +
        "Имя": "MENU_CREATE_PURCHASE_ORDER_BATCH",
 +
        "Значение": []
 +
      },
 +
      {
 +
        "Имя": "MENU_CREATE_GOODS_RECEIPT_BATCH",
 +
        "Значение": []
 +
      },
 +
      {
 +
        "Имя": "MENU_CREATE_INCOMING_INVOICE_BATCH",
 +
        "Значение": []
 +
      },
 +
      {
 +
        "Имя": "MENU_CREATE_PURCHASE_ORDER_BAPI",
 +
        "Значение": []
 +
      }
 +
    ]
 +
  }
 +
}
 +
</source>
 +
</div>
 +
</div>
 +
 +
==FILE==
 +
 +
Массив FILE содержит список создаваемых документов и имеет структуру:
 +
* [имя] - идентификатор пункта меню загрузки
 +
* [значение] - набор настроек для загрузки
 +
** DEFAULT - значение по умолчанию для создания документа по кнопке Загрузить в SAP на экране отображения пакетов документов
 +
** MENU_TEXT - отображаемое имя в списке контекстного меню
 +
** DOC_TYPE - тип документа из справочника типов документов DOC_TYPE
 +
** UPLOAD_DATA_CLASS_NAME - наименование класса создания документов
 +
** UPLOAD_DATA_METHOD_NAME - указание метода класса создания документов:
 +
**: CREATE_BAPI_DOC - создание документа используя BAPI
 +
**: CREATE_BATCH_DOC - создание документа используя пакетный ввод
 +
** MISSED_FIELDS_FUNCTION_NAME - указание ФМ для вызова экрана заполнения дополнительных полей, например, экран сопоставления номенклатуры
 +
** FACE_ROLE_TO_GET_BUKRS - сторона обмена содержащая данные для БЕ
 +
** FACE_ROLE_TO_GET_LIFNR - сторона обмена содержащая данные для поставщика
 +
** TRANSACTION_NAME - наименование транзакции или BAPI
 +
** POSITION_NUMBER_INCREASE - инкремент позиции
 +
** RESULT - поле получения результата выполнения (номера документа)
 +
*** [имя] - переменная или указание на сообщение:
 +
***: переменная API2_PACKET, в которую кладется результат - для BAPI
 +
***: MSGTYP_MSGID_MSGNR - для BATCH. Требуется указать сообщение в [значении], в котором вернется результат (может быть несколько вариантов):
 +
***:: PURCHASE ORDER  msgtyp='S' msgid='06'  msgnr='017'  msgv2=ebeln
 +
***:: PURCHASE ORDER  msgtyp='S' msgid='MEPO' msgnr='013'  msgv2=ebeln
 +
***:: GOODS RECEIPT  msgtyp='S' msgid='MIGO' msgnr='012'  msgv1=mblnr
 +
***:: INVOICE        msgtyp='S' msgid='M8'  msgnr='388'  msgv1=belnr
 +
***:: INVOICE        msgtyp='S' msgid='M8'  msgnr='391'  msgv1=belnr
 +
***:: INVOICE        msgtyp='S' msgid='M8'  msgnr='399'  msgv1=belnr
 +
***:: INVOICE        msgtyp='S' msgid='M8'  msgnr='437'  msgv1=belnr
 +
***:: INVOICE        msgtyp='S' msgid='M8'  msgnr='438'  msgv1=belnr
 +
*** [тип] - тип переменной значения результата
 +
*** [значение] - переменная с результатом
 +
** [набор параметров для запуска транзакции] - набор параметров структуры CTU_PARAMS для запуска транзакции при использовании пакетного ввода
 +
*** CTU_PARAMS_DISMODE - режим запуска
 +
*** CTU_PARAMS_UPDMODE - режим обновления
 +
*** CTU_PARAMS_CATTMODE - режим CATT
 +
*** CTU_PARAMS_DEFSIZE - стандартный размер экрана или размер текущего экрана
 +
*** CTU_PARAMS_RACOMMIT - COMMIT WORK останавливает или не останавливает работы
 +
*** CTU_PARAMS_NOBINPT - управление переменной пакетного ввода (заполнять по умолчанию)
 +
*** CTU_PARAMS_NOBIEND - управление переменной пакетного ввода (заполнять после обработки)
 +
** [массив заполнения входных данных]
 +
**: BAPI
 +
**: BATCH
 +
 +
<div style="border: 1px dashed;">
 +
пример FILE для создания заказа на закупку через BAPI результат возвращается в BELNR из переменной EXPPURCHASEORDER с типом BAPIMEPOHEADER-PO_NUMBER
 +
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 +
<br>
 +
<source lang=JSON>
 +
{
 +
        "Имя": "MENU_CREATE_PURCHASE_ORDER_BAPI",
 +
        "Значение": [
 +
          {
 +
            "Имя": "DEFAULT",
 +
            "Значение": "X"
 +
          },
 +
          {
 +
            "Имя": "MENU_TEXT",
 +
            "Значение": "Создать Заказ (BAPI)"
 +
          },
 +
          {
 +
            "Имя": "DOC_TYPE",
 +
            "Значение": "IC"
 +
          },
 +
          {
 +
            "Имя": "UPLOAD_DATA_CLASS_NAME",
 +
            "Значение": "/SBIS/CL_CREATE_SAP_DOCUMENTS"
 +
          },
 +
          {
 +
            "Имя": "UPLOAD_DATA_METHOD_NAME",
 +
            "Значение": "CREATE_BAPI_DOC"
 +
          },
 +
          {
 +
            "Имя": "MISSED_FIELDS_FUNCTION_NAME",
 +
            "Значение": "/SBIS/FM_CREATE_BAPI_PORDER",
 +
            "Тип": "String"
 +
          },
 +
          {
 +
            "Имя": "FACE_ROLE_TO_GET_BUKRS",
 +
            "Значение": "Получатель"
 +
          },
 +
          {
 +
            "Имя": "FACE_ROLE_TO_GET_LIFNR",
 +
            "Значение": "Отправитель"
 +
          },
 +
          {
 +
            "Имя": "TRANSACTION_NAME",
 +
            "Значение": "BAPI_PO_CREATE1"
 +
          },
 +
          {
 +
            "Имя": "POSITION_NUMBER_INCREASE",
 +
            "Значение": "10"
 +
          },
 +
          {
 +
            "Имя": "RESULT",
 +
            "Значение": [
 +
              {
 +
                "Имя": "BELNR",
 +
                "Тип": "BAPIMEPOHEADER-PO_NUMBER",
 +
                "Значение": "EXPPURCHASEORDER"
 +
              }
 +
            ]
 +
          },
 +
          {
 +
            "Имя": "BAPI",
 +
            "Тип": "",
 +
            "Подтип": "",
 +
            "Значение": []
 +
          }
 +
        ]
 +
      }
 +
    ]
 +
  }
 +
</source>
 +
</div>
 +
</div>
 +
<br>
 +
<div style="border: 1px dashed;">
 +
пример FILE для создания заказа на закупку через BATCH, вызывается транзакция ME21N с опциями запуска, результат возвращается в сообщении с описанным типом
 +
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 +
<br>
 +
<source lang=JSON>
 +
{
 +
        "Имя": "MENU_CREATE_PURCHASE_ORDER_BATCH",
 +
        "Значение": [
 +
          {
 +
            "Имя": "DEFAULT",
 +
            "Значение": ""
 +
          },
 +
          {
 +
            "Имя": "MENU_TEXT",
 +
            "Значение": "Создать Заказ (ПакВвод)"
 +
          },
 +
          {
 +
            "Имя": "DOC_TYPE",
 +
            "Значение": "IC"
 +
          },
 +
          {
 +
            "Имя": "UPLOAD_DATA_CLASS_NAME",
 +
            "Значение": "/SBIS/CL_CREATE_SAP_DOCUMENTS"
 +
          },
 +
          {
 +
            "Имя": "UPLOAD_DATA_METHOD_NAME",
 +
            "Значение": "CREATE_BATCH_DOC"
 +
          },
 +
          {
 +
            "Имя": "MISSED_FIELDS_FUNCTION_NAME",
 +
            "Значение": "/SBIS/FM_CREATE_BATCH_PORDER",
 +
            "Тип": "String"
 +
          },
 +
          {
 +
            "Имя": "FACE_ROLE_TO_GET_BUKRS",
 +
            "Значение": "Получатель"
 +
          },
 +
          {
 +
            "Имя": "FACE_ROLE_TO_GET_LIFNR",
 +
            "Значение": "Отправитель"
 +
          },
 +
          {
 +
            "Имя": "CTU_PARAMS_DISMODE",
 +
            "Значение": "E" //остановить создание, если есть ошибка и показать экран
 +
          },
 +
          {
 +
            "Имя": "CTU_PARAMS_UPDMODE",
 +
            "Значение": "S" //синхронное выполнение (COMMIT AND WAIT)
 +
          },
 +
          {
 +
            "Имя": "CTU_PARAMS_CATTMODE",
 +
            "Значение": " " //не используя CATT
 +
          },
 +
          {
 +
            "Имя": "CTU_PARAMS_DEFSIZE",
 +
            "Значение": "" //текущий размер экрана
 +
          },
 +
          {
 +
            "Имя": "CTU_PARAMS_RACOMMIT",
 +
            "Значение": "X" //COMMIT WORK не останавливает обработки
 +
          },
 +
          {
 +
            "Имя": "CTU_PARAMS_NOBINPT",
 +
            "Значение": " " //системное поле sy-binpt не заполнено
 +
          },
 +
          {
 +
            "Имя": "CTU_PARAMS_NOBIEND",
 +
            "Значение": " " //системное поле sy-binpt не заполняется после конца обработки
 +
          },
 +
          {
 +
            "Имя": "TRANSACTION_NAME",
 +
            "Значение": "ME21N" //транзакция
 +
          },
 +
          {
 +
            "Имя": "POSITION_NUMBER_INCREASE",
 +
            "Значение": "10" //инкремент позиции
 +
          },
 +
          {
 +
            "Имя": "RESULT", //для пакетного ввода результат лежит в разных системных сообщениях, здесь мы указываем тип, ид, номер и сообщение
 +
            "Значение": [
 +
              {
 +
                "Имя": "MSGTYP_MSGID_MSGNR",
 +
                "Значение": "S|06|017|MSGV2"
 +
              },
 +
              {
 +
                "Имя": "MSGTYP_MSGID_MSGNR",
 +
                "Значение": "S|MEPO|013|MSGV2"
 +
              }
 +
            ]
 +
          },
 +
          {
 +
            "Имя": "BATCH",
 +
            "Тип": "",
 +
            "Подтип": "",
 +
            "Значение": []
 +
          }
 +
        ]
 +
}
 +
</source>
 +
</div>
 +
</div>
 +
 +
===BAPI===
 +
 +
Структура массива значений BAPI:
 +
* [имя] - имя параметра
 +
* [тип] - тип параметра
 +
*: Fmstructure - структура
 +
*: Fmfield - поле
 +
*: Fmtable - таблица
 +
*: Field - поле
 +
*: String - строка
 +
* [подтип] - подтип параметра
 +
*: Export - входная структура для BAPI
 +
*: Import - выходная структура для BAPI
 +
*: Table - таблица BAPI
 +
* [формат] - указание на ABAP тип
 +
* [массив значений]
 +
** [имя] - имя поля структуры
 +
** [значение] - значение
 +
** [тип] - тип значения
 +
**: Field - поле
 +
**: String - строка
 +
**: Classfield - поле класса
 +
** [подтип]
 +
**: Export
 +
**: Import
 +
** [формат] - использовать форматирование (/SBIS/CL_MAPPING->CONVERT_FIELD_TYPE)
 +
 +
Для каждого BAPI требуется описать маппинг всех необходимых входных и выходных структур в массиве BAPI. Рассмотрим на примере BAPI_PO_CREATE1.
 +
 +
[[Файл:BAPI_PO_CREATE1_0.png]]
 +
[[Файл:BAPI_PO_CREATE1_1.png‎]]
 +
[[Файл:BAPI_PO_CREATE1_2.png]]
 +
 +
В нашем примере требуется описать маппинг для входных структуры POHEADER, POHEADERX, NO_PRICE_FROM_PO, POITEM, POITEMX, POSCHEDULE, POSCHEDULEX и выходных EXPPURCHASEORDER, RETURN.
 +
 +
<div style="border: 1px dashed;">
 +
пример заполнения POHEADER, POHEADERX, NO_PRICE_FROM_PO, POITEM, POITEMX, POSCHEDULE, POSCHEDULEX, EXPPURCHASEORDER, RETURN для BAPI BAPI_PO_CREATE1 создание заказа на закупку
 +
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 +
<br>
 +
<source lang=JSON>
 +
{
 +
              {
 +
                "Имя": "POHEADER",
 +
                "Тип": "Fmstructure",
 +
                "Подтип": "Export",
 +
                "Формат": "BAPIMEPOHEADER",
 +
                "Значение": [
 +
                  {
 +
                    "Имя": "COMP_CODE",
 +
                    "Значение": "IR_INPUT_DATA->BUKRS",
 +
                    "Тип": "Field",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "DOC_TYPE",
 +
                    "Значение": "NB",
 +
                    "Тип": "String",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "VENDOR",
 +
                    "Значение": "IR_INPUT_DATA->LIFNR",
 +
                    "Тип": "Field",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "DOC_DATE",
 +
                    "Значение": "IR_INPUT_DATA->DATE",
 +
                    "Тип": "Field",
 +
                    "Подтип": "Export",
 +
                    "Формат": "DATE"
 +
                  },
 +
                  {
 +
                    "Имя": "PURCH_ORG",
 +
                    "Значение": "IR_INPUT_DATA->EKORG",
 +
                    "Тип": "Field",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "PUR_GROUP",
 +
                    "Значение": "IR_INPUT_DATA->EKGRP",
 +
                    "Тип": "Field",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  }
 +
                ]
 +
              },
 +
              {
 +
                "Имя": "POHEADERX",
 +
                "Тип": "Fmstructure",
 +
                "Подтип": "Export",
 +
                "Формат": "BAPIMEPOHEADERX",
 +
                "Значение": [
 +
                  {
 +
                    "Имя": "COMP_CODE",
 +
                    "Значение": "X",
 +
                    "Тип": "String",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "DOC_TYPE",
 +
                    "Значение": "X",
 +
                    "Тип": "String",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "VENDOR",
 +
                    "Значение": "X",
 +
                    "Тип": "String",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "DOC_DATE",
 +
                    "Значение": "X",
 +
                    "Тип": "String",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "PURCH_ORG",
 +
                    "Значение": "X",
 +
                    "Тип": "String",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "PUR_GROUP",
 +
                    "Значение": "X",
 +
                    "Тип": "String",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  }
 +
                ]
 +
              },
 +
              {
 +
                "Имя": "NO_PRICE_FROM_PO",
 +
                "Тип": "Fmfield",
 +
                "Подтип": "Export",
 +
                "Формат": "CHAR01",
 +
                "Значение": [
 +
                  {
 +
                    "Имя": "*",
 +
                    "Значение": "X",
 +
                    "Тип": "String",
 +
                    "Подтип": "Export",
 +
                    "Формат": ""
 +
                  }
 +
                ]
 +
              },
 +
              {
 +
                "Имя": "POITEM",
 +
                "Тип": "Fmtable",
 +
                "Подтип": "Table",
 +
                "Формат": "BAPIMEPOITEM",
 +
                "Значение": [
 +
                  {
 +
                    "Имя": "POITEM",
 +
                    "Тип": "IR_INPUT_DATA->ITEMS",
 +
                    "Подтип": "",
 +
                    "Формат": "BAPIMEPOITEM",
 +
                    "Значение": [
 +
                      {
 +
                        "Имя": "PO_ITEM",
 +
                        "Значение": "GV_ITEMS_POS",
 +
                        "Тип": "Classfield",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "MATERIAL",
 +
                        "Значение": "ID",
 +
                        "Тип": "Field",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "PLANT",
 +
                        "Значение": "WERKS",
 +
                        "Тип": "Field",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "STGE_LOC",
 +
                        "Значение": "LGORT",
 +
                        "Тип": "Field",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "QUANTITY",
 +
                        "Значение": "AMOUNT",
 +
                        "Тип": "Field",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "NET_PRICE",
 +
                        "Значение": "PRICE",
 +
                        "Тип": "Field",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "NO_ROUNDING",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "TAX_CODE",
 +
                        "Значение": "MWSKZ",
 +
                        "Тип": "Field",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "VAL_TYPE",
 +
                        "Значение": "",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "UNLIMITED_DLV",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "IR_IND",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "GR_IND",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      }
 +
                    ]
 +
                  }
 +
                ]
 +
              },
 +
              {
 +
                "Имя": "POITEMX",
 +
                "Тип": "Fmtable",
 +
                "Подтип": "Table",
 +
                "Формат": "BAPIMEPOITEMX",
 +
                "Значение": [
 +
                  {
 +
                    "Имя": "POITEMX",
 +
                    "Тип": "IR_INPUT_DATA->ITEMS",
 +
                    "Подтип": "",
 +
                    "Формат": "BAPIMEPOITEMX",
 +
                    "Значение": [
 +
                      {
 +
                        "Имя": "PO_ITEM",
 +
                        "Значение": "GV_ITEMS_POS",
 +
                        "Тип": "Classfield",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "MATERIAL",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "PLANT",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "STGE_LOC",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "QUANTITY",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "NET_PRICE",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "NO_ROUNDING",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "TAX_CODE",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "VAL_TYPE",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "UNLIMITED_DLV",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "IR_IND",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "GR_IND",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      }
 +
                    ]
 +
                  }
 +
                ]
 +
              },
 +
              {
 +
                "Имя": "POSCHEDULE",
 +
                "Тип": "Fmtable",
 +
                "Подтип": "Table",
 +
                "Формат": "BAPIMEPOSCHEDULE",
 +
                "Значение": [
 +
                  {
 +
                    "Имя": "POSCHEDULE",
 +
                    "Тип": "IR_INPUT_DATA->ITEMS",
 +
                    "Подтип": "Table",
 +
                    "Формат": "BAPIMEPOSCHEDULE",
 +
                    "Значение": [
 +
                      {
 +
                        "Имя": "PO_ITEM",
 +
                        "Значение": "GV_ITEMS_POS",
 +
                        "Тип": "Classfield",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "SCHED_LINE",
 +
                        "Значение": "1",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "DEL_DATCAT_EXT",
 +
                        "Значение": "D",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "DELIVERY_DATE",
 +
                        "Значение": "DATE",
 +
                        "Тип": "Field",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      }
 +
                    ]
 +
                  }
 +
                ]
 +
              },
 +
              {
 +
                "Имя": "POSCHEDULEX",
 +
                "Тип": "Fmtable",
 +
                "Подтип": "Table",
 +
                "Формат": "BAPIMEPOSCHEDULX",
 +
                "Значение": [
 +
                  {
 +
                    "Имя": "POSCHEDULEX",
 +
                    "Тип": "IR_INPUT_DATA->ITEMS",
 +
                    "Подтип": "Table",
 +
                    "Формат": "BAPIMEPOSCHEDULX",
 +
                    "Значение": [
 +
                      {
 +
                        "Имя": "PO_ITEM",
 +
                        "Значение": "GV_ITEMS_POS",
 +
                        "Тип": "Classfield",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "SCHED_LINE",
 +
                        "Значение": "1",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "DEL_DATCAT_EXT",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      },
 +
                      {
 +
                        "Имя": "DELIVERY_DATE",
 +
                        "Значение": "X",
 +
                        "Тип": "String",
 +
                        "Подтип": "",
 +
                        "Формат": ""
 +
                      }
 +
                    ]
 +
                  }
 +
                ]
 +
              },
 +
              {
 +
                "Имя": "EXPPURCHASEORDER",
 +
                "Тип": "Fmfield",
 +
                "Подтип": "Import",
 +
                "Формат": "BAPIMEPOHEADER-PO_NUMBER",
 +
                "Значение": []
 +
              },
 +
              {
 +
                "Имя": "RETURN",
 +
                "Тип": "Fmtable",
 +
                "Подтип": "Table",
 +
                "Формат": "BAPIRET2",
 +
                "Значение": ""
 +
              }
 +
}
 +
</source>
 +
</div>
 +
</div>
 +
 +
===BATCH===
 +
 +
Структура пакетного ввода состоит из набора массивов последовательно заполняемых экранов транзакции:
 +
* [массив значений] - набор структур экранов
 +
** [имя] - название блока
 +
** [тип] - тип обработки блока:
 +
**: Header - /SBIS/CL_MAPPING->PARSE_BATCH_HEADER
 +
**: Items - /SBIS/CL_MAPPING->PARSE_BATCH_ITEMS
 +
** [массив значение блока] - маппинг структуры экрана
 +
*** [имя] - имя поля
 +
*** [значение] - значение поля
 +
*** [тип] - тип поля:
 +
***: String - фиксированная строка
 +
***: Field - поле
 +
***: ClassField - поле класса
 +
*** [подтип] - подтип:
 +
***: Bdcdynpro
 +
***: Bdcfield
 +
*** [формат] - использовать форматирование (/SBIS/CL_MAPPING->CONVERT_FIELD_TYPE) или использовать логические переходы между блоками:
 +
***: IF
 +
***: ENDIF
 +
***: IFNOT
 +
 +
<div style="border: 1px dashed;">
 +
пример заполнения вызова транзакции ME21N для создания заказа на закупку с помощью пакетного ввода
 +
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 +
<br>
 +
<source lang=JSON>
 +
{
 +
              {
 +
                "Имя": "HEADER",
 +
                "Тип": "Header",
 +
                "Значение": [
 +
                  {
 +
                    "Имя": "SAPLMEGUI",
 +
                    "Значение": "0014",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcdynpro",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_OKCODE",
 +
                    "Значение": "/00",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_CURSOR",
 +
                    "Значение": "MEPO_TOPLINE-BEDAT",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "MEPO_TOPLINE-BSART",
 +
                    "Значение": "IR_DATA->BSART",
 +
                    "Тип": "Field",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "MEPO_TOPLINE-SUPERFIELD",
 +
                    "Значение": "IR_DATA->LIFNR",
 +
                    "Тип": "Field",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "MEPO_TOPLINE-BEDAT",
 +
                    "Значение": "IR_DATA->DATE",
 +
                    "Тип": "Field",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "DYN_6000-LIST",
 +
                    "Значение": "  1",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "SAPLMEGUI",
 +
                    "Значение": "0014",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcdynpro",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_OKCODE",
 +
                    "Значение": "=TABHDT9",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_CURSOR",
 +
                    "Значение": "MEPO_TOPLINE-BEDAT",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "SAPLMEGUI",
 +
                    "Значение": "0014",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcdynpro",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_OKCODE",
 +
                    "Значение": "/00",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_CURSOR",
 +
                    "Значение": "MEPO1222-EKGRP",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "MEPO1222-EKORG",
 +
                    "Значение": "IR_DATA->EKORG",
 +
                    "Тип": "Field",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "MEPO1222-EKGRP",
 +
                    "Значение": "IR_DATA->EKGRP",
 +
                    "Тип": "Field",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "MEPO1222-BUKRS",
 +
                    "Значение": "IR_DATA->BUKRS",
 +
                    "Тип": "Field",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "DYN_6000-LIST",
 +
                    "Значение": "  1",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "SAPLMEGUI",
 +
                    "Значение": "0014",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcdynpro",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_OKCODE",
 +
                    "Значение": "=MEV4001BUTTON",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_CURSOR",
 +
                    "Значение": "MEPO1222-EKGRP",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  }
 +
                ]
 +
              },
 +
              {
 +
                "Имя": "ITEMS",
 +
                "Тип": "Items",
 +
                "Значение": {
 +
                  "ITEMS": [
 +
                    {
 +
                      "Имя": "SAPLMEGUI",
 +
                      "Значение": "0014",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "/00",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "MEPO1211-NAME1(01)",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "MEPO1211-EBELP(01)",
 +
                      "Значение": "GV_ITEMS_POS",
 +
                      "Тип": "ClassField",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "MEPO1211-EMATN(01)",
 +
                      "Значение": "IR_DATA->ID",
 +
                      "Тип": "Field",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "MEPO1211-MENGE(01)",
 +
                      "Значение": "IR_DATA->AMOUNT",
 +
                      "Тип": "Field",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": "POINTTOCOMMA"
 +
                    },
 +
                    {
 +
                      "Имя": "MEPO1211-EEIND(01)",
 +
                      "Значение": "IR_DATA->DATE",
 +
                      "Тип": "Field",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "MEPO1211-NETPR(01)",
 +
                      "Значение": "IR_DATA->PRICE",
 +
                      "Тип": "Field",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": "POINTTOCOMMA"
 +
                    },
 +
                    {
 +
                      "Имя": "MEPO1211-NAME1(01)",
 +
                      "Значение": "IR_DATA->WERKS",
 +
                      "Тип": "Field",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "MEPO1211-LGOBE(01)",
 +
                      "Значение": "IR_DATA->LGORT",
 +
                      "Тип": "Field",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "DYN_6000-LIST",
 +
                      "Значение": "GV_ITEMS_TABIX",
 +
                      "Тип": "ClassField",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLMEGUI",
 +
                      "Значение": "0014",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=TABIDT5",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "MEPO1211-EMATN(01)",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLMEGUI",
 +
                      "Значение": "0014",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "/00",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "MEPO1211-EMATN(01)",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLMEGUI",
 +
                      "Значение": "0014",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=TABIDT7",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "MEPO1211-EMATN(01)",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLMEGUI",
 +
                      "Значение": "0014",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "/00",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "MEPO_TOPLINE-BSART",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "MEPO1317-REPOS",
 +
                      "Значение": "X",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "MEPO1317-MWSKZ",
 +
                      "Значение": "IR_DATA->MWSKZ",
 +
                      "Тип": "Field",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "DYN_6000-LIST",
 +
                      "Значение": "GV_ITEMS_TABIX",
 +
                      "Тип": "ClassField",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLMEGUI",
 +
                      "Значение": "0014",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=TABIDT6",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "MEPO_TOPLINE-BSART",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLMEGUI",
 +
                      "Значение": "0014",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "/00",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "MEPO1313-UEBTO",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "MEPO1313-BWTAR",
 +
                      "Значение": "IR_DATA->BWTAR",
 +
                      "Тип": "Field",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "MEPO1313-UEBTK",
 +
                      "Значение": "X",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "DYN_6000-LIST",
 +
                      "Значение": "GV_ITEMS_TABIX",
 +
                      "Тип": "ClassField",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "GV_ITEMS_TABIX",
 +
                      "Значение": "1",
 +
                      "Тип": "ClassField",
 +
                      "Подтип": "String",
 +
                      "Формат": "IF"
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLMEGUI",
 +
                      "Значение": "0014",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=MEPO1211EDITFILTER",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "MEPO1211-EMATN(01)",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "DYN_6000-LIST",
 +
                      "Значение": "GV_ITEMS_TABIX",
 +
                      "Тип": "ClassField",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLSKBH",
 +
                      "Значение": "1500",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=DTC_WLSE",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLSKBH",
 +
                      "Значение": "1500",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=ALV_B_FILT",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLSSEL",
 +
                      "Значение": "1104",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=OPTI",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "%%DYN001-LOW",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPMSSY0",
 +
                      "Значение": "0120",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=PICK",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "09/04",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPMSSY0",
 +
                      "Значение": "0120",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=OKAY",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "09/09",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLSSEL",
 +
                      "Значение": "1104",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=CRET",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "%%DYN001-LOW",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "%%DYN001-LOW",
 +
                      "Значение": "GV_ITEMS_POS",
 +
                      "Тип": "ClassField",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "",
 +
                      "Значение": "",
 +
                      "Тип": "",
 +
                      "Подтип": "",
 +
                      "Формат": "ENDIF"
 +
                    },
 +
                    {
 +
                      "Имя": "GV_ITEMS_TABIX",
 +
                      "Значение": "1",
 +
                      "Тип": "ClassField",
 +
                      "Подтип": "String",
 +
                      "Формат": "IFNOT"
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLMEGUI",
 +
                      "Значение": "0014",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=MEPO1211EDITFILTER",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "MEPO1211-EMATN(01)",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "DYN_6000-LIST",
 +
                      "Значение": "GV_ITEMS_TABIX",
 +
                      "Тип": "ClassField",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLSKBH",
 +
                      "Значение": "1500",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=ALV_B_FILT",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "%#AUTOTEXT001",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "SAPLSSEL",
 +
                      "Значение": "1104",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcdynpro",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_OKCODE",
 +
                      "Значение": "=CRET",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "BDC_CURSOR",
 +
                      "Значение": "%%DYN001-LOW",
 +
                      "Тип": "String",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "%%DYN001-LOW",
 +
                      "Значение": "GV_ITEMS_POS",
 +
                      "Тип": "ClassField",
 +
                      "Подтип": "Bdcfield",
 +
                      "Формат": ""
 +
                    },
 +
                    {
 +
                      "Имя": "",
 +
                      "Значение": "",
 +
                      "Тип": "",
 +
                      "Подтип": "",
 +
                      "Формат": "ENDIF"
 +
                    }
 +
                  ]
 +
                }
 +
              },
 +
              {
 +
                "Имя": "UNDO_FILTER",
 +
                "Тип": "Header",
 +
                "Значение": [
 +
                  {
 +
                    "Имя": "SAPLMEGUI",
 +
                    "Значение": "0014",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcdynpro",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_OKCODE",
 +
                    "Значение": "=MEPO1211UNDOFILTER",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_CURSOR",
 +
                    "Значение": "MEPO_TOPLINE-BEDAT",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "SAPLMEGUI",
 +
                    "Значение": "0014",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcdynpro",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_OKCODE",
 +
                    "Значение": "=MEV4002BUTTON",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  },
 +
                  {
 +
                    "Имя": "BDC_CURSOR",
 +
                    "Значение": "MEPO_TOPLINE-BEDAT",
 +
                    "Тип": "String",
 +
                    "Подтип": "Bdcfield",
 +
                    "Формат": ""
 +
                  }
 +
                ]
 +
              }
 +
}
 +
</source>
 +
</div>
 +
</div>
 +
 +
[[Категория:SAPPER]]
 +
[[Категория:SAP]]

Текущая версия на 07:56, 19 марта 2018

Настройка загрузки

На основании входящего электронного документа в SAP можно создать документ, используя:

  • метод создания с помощью пакетного ввода (BATCH IPNUT)
  • BAPI

Настройки загрузки сгруппированы в файлы, которые начинаются с префикса UI_, после префикса следует идентификатор документа, к примеру, ЭДОНакл_1175010_5_01.

На данный момент поддерживается создание документов из электронных документов:

  • счет-фактура
  • накладная

Верхний уровень настройки имеет следующее представление:

  1. UPLOAD_DATA_XSLT – указание XSLT преобразования входящего XML в ABAP структуру, чаще всего используется "/SBIS/DOC301_XML_TO_ABAP"
  2. FILE – массив, содержащий перечень создаваемых документов

Внутри массива FILE может быть перечислено несколько создаваемых документов, которые будут отображаться в всплывающем меню.

контекстное меню загрузки в SAP

пример файла загрузки с массивом FILE со списком создаваемых документов


{
  "UPLOAD_DATA_XSLT": {
    "Значение": "/SBIS/DOC301_XML_TO_ABAP"
  },
  "FILE": {
    "Значение": [
      {
        "Имя": "MENU_CREATE_PURCHASE_ORDER_BATCH",
        "Значение": []
      },
      {
        "Имя": "MENU_CREATE_GOODS_RECEIPT_BATCH",
        "Значение": []
      },
      {
        "Имя": "MENU_CREATE_INCOMING_INVOICE_BATCH",
        "Значение": []
      },
      {
        "Имя": "MENU_CREATE_PURCHASE_ORDER_BAPI",
        "Значение": []
      }
    ]
  }
}

FILE

Массив FILE содержит список создаваемых документов и имеет структуру:

  • [имя] - идентификатор пункта меню загрузки
  • [значение] - набор настроек для загрузки
    • DEFAULT - значение по умолчанию для создания документа по кнопке Загрузить в SAP на экране отображения пакетов документов
    • MENU_TEXT - отображаемое имя в списке контекстного меню
    • DOC_TYPE - тип документа из справочника типов документов DOC_TYPE
    • UPLOAD_DATA_CLASS_NAME - наименование класса создания документов
    • UPLOAD_DATA_METHOD_NAME - указание метода класса создания документов:
      CREATE_BAPI_DOC - создание документа используя BAPI
      CREATE_BATCH_DOC - создание документа используя пакетный ввод
    • MISSED_FIELDS_FUNCTION_NAME - указание ФМ для вызова экрана заполнения дополнительных полей, например, экран сопоставления номенклатуры
    • FACE_ROLE_TO_GET_BUKRS - сторона обмена содержащая данные для БЕ
    • FACE_ROLE_TO_GET_LIFNR - сторона обмена содержащая данные для поставщика
    • TRANSACTION_NAME - наименование транзакции или BAPI
    • POSITION_NUMBER_INCREASE - инкремент позиции
    • RESULT - поле получения результата выполнения (номера документа)
      • [имя] - переменная или указание на сообщение:
        переменная API2_PACKET, в которую кладется результат - для BAPI
        MSGTYP_MSGID_MSGNR - для BATCH. Требуется указать сообщение в [значении], в котором вернется результат (может быть несколько вариантов):
        PURCHASE ORDER msgtyp='S' msgid='06' msgnr='017' msgv2=ebeln
        PURCHASE ORDER msgtyp='S' msgid='MEPO' msgnr='013' msgv2=ebeln
        GOODS RECEIPT msgtyp='S' msgid='MIGO' msgnr='012' msgv1=mblnr
        INVOICE msgtyp='S' msgid='M8' msgnr='388' msgv1=belnr
        INVOICE msgtyp='S' msgid='M8' msgnr='391' msgv1=belnr
        INVOICE msgtyp='S' msgid='M8' msgnr='399' msgv1=belnr
        INVOICE msgtyp='S' msgid='M8' msgnr='437' msgv1=belnr
        INVOICE msgtyp='S' msgid='M8' msgnr='438' msgv1=belnr
      • [тип] - тип переменной значения результата
      • [значение] - переменная с результатом
    • [набор параметров для запуска транзакции] - набор параметров структуры CTU_PARAMS для запуска транзакции при использовании пакетного ввода
      • CTU_PARAMS_DISMODE - режим запуска
      • CTU_PARAMS_UPDMODE - режим обновления
      • CTU_PARAMS_CATTMODE - режим CATT
      • CTU_PARAMS_DEFSIZE - стандартный размер экрана или размер текущего экрана
      • CTU_PARAMS_RACOMMIT - COMMIT WORK останавливает или не останавливает работы
      • CTU_PARAMS_NOBINPT - управление переменной пакетного ввода (заполнять по умолчанию)
      • CTU_PARAMS_NOBIEND - управление переменной пакетного ввода (заполнять после обработки)
    • [массив заполнения входных данных]
      BAPI
      BATCH

пример FILE для создания заказа на закупку через BAPI результат возвращается в BELNR из переменной EXPPURCHASEORDER с типом BAPIMEPOHEADER-PO_NUMBER


{
        "Имя": "MENU_CREATE_PURCHASE_ORDER_BAPI",
        "Значение": [
          {
            "Имя": "DEFAULT",
            "Значение": "X"
          },
          {
            "Имя": "MENU_TEXT",
            "Значение": "Создать Заказ (BAPI)"
          },
          {
            "Имя": "DOC_TYPE",
            "Значение": "IC"
          },
          {
            "Имя": "UPLOAD_DATA_CLASS_NAME",
            "Значение": "/SBIS/CL_CREATE_SAP_DOCUMENTS"
          },
          {
            "Имя": "UPLOAD_DATA_METHOD_NAME",
            "Значение": "CREATE_BAPI_DOC"
          },
          {
            "Имя": "MISSED_FIELDS_FUNCTION_NAME",
            "Значение": "/SBIS/FM_CREATE_BAPI_PORDER",
            "Тип": "String"
          },
          {
            "Имя": "FACE_ROLE_TO_GET_BUKRS",
            "Значение": "Получатель"
          },
          {
            "Имя": "FACE_ROLE_TO_GET_LIFNR",
            "Значение": "Отправитель"
          },
          {
            "Имя": "TRANSACTION_NAME",
            "Значение": "BAPI_PO_CREATE1"
          },
          {
            "Имя": "POSITION_NUMBER_INCREASE",
            "Значение": "10"
          },
          {
            "Имя": "RESULT",
            "Значение": [
              {
                "Имя": "BELNR",
                "Тип": "BAPIMEPOHEADER-PO_NUMBER",
                "Значение": "EXPPURCHASEORDER"
              }
            ]
          },
          {
            "Имя": "BAPI",
            "Тип": "",
            "Подтип": "",
            "Значение": []
          }
        ]
      }
    ]
  }


пример FILE для создания заказа на закупку через BATCH, вызывается транзакция ME21N с опциями запуска, результат возвращается в сообщении с описанным типом


{
        "Имя": "MENU_CREATE_PURCHASE_ORDER_BATCH",
        "Значение": [
          {
            "Имя": "DEFAULT",
            "Значение": ""
          },
          {
            "Имя": "MENU_TEXT",
            "Значение": "Создать Заказ (ПакВвод)"
          },
          {
            "Имя": "DOC_TYPE",
            "Значение": "IC"
          },
          {
            "Имя": "UPLOAD_DATA_CLASS_NAME",
            "Значение": "/SBIS/CL_CREATE_SAP_DOCUMENTS"
          },
          {
            "Имя": "UPLOAD_DATA_METHOD_NAME",
            "Значение": "CREATE_BATCH_DOC"
          },
          {
            "Имя": "MISSED_FIELDS_FUNCTION_NAME",
            "Значение": "/SBIS/FM_CREATE_BATCH_PORDER",
            "Тип": "String"
          },
          {
            "Имя": "FACE_ROLE_TO_GET_BUKRS",
            "Значение": "Получатель"
          },
          {
            "Имя": "FACE_ROLE_TO_GET_LIFNR",
            "Значение": "Отправитель"
          },
          {
            "Имя": "CTU_PARAMS_DISMODE",
            "Значение": "E" //остановить создание, если есть ошибка и показать экран
          },
          {
            "Имя": "CTU_PARAMS_UPDMODE",
            "Значение": "S" //синхронное выполнение (COMMIT AND WAIT)
          },
          {
            "Имя": "CTU_PARAMS_CATTMODE",
            "Значение": " " //не используя CATT
          },
          {
            "Имя": "CTU_PARAMS_DEFSIZE",
            "Значение": "" //текущий размер экрана
          },
          {
            "Имя": "CTU_PARAMS_RACOMMIT",
            "Значение": "X" //COMMIT WORK не останавливает обработки
          },
          {
            "Имя": "CTU_PARAMS_NOBINPT",
            "Значение": " " //системное поле sy-binpt не заполнено
          },
          {
            "Имя": "CTU_PARAMS_NOBIEND",
            "Значение": " " //системное поле sy-binpt не заполняется после конца обработки
          },
          {
            "Имя": "TRANSACTION_NAME",
            "Значение": "ME21N" //транзакция
          },
          {
            "Имя": "POSITION_NUMBER_INCREASE",
            "Значение": "10" //инкремент позиции
          },
          {
            "Имя": "RESULT", //для пакетного ввода результат лежит в разных системных сообщениях, здесь мы указываем тип, ид, номер и сообщение
            "Значение": [
              {
                "Имя": "MSGTYP_MSGID_MSGNR",
                "Значение": "S|06|017|MSGV2"
              },
              {
                "Имя": "MSGTYP_MSGID_MSGNR",
                "Значение": "S|MEPO|013|MSGV2"
              }
            ]
          },
          {
            "Имя": "BATCH",
            "Тип": "",
            "Подтип": "",
            "Значение": []
          }
        ]
}

BAPI

Структура массива значений BAPI:

  • [имя] - имя параметра
  • [тип] - тип параметра
    Fmstructure - структура
    Fmfield - поле
    Fmtable - таблица
    Field - поле
    String - строка
  • [подтип] - подтип параметра
    Export - входная структура для BAPI
    Import - выходная структура для BAPI
    Table - таблица BAPI
  • [формат] - указание на ABAP тип
  • [массив значений]
    • [имя] - имя поля структуры
    • [значение] - значение
    • [тип] - тип значения
      Field - поле
      String - строка
      Classfield - поле класса
    • [подтип]
      Export
      Import
    • [формат] - использовать форматирование (/SBIS/CL_MAPPING->CONVERT_FIELD_TYPE)

Для каждого BAPI требуется описать маппинг всех необходимых входных и выходных структур в массиве BAPI. Рассмотрим на примере BAPI_PO_CREATE1.

BAPI PO CREATE1 0.png BAPI PO CREATE1 1.png BAPI PO CREATE1 2.png

В нашем примере требуется описать маппинг для входных структуры POHEADER, POHEADERX, NO_PRICE_FROM_PO, POITEM, POITEMX, POSCHEDULE, POSCHEDULEX и выходных EXPPURCHASEORDER, RETURN.

пример заполнения POHEADER, POHEADERX, NO_PRICE_FROM_PO, POITEM, POITEMX, POSCHEDULE, POSCHEDULEX, EXPPURCHASEORDER, RETURN для BAPI BAPI_PO_CREATE1 создание заказа на закупку


{
              {
                "Имя": "POHEADER",
                "Тип": "Fmstructure",
                "Подтип": "Export",
                "Формат": "BAPIMEPOHEADER",
                "Значение": [
                  {
                    "Имя": "COMP_CODE",
                    "Значение": "IR_INPUT_DATA->BUKRS",
                    "Тип": "Field",
                    "Подтип": "Export",
                    "Формат": ""
                  },
                  {
                    "Имя": "DOC_TYPE",
                    "Значение": "NB",
                    "Тип": "String",
                    "Подтип": "Export",
                    "Формат": ""
                  },
                  {
                    "Имя": "VENDOR",
                    "Значение": "IR_INPUT_DATA->LIFNR",
                    "Тип": "Field",
                    "Подтип": "Export",
                    "Формат": ""
                  },
                  {
                    "Имя": "DOC_DATE",
                    "Значение": "IR_INPUT_DATA->DATE",
                    "Тип": "Field",
                    "Подтип": "Export",
                    "Формат": "DATE"
                  },
                  {
                    "Имя": "PURCH_ORG",
                    "Значение": "IR_INPUT_DATA->EKORG",
                    "Тип": "Field",
                    "Подтип": "Export",
                    "Формат": ""
                  },
                  {
                    "Имя": "PUR_GROUP",
                    "Значение": "IR_INPUT_DATA->EKGRP",
                    "Тип": "Field",
                    "Подтип": "Export",
                    "Формат": ""
                  }
                ]
              },
              {
                "Имя": "POHEADERX",
                "Тип": "Fmstructure",
                "Подтип": "Export",
                "Формат": "BAPIMEPOHEADERX",
                "Значение": [
                  {
                    "Имя": "COMP_CODE",
                    "Значение": "X",
                    "Тип": "String",
                    "Подтип": "Export",
                    "Формат": ""
                  },
                  {
                    "Имя": "DOC_TYPE",
                    "Значение": "X",
                    "Тип": "String",
                    "Подтип": "Export",
                    "Формат": ""
                  },
                  {
                    "Имя": "VENDOR",
                    "Значение": "X",
                    "Тип": "String",
                    "Подтип": "Export",
                    "Формат": ""
                  },
                  {
                    "Имя": "DOC_DATE",
                    "Значение": "X",
                    "Тип": "String",
                    "Подтип": "Export",
                    "Формат": ""
                  },
                  {
                    "Имя": "PURCH_ORG",
                    "Значение": "X",
                    "Тип": "String",
                    "Подтип": "Export",
                    "Формат": ""
                  },
                  {
                    "Имя": "PUR_GROUP",
                    "Значение": "X",
                    "Тип": "String",
                    "Подтип": "Export",
                    "Формат": ""
                  }
                ]
              },
              {
                "Имя": "NO_PRICE_FROM_PO",
                "Тип": "Fmfield",
                "Подтип": "Export",
                "Формат": "CHAR01",
                "Значение": [
                  {
                    "Имя": "*",
                    "Значение": "X",
                    "Тип": "String",
                    "Подтип": "Export",
                    "Формат": ""
                  }
                ]
              },
              {
                "Имя": "POITEM",
                "Тип": "Fmtable",
                "Подтип": "Table",
                "Формат": "BAPIMEPOITEM",
                "Значение": [
                  {
                    "Имя": "POITEM",
                    "Тип": "IR_INPUT_DATA->ITEMS",
                    "Подтип": "",
                    "Формат": "BAPIMEPOITEM",
                    "Значение": [
                      {
                        "Имя": "PO_ITEM",
                        "Значение": "GV_ITEMS_POS",
                        "Тип": "Classfield",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "MATERIAL",
                        "Значение": "ID",
                        "Тип": "Field",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "PLANT",
                        "Значение": "WERKS",
                        "Тип": "Field",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "STGE_LOC",
                        "Значение": "LGORT",
                        "Тип": "Field",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "QUANTITY",
                        "Значение": "AMOUNT",
                        "Тип": "Field",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "NET_PRICE",
                        "Значение": "PRICE",
                        "Тип": "Field",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "NO_ROUNDING",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "TAX_CODE",
                        "Значение": "MWSKZ",
                        "Тип": "Field",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "VAL_TYPE",
                        "Значение": "",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "UNLIMITED_DLV",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "IR_IND",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "GR_IND",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      }
                    ]
                  }
                ]
              },
              {
                "Имя": "POITEMX",
                "Тип": "Fmtable",
                "Подтип": "Table",
                "Формат": "BAPIMEPOITEMX",
                "Значение": [
                  {
                    "Имя": "POITEMX",
                    "Тип": "IR_INPUT_DATA->ITEMS",
                    "Подтип": "",
                    "Формат": "BAPIMEPOITEMX",
                    "Значение": [
                      {
                        "Имя": "PO_ITEM",
                        "Значение": "GV_ITEMS_POS",
                        "Тип": "Classfield",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "MATERIAL",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "PLANT",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "STGE_LOC",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "QUANTITY",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "NET_PRICE",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "NO_ROUNDING",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "TAX_CODE",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "VAL_TYPE",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "UNLIMITED_DLV",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "IR_IND",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "GR_IND",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      }
                    ]
                  }
                ]
              },
              {
                "Имя": "POSCHEDULE",
                "Тип": "Fmtable",
                "Подтип": "Table",
                "Формат": "BAPIMEPOSCHEDULE",
                "Значение": [
                  {
                    "Имя": "POSCHEDULE",
                    "Тип": "IR_INPUT_DATA->ITEMS",
                    "Подтип": "Table",
                    "Формат": "BAPIMEPOSCHEDULE",
                    "Значение": [
                      {
                        "Имя": "PO_ITEM",
                        "Значение": "GV_ITEMS_POS",
                        "Тип": "Classfield",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "SCHED_LINE",
                        "Значение": "1",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "DEL_DATCAT_EXT",
                        "Значение": "D",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "DELIVERY_DATE",
                        "Значение": "DATE",
                        "Тип": "Field",
                        "Подтип": "",
                        "Формат": ""
                      }
                    ]
                  }
                ]
              },
              {
                "Имя": "POSCHEDULEX",
                "Тип": "Fmtable",
                "Подтип": "Table",
                "Формат": "BAPIMEPOSCHEDULX",
                "Значение": [
                  {
                    "Имя": "POSCHEDULEX",
                    "Тип": "IR_INPUT_DATA->ITEMS",
                    "Подтип": "Table",
                    "Формат": "BAPIMEPOSCHEDULX",
                    "Значение": [
                      {
                        "Имя": "PO_ITEM",
                        "Значение": "GV_ITEMS_POS",
                        "Тип": "Classfield",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "SCHED_LINE",
                        "Значение": "1",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "DEL_DATCAT_EXT",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      },
                      {
                        "Имя": "DELIVERY_DATE",
                        "Значение": "X",
                        "Тип": "String",
                        "Подтип": "",
                        "Формат": ""
                      }
                    ]
                  }
                ]
              },
              {
                "Имя": "EXPPURCHASEORDER",
                "Тип": "Fmfield",
                "Подтип": "Import",
                "Формат": "BAPIMEPOHEADER-PO_NUMBER",
                "Значение": []
              },
              {
                "Имя": "RETURN",
                "Тип": "Fmtable",
                "Подтип": "Table",
                "Формат": "BAPIRET2",
                "Значение": ""
              }
}

BATCH

Структура пакетного ввода состоит из набора массивов последовательно заполняемых экранов транзакции:

  • [массив значений] - набор структур экранов
    • [имя] - название блока
    • [тип] - тип обработки блока:
      Header - /SBIS/CL_MAPPING->PARSE_BATCH_HEADER
      Items - /SBIS/CL_MAPPING->PARSE_BATCH_ITEMS
    • [массив значение блока] - маппинг структуры экрана
      • [имя] - имя поля
      • [значение] - значение поля
      • [тип] - тип поля:
        String - фиксированная строка
        Field - поле
        ClassField - поле класса
      • [подтип] - подтип:
        Bdcdynpro
        Bdcfield
      • [формат] - использовать форматирование (/SBIS/CL_MAPPING->CONVERT_FIELD_TYPE) или использовать логические переходы между блоками:
        IF
        ENDIF
        IFNOT

пример заполнения вызова транзакции ME21N для создания заказа на закупку с помощью пакетного ввода


{
              {
                "Имя": "HEADER",
                "Тип": "Header",
                "Значение": [
                  {
                    "Имя": "SAPLMEGUI",
                    "Значение": "0014",
                    "Тип": "String",
                    "Подтип": "Bdcdynpro",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_OKCODE",
                    "Значение": "/00",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_CURSOR",
                    "Значение": "MEPO_TOPLINE-BEDAT",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "MEPO_TOPLINE-BSART",
                    "Значение": "IR_DATA->BSART",
                    "Тип": "Field",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "MEPO_TOPLINE-SUPERFIELD",
                    "Значение": "IR_DATA->LIFNR",
                    "Тип": "Field",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "MEPO_TOPLINE-BEDAT",
                    "Значение": "IR_DATA->DATE",
                    "Тип": "Field",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "DYN_6000-LIST",
                    "Значение": "   1",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "SAPLMEGUI",
                    "Значение": "0014",
                    "Тип": "String",
                    "Подтип": "Bdcdynpro",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_OKCODE",
                    "Значение": "=TABHDT9",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_CURSOR",
                    "Значение": "MEPO_TOPLINE-BEDAT",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "SAPLMEGUI",
                    "Значение": "0014",
                    "Тип": "String",
                    "Подтип": "Bdcdynpro",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_OKCODE",
                    "Значение": "/00",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_CURSOR",
                    "Значение": "MEPO1222-EKGRP",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "MEPO1222-EKORG",
                    "Значение": "IR_DATA->EKORG",
                    "Тип": "Field",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "MEPO1222-EKGRP",
                    "Значение": "IR_DATA->EKGRP",
                    "Тип": "Field",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "MEPO1222-BUKRS",
                    "Значение": "IR_DATA->BUKRS",
                    "Тип": "Field",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "DYN_6000-LIST",
                    "Значение": "   1",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "SAPLMEGUI",
                    "Значение": "0014",
                    "Тип": "String",
                    "Подтип": "Bdcdynpro",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_OKCODE",
                    "Значение": "=MEV4001BUTTON",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_CURSOR",
                    "Значение": "MEPO1222-EKGRP",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  }
                ]
              },
              {
                "Имя": "ITEMS",
                "Тип": "Items",
                "Значение": {
                  "ITEMS": [
                    {
                      "Имя": "SAPLMEGUI",
                      "Значение": "0014",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "/00",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "MEPO1211-NAME1(01)",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "MEPO1211-EBELP(01)",
                      "Значение": "GV_ITEMS_POS",
                      "Тип": "ClassField",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "MEPO1211-EMATN(01)",
                      "Значение": "IR_DATA->ID",
                      "Тип": "Field",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "MEPO1211-MENGE(01)",
                      "Значение": "IR_DATA->AMOUNT",
                      "Тип": "Field",
                      "Подтип": "Bdcfield",
                      "Формат": "POINTTOCOMMA"
                    },
                    {
                      "Имя": "MEPO1211-EEIND(01)",
                      "Значение": "IR_DATA->DATE",
                      "Тип": "Field",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "MEPO1211-NETPR(01)",
                      "Значение": "IR_DATA->PRICE",
                      "Тип": "Field",
                      "Подтип": "Bdcfield",
                      "Формат": "POINTTOCOMMA"
                    },
                    {
                      "Имя": "MEPO1211-NAME1(01)",
                      "Значение": "IR_DATA->WERKS",
                      "Тип": "Field",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "MEPO1211-LGOBE(01)",
                      "Значение": "IR_DATA->LGORT",
                      "Тип": "Field",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "DYN_6000-LIST",
                      "Значение": "GV_ITEMS_TABIX",
                      "Тип": "ClassField",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLMEGUI",
                      "Значение": "0014",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=TABIDT5",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "MEPO1211-EMATN(01)",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLMEGUI",
                      "Значение": "0014",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "/00",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "MEPO1211-EMATN(01)",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLMEGUI",
                      "Значение": "0014",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=TABIDT7",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "MEPO1211-EMATN(01)",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLMEGUI",
                      "Значение": "0014",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "/00",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "MEPO_TOPLINE-BSART",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "MEPO1317-REPOS",
                      "Значение": "X",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "MEPO1317-MWSKZ",
                      "Значение": "IR_DATA->MWSKZ",
                      "Тип": "Field",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "DYN_6000-LIST",
                      "Значение": "GV_ITEMS_TABIX",
                      "Тип": "ClassField",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLMEGUI",
                      "Значение": "0014",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=TABIDT6",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "MEPO_TOPLINE-BSART",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLMEGUI",
                      "Значение": "0014",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "/00",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "MEPO1313-UEBTO",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "MEPO1313-BWTAR",
                      "Значение": "IR_DATA->BWTAR",
                      "Тип": "Field",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "MEPO1313-UEBTK",
                      "Значение": "X",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "DYN_6000-LIST",
                      "Значение": "GV_ITEMS_TABIX",
                      "Тип": "ClassField",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "GV_ITEMS_TABIX",
                      "Значение": "1",
                      "Тип": "ClassField",
                      "Подтип": "String",
                      "Формат": "IF"
                    },
                    {
                      "Имя": "SAPLMEGUI",
                      "Значение": "0014",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=MEPO1211EDITFILTER",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "MEPO1211-EMATN(01)",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "DYN_6000-LIST",
                      "Значение": "GV_ITEMS_TABIX",
                      "Тип": "ClassField",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLSKBH",
                      "Значение": "1500",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=DTC_WLSE",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLSKBH",
                      "Значение": "1500",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=ALV_B_FILT",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLSSEL",
                      "Значение": "1104",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=OPTI",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "%%DYN001-LOW",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPMSSY0",
                      "Значение": "0120",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=PICK",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "09/04",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPMSSY0",
                      "Значение": "0120",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=OKAY",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "09/09",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLSSEL",
                      "Значение": "1104",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=CRET",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "%%DYN001-LOW",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "%%DYN001-LOW",
                      "Значение": "GV_ITEMS_POS",
                      "Тип": "ClassField",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "",
                      "Значение": "",
                      "Тип": "",
                      "Подтип": "",
                      "Формат": "ENDIF"
                    },
                    {
                      "Имя": "GV_ITEMS_TABIX",
                      "Значение": "1",
                      "Тип": "ClassField",
                      "Подтип": "String",
                      "Формат": "IFNOT"
                    },
                    {
                      "Имя": "SAPLMEGUI",
                      "Значение": "0014",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=MEPO1211EDITFILTER",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "MEPO1211-EMATN(01)",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "DYN_6000-LIST",
                      "Значение": "GV_ITEMS_TABIX",
                      "Тип": "ClassField",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLSKBH",
                      "Значение": "1500",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=ALV_B_FILT",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "%#AUTOTEXT001",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "SAPLSSEL",
                      "Значение": "1104",
                      "Тип": "String",
                      "Подтип": "Bdcdynpro",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_OKCODE",
                      "Значение": "=CRET",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "BDC_CURSOR",
                      "Значение": "%%DYN001-LOW",
                      "Тип": "String",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "%%DYN001-LOW",
                      "Значение": "GV_ITEMS_POS",
                      "Тип": "ClassField",
                      "Подтип": "Bdcfield",
                      "Формат": ""
                    },
                    {
                      "Имя": "",
                      "Значение": "",
                      "Тип": "",
                      "Подтип": "",
                      "Формат": "ENDIF"
                    }
                  ]
                }
              },
              {
                "Имя": "UNDO_FILTER",
                "Тип": "Header",
                "Значение": [
                  {
                    "Имя": "SAPLMEGUI",
                    "Значение": "0014",
                    "Тип": "String",
                    "Подтип": "Bdcdynpro",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_OKCODE",
                    "Значение": "=MEPO1211UNDOFILTER",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_CURSOR",
                    "Значение": "MEPO_TOPLINE-BEDAT",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "SAPLMEGUI",
                    "Значение": "0014",
                    "Тип": "String",
                    "Подтип": "Bdcdynpro",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_OKCODE",
                    "Значение": "=MEV4002BUTTON",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  },
                  {
                    "Имя": "BDC_CURSOR",
                    "Значение": "MEPO_TOPLINE-BEDAT",
                    "Тип": "String",
                    "Подтип": "Bdcfield",
                    "Формат": ""
                  }
                ]
              }
}