СБИС Сапёр - Настройка — различия между версиями

Материал из razgovorov.ru
Перейти к: навигация, поиск
(Настройка отправки электронных документов)
(Именование переменных кода)
 
(не показано 28 промежуточных версий 2 участников)
Строка 1: Строка 1:
 
 
=Проверка готовности к настройке=
 
=Проверка готовности к настройке=
 
==Подготовительные действия==
 
==Подготовительные действия==
Строка 5: Строка 4:
 
* Авторизоваться в СБИС через браузер
 
* Авторизоваться в СБИС через браузер
 
* Установить СБИС SDK
 
* Установить СБИС SDK
 +
 
==Запустить модуль==
 
==Запустить модуль==
 
+
Действие: SE38 -> /sbis/sapper или транзакция /n/SBIS/SAPPER
Действие: SE38 -> /sbis/sapper
 
  
 
Результат: Откроется окно авторизации
 
Результат: Откроется окно авторизации
Строка 24: Строка 23:
 
* В окне аккордеона абракадабра – при импорте переноса возникла проблема с кодировкой (причина пока не понятна).  
 
* В окне аккордеона абракадабра – при импорте переноса возникла проблема с кодировкой (причина пока не понятна).  
 
Необходимо вручную загрузить настройки se38 - /sbis/update_settings
 
Необходимо вручную загрузить настройки se38 - /sbis/update_settings
 
  
 
=Введение=
 
=Введение=
 
При разработке SAPPER основной задачей являлось создать тиражируемое решение, которое будет легко разворачиваться на любой версии SAP и решать задачи клиента без программирования - на уровне настроек. Для достижения этой цели почти весь функционал SAPPER сделан настраиваемым. Настройки SAPPER хранятся в таблице /SBIS/SETTINGS.
 
При разработке SAPPER основной задачей являлось создать тиражируемое решение, которое будет легко разворачиваться на любой версии SAP и решать задачи клиента без программирования - на уровне настроек. Для достижения этой цели почти весь функционал SAPPER сделан настраиваемым. Настройки SAPPER хранятся в таблице /SBIS/SETTINGS.
  
Сами настройки можно представить как иерархическую структуры параметров типа ключ значение.
+
Сами настройки можно представить как иерархическую структуру параметров типа ключ значение.
  
 
Редактирование настроек можно осуществить двумя способами:
 
Редактирование настроек можно осуществить двумя способами:
 
# с помощью транзакции /n/SBIS/SETTINGS (ветка SPRO -> Integration with other SAP Components -> SBIS Sapper -> Settings).
 
# с помощью транзакции /n/SBIS/SETTINGS (ветка SPRO -> Integration with other SAP Components -> SBIS Sapper -> Settings).
# с помощью JSON файлов в последующем конвертирующихся и импортирующихся /SBIS/SETTINGS. Данный способ на текущий момент является более удобным и наглядным. Далее в инструкции все примеры настроек показаны в виде JSON объектов.
+
# с помощью JSON файлов в последующем конвертирующихся и импортирующихся в /SBIS/SETTINGS. Данный способ на текущий момент является более удобным и наглядным. Далее в инструкции все примеры настроек показаны в виде JSON объектов.
  
==Структура настроек /SBIS/SETTINGS
+
==Структура настроек /SBIS/SETTINGS==
 
*SBIS - Общие настройки модуля, протокол обмена, справочники
 
*SBIS - Общие настройки модуля, протокол обмена, справочники
 
**ACCORDION - Настройки аккордеона
 
**ACCORDION - Настройки аккордеона
Строка 49: Строка 47:
 
Упрощенно процедуру настройки можно свести к следующей последовательности действий:
 
Упрощенно процедуру настройки можно свести к следующей последовательности действий:
 
# Заполнить опросный лист (определиться какие пакеты документов (их варианты) мы хотим отправлять и какие программы использует SAP для печати этих документов)
 
# Заполнить опросный лист (определиться какие пакеты документов (их варианты) мы хотим отправлять и какие программы использует SAP для печати этих документов)
# Настроить ACCORDION  - перечислить все варианты отправляемых пакетов документов.
+
# Настроить ACCORDION  - перечислить все варианты отправляемых пакетов документов ([[SAPPER SETTINGS - Общие]]).
# Для каждого варианта пакета документов настроить показ списока
+
# Для каждого варианта пакета документов настроить показ списка ([[SAPPER SETTINGS - Настройки списков]]).
# Для каждого входящего в пакет документа SAP настроить параметры формирования из него электронных документов.
+
# Для каждого входящего в пакет документа SAP настроить параметры формирования из него электронных документов ([[SAPPER SETTINGS - Настройки выгрузки]]).
 
 
===Настройка аккордеона===
 
Аккордеон в SBIS.SAPPER динамический и строится на основании настроек. Для каждого клиента он выглядит по разному. Как минимум он содержит три предустановленных пункта "Полученные", "Отправленные" и "Ответы контрагентов", которые транслируют содержимое соответствующих реестров личного кабинета в SAP.
 
 
 
Настройки аккордеона в /SBIS/SETTINGS определяются ключем SBIS.ACCORDION и содержат двухуровневый иерархический список пунктов аккордеона.
 
 
 
Раздел аккордеона должен содержать параметры:
 
* NAME - название пункта
 
* ITEMS (тип list) - список вложенных пунктов (код, параметры)
 
 
 
Пункт аккордеона должен содержать параметры:
 
* NAME - название пункта
 
* CONTENT_CLASS - имя класса отвечающего за построение дерева списка в SAPPER
 
* EXCHANGE_CLASS - имя класса отвечающего за способ обмена документами с СБИС
 
* VIEW_CLASS - имя класса отвечающего за просмотр пакета
 
* PAGE_SIZE - количество пакетов на странице
 
* FILTER_FM_NAME - имя FM для установки фильтра в списке
 
  
 
==Алгоритм отправки==
 
==Алгоритм отправки==
 
# Показ списка записей для отправки
 
# Показ списка записей для отправки
## таблице настроек получаем имя класса отвечающего за показ списка
+
## на настройках аккордеона смотрим имя настройки LO_
 +
## из таблицы настроек LO_ получаем имя класса отвечающего за показ списка
 
## выполняем запрос указанный в настройках,в результате получили список документов SAP от которых нужно будет сформировать электронные документы и идентификатор настроек описывающих формирование.
 
## выполняем запрос указанный в настройках,в результате получили список документов SAP от которых нужно будет сформировать электронные документы и идентификатор настроек описывающих формирование.
 
## показываем список документов в виде alv_tree
 
## показываем список документов в виде alv_tree
 
# Открыли окно предпросмотра
 
# Открыли окно предпросмотра
## для каждого документа пакета вызываем указанный в параметрах класс формирования документа (далее описан сценарий по умолчанию)
+
## для каждого документа пакета читаем настройки DO_
## вызываем программу печати указанную в настройках.
+
## вызываем класс формирования документа (далее описан сценарий по умолчанию)
 +
## вызываем программу печати.
 
## в конце программы печати, когда все данные рассчитаны, передаем управление функции маппинга
 
## в конце программы печати, когда все данные рассчитаны, передаем управление функции маппинга
 
## получаем необходимые для формирования XML значения
 
## получаем необходимые для формирования XML значения
Строка 86: Строка 69:
 
## при помощи SDK асинхронно, многопоточно подписываем и отправляем сформированный пакет в ЛК СБИС
 
## при помощи SDK асинхронно, многопоточно подписываем и отправляем сформированный пакет в ЛК СБИС
  
===Настройка реестра (для каждого реестра)===
+
=Настройка загрузки электронных документов (cоздание документа в SAP)=
Настройки реестра отвечают за:
+
Упрощенно процедуру настройки можно свести к следующей последовательности действий:
* формирование списка документов которые видит пользователь перейдя в соответствующий раздел, в т.ч. ограничения видимости и фильтры
+
# Заполнить опросный лист (определиться какие документы SAP должны создаваться из каких электронных документов и какими методами (BAPI или BATCH INPUT))
* состав отправляемых пакетов документов (какие документы SAP должны использоваться для формирования пакета эл.документов)
+
## На данный момент поддерживается создание документов в SAP из электронных документов: счет-фактура, накладная.
 
+
# Для электронного документа настроить параметры создания из него документов SAP ([[SAPPER SETTINGS - Настройки загрузки]]).
За формирование списка документов отвечает метод GET_LIST_API2_PACKET класса указанного в параметре "ПолучениеДанных_Класс"
 
  
Для разделов Продажа по умолчанию этим классом является /SBIS/CL_SAP_DATA_[700/740], он зависим от версии BASIS и поэтому поставляется в разных пакетах.
+
==Алгоритм загрузки==
 
 
====Настроить запрос====
 
Список документов получается путем выполнения запроса к базе данных, для BASIS > 7.40 это динамический SELECT текст которого указан в настройках, для более ранних версий код запроса захардкожен непосредственно в модуле. И доработка запроса осуществляется наследованием класса и переопределением необходимых методов.
 
 
 
В результате выполнения запросов должна получиться таблица содержащая список документов SAP необходимых для формирования пакета документов.
 
 
 
Строка таблицы соответствует структуре /SBIS/S_LIST_DOC и содержит:
 
* Идентификатор базового документа (нужен для группировки пакета)
 
** BUKRS
 
** GJAHR
 
** BELNR - номер документа
 
* Идентификатор документа на данных которого будет формироваться электронный документ (может быть равен базовому)
 
** XBLNR - номер документа, пока предполагается что BUKRS и GJAHR такой же как у базового документа.
 
* Идентификатор настроек которые будут использоваться для формирования электронного документа (программа печати, параметры вызова, маппинг параметров программы печати)
 
** INI_NAME - код настроек из таблицы /SBIS/SETTINGS - указывается явно в запросе
 
* Реквизиты документа для отображения в списке - параметры для формирования названия документа, по умолчанию шаблон формирования имени документа следующий: [значение параметра НазваниеДокумента] №[XBLNR] от [DATE] на сумму [SUM][WAERS]
 
** DATE
 
** SUM
 
** WAERS
 
** PARTNER_NAME
 
** ORG_NAME
 
** USER_NAME
 
* Дополнительные реквизиты которые можно использовать в отборе при необходимости
 
** PARAM1
 
** PARAM2
 
** PARAM3
 
* Текущий статус документа - в select не заполняются, заполняются для каждой записи по данным таблицы /SBIS/STATUS_DOC, код реализован в том же классе
 
** STATUS_NAME
 
** STATUS_CODE
 
** STATUS_NOTE
 
** STATUS_MSG
 
** STATUS_MSG_DETAIL
 
 
 
Запись таблицы содержит данные основного документа и таблицу вложений - идентификатор документа + ключ таблицы настроек отвечающих за формирование XML файла. В общем виде одна запись таблицы содержит список программ печати необходимых для формирования пакета документов.
 
 
 
Предположим у нас есть комплект документов реализации состоящий из двух документов, накладной № 0080000227 и счет-фактуры № 0090000244 которые необходимо отправить одним пакетом. Основным документом является документ от которого строится список и который есть всегда (иначе пакет не сформируется) и в нашем случае пусть это будет накладная.
 
В результате выполнения запроса должен получиться список пакетов реализации. Часть результирующей таблицы содержащей наш комплект должна выглядеть следующим образом:
 
{|{| class="wikitable"
 
!|BELNR||XBELNR||INI_NAME
 
|-
 
|0080000227||0080000227||'DP_TOVTORGPR_1175010'
 
|-
 
|0080000227||0090000244||'ON_SCHFDOPPR_1115125'
 
|}
 
 
 
Если предположим, в пакет нужно добавить ещё один документ, например из накладной необходимо сформировать и отправить в этом же пакете ТТН, то в результат необходимо добавить ещё одну строку содержащую соответствующий код настроек. В общем виде можно сказать, что количество строк для пакета равно количеству вызовов программ печати необходимых для формирования форм документов комплекта. Стоит заменить, что конечный состав пакета документов не всегда по количеству равен документам которые пользователь видит в списке, т.к. данным одного вызова программы печати может быть за раз сформировано несколько электронных документов, например по данным фактуры можно сформировать сразу весь комплект. Реальной содержимое пакета документов которое будет отправлено можно посмотреть в окне просмотра.
 
 
 
=====BASIS 7.00 (/SBIS/CL_SAP_DATA_700)=====
 
 
 
Указать правильный класс для построения списка основного документа пакета в настройках списка документов - параметр "ПолучениеДанных_Класс".
 
Основной документ - документ который всегда есть, от которого можно получить все документы пакета. Под документом пакета понимается документ передаваемый необходимый имеется
 
 
 
Варианты:
 
*/SBIS/CL_SAP_DATA_700_LIKP - возвращает накладные SD
 
*/SBIS/CL_SAP_DATA_700_VBRK - возвращает фактуры SD
 
*/SBIS/CL_SAP_DATA_700_VBRK_USL - возвращает фактуры SD на услуги - акты выполненных работ
 
*/SBIS/CL_SAP_DATA_700_LIKP_NF - возвращает неотфактурованные накладные SD (без фактур)
 
*/SBIS/CL_SAP_DATA_700_ERDK - возвращает документы печати из одноименной таблицы
 
 
 
Указать подчиненные документы и способ их получения:
 
Варианты:
 
* GET_CHILD_VBFA_SFAKT - получить связанные с основным документом через таблицу VBFA счет-фактуры SD
 
* GET_CHILD_VBFA_NAKL - получить связанные с основным документом через таблицу VBFA накладные SD
 
 
 
=====BASIS 7.40 (/SBIS/CL_SAP_DATA_740)=====
 
Текст запроса содержится в параметрах:
 
* ЗапросСпискаДокументов - содержит  тип запроса "select_groupby" или "select_having"
 
* ЗапросСпискаДокументов_select
 
* ЗапросСпискаДокументов_from
 
* ЗапросСпискаДокументов_groupby
 
* ЗапросСпискаДокументов_having
 
* ЗапросСпискаСвязанныхДокументов - массив настроек отвечающий за добавления связанных документов. Для каждой записи будет выполнен поиск всех указанных здесь документов. Доступные варианты:
 
** GET_CHILD_VBFA - взять связанный через VBFA документ
 
** GET_SELF - взять тот же документ, но использовать другую программу печати
 
 
 
 
 
===Настроить вызов программы печати и маппинг её данных(для каждой программы печати)===
 
 
 
После того как пользователь выбрал в списке пакет документов для отправки / просмотра, для каждой записи таблицы делается вызов программы формирования XML в соответствии с группой настроек указанной в поле INI_NAME. Данные настройки состоят:
 
* ПолучениеДанных_Класс" - имя класса формирующего данные (/SBIS/CL_SAP_DATA)
 
* ПолучениеДанных_Метод" - способ получения данных:
 
** PRINT_NAST - через программу печати основанную на структуре NAST
 
** EFG_PRINT - через программу печати выводимые с помощью FM EFG_PRINT
 
** PRINT_PROG - через любые ABAP программы
 
* ПолучениеДанных_XSLT - имя XSLT для первичной конвертации (/SBIS/DOC301)
 
* ОтправительПакета_Роль - какое лицо из документ берем на пакет в качестве отправителя ("Отправитель")
 
* ПолучательПакета_Роль - какое лицо из документ берем на пакет в качестве получателя ("Получатель")
 
* Регламент_Название - название регламента СБИС по которому будет запущен пакет документов. Можно не указывать.
 
* Реестр_СБИС - тип пакета СБИС, см.документацию по API / SDK
 
* PRINT_SEND - параметры программы печати в режиме формирования XML
 
* PRINT_PRINT - параметры программы печати в режиме печати
 
* FILE - настройки формирования XML файлов. Список файлов, которые необходимо создать по данным данной программы печати.Каждый файл раздела содержит список данных которые необходимы для формирования файла и их источников (имена глобальных объектов программы печати их содержащие). Настройка модуля в основном сводится к заполнению данного раздела.
 
 
 
Структура настроек раздела FILE:
 
* шапка документа, дата номер и т.п.
 
**FACE - стороны документа
 
**PARAM - дополнительных параметров документа
 
**LINKS - данные документов оснований - договор, заказ и т.п.
 
**ITEMS - табличная часть документа
 
***PARAM - дополнительные параметры строки табличной части
 
 
 
 
 
Пример параметров программы печати для PRINT_NAST
 
* print_program - имя программы печати, например "ZFUJI_SBIS_J_3RV_DELIV_PDF"
 
* print_form - точка входа,  например "ENTRY"
 
* tnapr-sform - имя формуляра, например "ZVE20_ADOBE_V_TORG_12"
 
* nast-nacha - специфичный для PRINT_NAST параметр отвечающий за способ вывода, для печати = 1, для XML = 8
 
* nast-* - другие специфичные параметры PRINT_NAST
 
 
 
 
 
Для маппинга данных через отладку нужно поставить внешнюю точку прерывания в пакете /sbis/core - класс /sbis/mapping - метод call_doc - на первом assign
 
 
 
==Загрузка==
 
 
# Открыли окно предпросмотра
 
# Открыли окно предпросмотра
 
## по идентификаторам XML вложений запрашиваем HTML визуалиазции
 
## по идентификаторам XML вложений запрашиваем HTML визуалиазции
Строка 212: Строка 81:
 
# Открыли окно загрузки
 
# Открыли окно загрузки
 
## скачиваем XML
 
## скачиваем XML
## при помощи XSLT приводим XML к XML шаблону с данными, шаблон с данными конвертируем в структуру SAP
+
## при помощи XSLT приводим XML к XML шаблону с данными, шаблон с данными конвертируем с помощью другого XSLT в структуру SAP
 
## показываем универсальную форму загрузки, предзаполняем форму по известным данным (стороны, номенклатура)
 
## показываем универсальную форму загрузки, предзаполняем форму по известным данным (стороны, номенклатура)
 
## предоставляем интерфейс для дозаполнения неизвестных значений, необходимых для загрузки документа (в т.ч. сопоставление номенклатуры)
 
## предоставляем интерфейс для дозаполнения неизвестных значений, необходимых для загрузки документа (в т.ч. сопоставление номенклатуры)
Строка 218: Строка 87:
 
## по данным таблицы настроек конвертируем структуру SAP в параметры BAPI
 
## по данным таблицы настроек конвертируем структуру SAP в параметры BAPI
 
## выполняем BAPI
 
## выполняем BAPI
 
 
 
==Файловое представление настроек==
 
===Введение===
 
На момент разработки и внедрения продукта используется более удобное представление настроек в виде файлов.
 
 
Таблица настроек /SBIS/SETTINGS может быть представлена в виде набора настроечных файлов, которые содержат информацию об общих настройках, настройках аккордеона, выгрузки, загрузки:
 
[[Файл:Ini_list.png|thumb|right|типичный набор файлов конфигурации]]
 
#SBIS содержит общие настройки и настройки аккордеона
 
#LO_* содержат данные по реестрам необходимые для построения списков (List Outbound)
 
#DO_* настройки исходящих документов для выгрузки (Download Outbound)
 
#UI_* настройки входящих документов для загрузки (Upload Inbound)
 
 
После формирования необходимых файлов настройки *.json используется скрипт на Python, который формирует единый файл с настройками *.csv, загружаемый в SAP через утилиту [[#Ручная загрузка настроек]] или транзакцию для редактирования настроек /n/SBIS/SETTINGS.
 
 
===Общие настройки===
 
Общие настройки содержат следующие ключевые значения:
 
#EXCHANGE_CLASS параметр, указывающий используемый тип обмена между SAP и СБИС
 
#ASYNC_GROUP_SERVER – значение группы серверов для асинхронного обмена данными
 
#DOC_TYPE – соответствие типа загружаемого документа – документу SAP
 
#NDS_CODE_INCOMING - соответствие ставки НДС значению ставки в SAP
 
#CONVERT_XSLT_NAME_TO_FIO_TYPE – список наименований юридических лиц, используемый с ФИО
 
#SBIS_ROBOT – настройки автоматической отправки и получения статусов
 
#ACCORDION – настройки аккордеона, состоит из набора доступных папок и документов в списке. Обычно содержит как минимум реестр “Полученных”, ”Отправленных”, “Ответы контрагентов”, отражающие аналогичные реестры в личном кабинете. “Продажи” содержит список выгружаемых пакетов документов.
 
Еще раз перечислим настройки аккордеона:
 
#NAME – имя реестра
 
#CONTENT_CLASS – класс построения дерева (списка) документов
 
#EXCHANGE_SEND_CLASS – класс обмена данными
 
#VIEW_CLASS – класс отображения пакета документов
 
#PAGE_SIZE – размер страницы при загрузке документов
 
#FILTER_FM_NAME – фильтр, отображаемый на экране
 
#ASYNC_PROCESSING – "X" выполнять асинхронно, иначе синхронно
 
#Дополнительно может быть добавлена проверка на авторизации: <source lang=json>
 
  "Имя": "CHECK_AUTHORITY",
 
  "Значение": [
 
    {
 
      "Имя": "BUKRS_ORG",
 
      "Значение": [
 
        {
 
          "Имя": "ПолучениеДанныхМетод",
 
          "Значение": "GET_AUTH_BUKRS"
 
        },
 
        {
 
          "Имя": "ПроверкаМетод",
 
          "Значение": "CHECK_AUTH_BUKRS"
 
        },
 
        {
 
          "Имя": "ПараметрыПроверки",
 
          "Значение": [
 
            {
 
              "Имя": "ACTVT",
 
              "Значение": "03",
 
              "Тип": "Операция"
 
            },
 
            {
 
              "Имя": "PSART",
 
              "Значение": "01",
 
              "Тип": "Сектор"
 
            }
 
          ],
 
          "Формат": "F_BKPF_BUK - комментарий"
 
        }
 
      ]
 
    }
 
  ]
 
}
 
</source>
 
 
В итоге файл SBIS.json выглядит следующим образом:
 
<div style="border: 1px dashed;">
 
'''пример SBIS.json'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
{
 
  "EXCHANGE_CLASS": {
 
    "Значение": "/SBIS/CL_EXCHANGE_SDK" //класс обмена, на данный момент (14.03.2018) доступны варианты /SBIS/CL_EXCHANGE_SDK, /SBIS/CL_EXCHANGE_FILE
 
  },
 
  "FILTER_FM_NAME": {
 
    "Значение": "/SBIS/FM_FILTER_SCREEN_301", //значение фильтра по умолчанию
 
    "Подтип": "Parameter"
 
  },
 
  "ASYNC_GROUP_SERVER": {
 
    "Значение": ""
 
  },
 
  "DOC_TYPE": {
 
    "Значение": [
 
      {
 
        "Имя": "IC", //тип документа
 
        "Тип": "Заказ",
 
        "Значение": [
 
          {
 
            "Имя": "VIEW_DOCUMENT",
 
            "Тип": "ME23N", //транзакция просмотра
 
            "Значение": [
 
              {
 
                //заполняемые поля на экране
 
                "Имя": "BELNR",
 
                "Значение": "BES"
 
              }
 
            ]
 
          }
 
        ]
 
      }
 
    ]
 
  },
 
  "NDS_CODE_INCOMING": {
 
    "Значение": [
 
      {
 
        "Имя": "18", // ставка НДС
 
        "Тип": "INBOUND",
 
        "Значение": "PC" //ставка НДС в SAP
 
      },
 
      {
 
        "Имя": "18%",
 
        "Тип": "INBOUND",
 
        "Значение": "PC"
 
      },
 
      {
 
        "Имя": "18/118",
 
        "Тип": "INBOUND",
 
        "Значение": "PC"
 
      }
 
    ]
 
  },
 
  "CONVERT_XSLT_NAME_TO_FIO_TYPE": {
 
    "Значение": [
 
      {
 
        "Имя": "TERMS",
 
        "Тип": "String",
 
        "Значение": "ип,чп,индивидуальный предприниматель,адвокат,нотариус,предприниматель без образования юридического лица,пбоюл,предприниматель"
 
      }
 
    ]
 
  },
 
  "SBIS_ROBOT": {
 
    "Значение": [
 
      {
 
        "Имя": "/SBIS/PR_UPDATE_DOC_STATUS", //программа обновления статусов
 
        "Значение": ""
 
      },
 
      {
 
        "Имя": "/SBIS/PR_SEND_ALL_SDK", //программа отправки документов
 
        "Значение": "SALES"
 
      }
 
    ]
 
  },
 
  "ACCORDION": {
 
    "Тип": "List",
 
    "Значение": [
 
      {
 
        "Имя": "Полученные",
 
        "Значение": [
 
          {
 
            "Имя": "NAME",
 
            "Значение": "Полученные"  //имя реестра
 
          },
 
          {
 
            "Имя": "CONTENT_CLASS",
 
            "Значение": "/SBIS/CL_TREE_INBOX" //класс построения дерева
 
          },
 
          {
 
            "Имя": "EXCHANGE_SEND_CLASS",
 
            "Значение": "" //класс обмена
 
          },
 
          {
 
            "Имя": "VIEW_CLASS",
 
            "Значение": "/SBIS/CL_VIEW_INBOX_PACKET" //класс просмотра пакета документов
 
          },
 
          {
 
            "Имя": "PAGE_SIZE",
 
            "Значение": "20" //размер страницы (значение для навигации)
 
          },
 
          {
 
            "Имя": "FILTER_FM_NAME",
 
            "Значение": "/SBIS/FM_FILTER_SCREEN_301", //фильтр на экране
 
            "Подтип": "Parameter"
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "Задачи",
 
        "Значение": [
 
          {
 
            "Имя": "NAME",
 
            "Значение": "Задачи"
 
          },
 
          {
 
            "Имя": "CONTENT_CLASS",
 
            "Значение": "/SBIS/CL_TREE_TASKS_LIST"
 
          },
 
          {
 
            "Имя": "EXCHANGE_SEND_CLASS",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "VIEW_CLASS",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "PAGE_SIZE",
 
            "Значение": "20"
 
          },
 
          {
 
            "Имя": "FILTER_FM_NAME",
 
            "Значение": "/SBIS/FM_FILTER_SCREEN_301",
 
            "Подтип": "Parameter"
 
          },
 
          {
 
            "Имя": "FOLDER",
 
            "Значение": "НаМне"
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "Отправленные",
 
        "Значение": [
 
          {
 
            "Имя": "NAME",
 
            "Значение": "Отправленные"
 
          },
 
          {
 
            "Имя": "CONTENT_CLASS",
 
            "Значение": "/SBIS/CL_TREE_OUTBOX"
 
          },
 
          {
 
            "Имя": "EXCHANGE_SEND_CLASS",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "VIEW_CLASS",
 
            "Значение": "/SBIS/CL_VIEW_OUTBOX_PACKET"
 
          },
 
          {
 
            "Имя": "PAGE_SIZE",
 
            "Значение": "20"
 
          },
 
          {
 
            "Имя": "FILTER_FM_NAME",
 
            "Значение": "/SBIS/FM_FILTER_SCREEN_301",
 
            "Подтип": "Parameter"
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "Ответы контрагентов",
 
        "Значение": [
 
          {
 
            "Имя": "NAME",
 
            "Значение": "Ответы контрагентов"
 
          },
 
          {
 
            "Имя": "CONTENT_CLASS",
 
            "Значение": "/SBIS/CL_TREE_RESPONSE"
 
          },
 
          {
 
            "Имя": "EXCHANGE_SEND_CLASS",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "VIEW_CLASS",
 
            "Значение": "/SBIS/CL_VIEW_RESPONSE_PACKET"
 
          },
 
          {
 
            "Имя": "PAGE_SIZE",
 
            "Значение": "20"
 
          },
 
          {
 
            "Имя": "FILTER_FM_NAME",
 
            "Значение": "/SBIS/FM_FILTER_SCREEN_301",
 
            "Подтип": "Parameter"
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "Продажа",
 
        "Значение": [
 
          {
 
            "Имя": "NAME",
 
            "Значение": "Продажа"
 
          },
 
          {
 
            "Имя": "ITEMS",
 
            "Тип": "List",
 
            "Значение": []  //список реестров
 
          }
 
        ]
 
      }
 
    ]
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
===Настройки выгрузки документов===
 
'''Алгоритм работы:'''
 
# На основании данных программы печати и маппинга заполнить универсальную структуру документа /SBIS/S_API2_PACKET
 
# Преобразовать структуру /SBIS/S_API2_PACKET в универсальный внутренний XML (вид 3.01) с помощью XSLT преобразования
 
# Преобразовать XML вида 3.01 в стандартный вид ФНС (5.01)
 
# Отправить документ
 
 
'''Задача:''' выгрузить реестр “Реализация товаров” - пакет документов состоящий из накладной и счет-фактуры.
 
 
'''Этапы решения:'''
 
#Добавляем реестр  “Реализация товаров” в список “Продажи” в аккордеоне. <source lang=JSON>
 
                                {
 
                                    "Имя": "LO_РеализацияТоваров", //указанное имя должно совпадать с создаваемым файлом
 
                                    "Значение": [
 
                                        {
 
                                            "Имя": "NAME",
 
                                            "Значение": "Реализация товаров" //наименование реестра
 
                                        },
 
                                        {
 
                                            "Имя": "CONTENT_CLASS",
 
                                            "Значение": "/SBIS/CL_TREE_API2_PACKET" //класс отображения дерева документов
 
                                        },
 
                                        {
 
                                            "Имя": "EXCHANGE_SEND_CLASS",
 
                                            "Значение": ""
 
                                        },
 
                                        {
 
                                            "Имя": "VIEW_CLASS",
 
                                            "Значение": "/SBIS/CL_VIEW_SAP_PACKET" //класс отображения пакета
 
                                        },
 
                                        {
 
                                            "Имя": "PAGE_SIZE",
 
                                            "Значение": "20" //размер страницы навигации
 
                                        },
 
                                        {
 
                                            "Имя": "FILTER_FM_NAME",
 
                                            "Значение": "/SBIS/FM_FILTER_SCREEN_302", //фильтр
 
                                            "Подтип": "Range"
 
                                        }
 
                                    ]
 
                                } </source>
 
#Создаем файл LO_ РеализацияТоваров содержащий настройки для выборки и компоновки документов в пакете
 
#Создаем файлы DO_DP_TOVTORGPR_1175010 для накладной и DO_ON_SCHFDOPPR_1115125 для счет-фактуры
 
 
<div style="border: 1px dashed;">
 
'''пример SBIS.json с добавленным реестром "Реализация Товаров"'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
{
 
  "EXCHANGE_CLASS": {
 
    "Значение": "/SBIS/CL_EXCHANGE_SDK" //класс обмена, на данный момент (14.03.2018) доступны варианты /SBIS/CL_EXCHANGE_SDK, /SBIS/CL_EXCHANGE_FILE
 
  },
 
  "FILTER_FM_NAME": {
 
    "Значение": "/SBIS/FM_FILTER_SCREEN_301", //значение фильтра по умолчанию
 
    "Подтип": "Parameter"
 
  },
 
  "ASYNC_GROUP_SERVER": {
 
    "Значение": ""
 
  },
 
  "DOC_TYPE": {
 
    "Значение": [
 
      {
 
        "Имя": "IC", //тип документа
 
        "Тип": "Заказ",
 
        "Значение": [
 
          {
 
            "Имя": "VIEW_DOCUMENT",
 
            "Тип": "ME23N", //транзакция просмотра
 
            "Значение": [
 
              {
 
                //заполняемые поля на экране
 
                "Имя": "BELNR",
 
                "Значение": "BES"
 
              }
 
            ]
 
          }
 
        ]
 
      }
 
    ]
 
  },
 
  "NDS_CODE_INCOMING": {
 
    "Значение": [
 
      {
 
        "Имя": "18", // ставка НДС
 
        "Тип": "INBOUND",
 
        "Значение": "PC" //ставка НДС в SAP
 
      },
 
      {
 
        "Имя": "18%",
 
        "Тип": "INBOUND",
 
        "Значение": "PC"
 
      },
 
      {
 
        "Имя": "18/118",
 
        "Тип": "INBOUND",
 
        "Значение": "PC"
 
      }
 
    ]
 
  },
 
  "CONVERT_XSLT_NAME_TO_FIO_TYPE": {
 
    "Значение": [
 
      {
 
        "Имя": "TERMS",
 
        "Тип": "String",
 
        "Значение": "ип,чп,индивидуальный предприниматель,адвокат,нотариус,предприниматель без образования юридического лица,пбоюл,предприниматель"
 
      }
 
    ]
 
  },
 
  "SBIS_ROBOT": {
 
    "Значение": [
 
      {
 
        "Имя": "/SBIS/PR_UPDATE_DOC_STATUS", //программа обновления статусов
 
        "Значение": ""
 
      },
 
      {
 
        "Имя": "/SBIS/PR_SEND_ALL_SDK", //программа отправки документов
 
        "Значение": "SALES"
 
      }
 
    ]
 
  },
 
  "ACCORDION": {
 
    "Тип": "List",
 
    "Значение": [
 
      {
 
        "Имя": "Полученные",
 
        "Значение": [
 
          {
 
            "Имя": "NAME",
 
            "Значение": "Полученные"  //имя реестра
 
          },
 
          {
 
            "Имя": "CONTENT_CLASS",
 
            "Значение": "/SBIS/CL_TREE_INBOX" //класс построения дерева
 
          },
 
          {
 
            "Имя": "EXCHANGE_SEND_CLASS",
 
            "Значение": "" //класс обмена
 
          },
 
          {
 
            "Имя": "VIEW_CLASS",
 
            "Значение": "/SBIS/CL_VIEW_INBOX_PACKET" //класс просмотра пакета документов
 
          },
 
          {
 
            "Имя": "PAGE_SIZE",
 
            "Значение": "20" //размер страницы (значение для навигации)
 
          },
 
          {
 
            "Имя": "FILTER_FM_NAME",
 
            "Значение": "/SBIS/FM_FILTER_SCREEN_301", //фильтр на экране
 
            "Подтип": "Parameter"
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "Задачи",
 
        "Значение": [
 
          {
 
            "Имя": "NAME",
 
            "Значение": "Задачи"
 
          },
 
          {
 
            "Имя": "CONTENT_CLASS",
 
            "Значение": "/SBIS/CL_TREE_TASKS_LIST"
 
          },
 
          {
 
            "Имя": "EXCHANGE_SEND_CLASS",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "VIEW_CLASS",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "PAGE_SIZE",
 
            "Значение": "20"
 
          },
 
          {
 
            "Имя": "FILTER_FM_NAME",
 
            "Значение": "/SBIS/FM_FILTER_SCREEN_301",
 
            "Подтип": "Parameter"
 
          },
 
          {
 
            "Имя": "FOLDER",
 
            "Значение": "НаМне"
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "Отправленные",
 
        "Значение": [
 
          {
 
            "Имя": "NAME",
 
            "Значение": "Отправленные"
 
          },
 
          {
 
            "Имя": "CONTENT_CLASS",
 
            "Значение": "/SBIS/CL_TREE_OUTBOX"
 
          },
 
          {
 
            "Имя": "EXCHANGE_SEND_CLASS",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "VIEW_CLASS",
 
            "Значение": "/SBIS/CL_VIEW_OUTBOX_PACKET"
 
          },
 
          {
 
            "Имя": "PAGE_SIZE",
 
            "Значение": "20"
 
          },
 
          {
 
            "Имя": "FILTER_FM_NAME",
 
            "Значение": "/SBIS/FM_FILTER_SCREEN_301",
 
            "Подтип": "Parameter"
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "Ответы контрагентов",
 
        "Значение": [
 
          {
 
            "Имя": "NAME",
 
            "Значение": "Ответы контрагентов"
 
          },
 
          {
 
            "Имя": "CONTENT_CLASS",
 
            "Значение": "/SBIS/CL_TREE_RESPONSE"
 
          },
 
          {
 
            "Имя": "EXCHANGE_SEND_CLASS",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "VIEW_CLASS",
 
            "Значение": "/SBIS/CL_VIEW_RESPONSE_PACKET"
 
          },
 
          {
 
            "Имя": "PAGE_SIZE",
 
            "Значение": "20"
 
          },
 
          {
 
            "Имя": "FILTER_FM_NAME",
 
            "Значение": "/SBIS/FM_FILTER_SCREEN_301",
 
            "Подтип": "Parameter"
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "Продажа",
 
        "Значение": [
 
          {
 
            "Имя": "NAME",
 
            "Значение": "Продажа"
 
          },
 
          {
 
            "Имя": "ITEMS",
 
            "Тип": "List",
 
            "Значение": [
 
              {
 
              "Имя": "LO_РеализацияТоваров",
 
              "Значение": [
 
                {
 
                  "Имя": "NAME",
 
                  "Значение": "Реализация товаров"
 
                },
 
                {
 
                  "Имя": "CONTENT_CLASS",
 
                  "Значение": "/SBIS/CL_TREE_API2_PACKET"
 
                },
 
                {
 
                  "Имя": "VIEW_CLASS",
 
                  "Значение": "/SBIS/CL_VIEW_SAP_PACKET"
 
                },
 
                {
 
                  "Имя": "PAGE_SIZE",
 
                  "Значение": "20"
 
                },
 
                {
 
                  "Имя": "FILTER_FM_NAME",
 
                  "Значение": "/SBIS/FM_FILTER_SCREEN_302",
 
                  "Подтип": "Range"
 
                },
 
                {
 
                  "Имя": "CHECK_AUTHORITY",
 
                  "Значение": [
 
                    {
 
                      "Имя": "BUKRS_ORG",
 
                      "Значение": [
 
                        {
 
                          "Имя": "ПолучениеДанныхМетод",
 
                          "Значение": "GET_AUTH_BUKRS"
 
                        },
 
                        {
 
                          "Имя": "ПроверкаМетод",
 
                          "Значение": "CHECK_AUTH_BUKRS"
 
                        },
 
                        {
 
                          "Имя": "ПараметрыПроверки",
 
                          "Значение": [
 
                            {
 
                              "Имя": "ACTVT",
 
                              "Значение": "03",
 
                              "Тип": "Операция"
 
                            },
 
                            {
 
                              "Имя": "PSART",
 
                              "Значение": "01",
 
                              "Тип": "Сектор"
 
                            }
 
                          ],
 
                          "Формат": "F_BKPF_BUK - комментарий"
 
                        }
 
                      ]
 
                    }
 
                  ]
 
                },
 
                {
 
                  "Имя": "ASYNC_PROCESSING",
 
                  "Значение": ""
 
                }
 
              ]
 
            }
 
            ]
 
          }
 
        ]
 
      }
 
    ]
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
Разберем подробнее пункты 2 и 3 решения.
 
====Настройки выборки====
 
Файл с настройками LO_* списка содержит информацию о классе получения списка документов, общих настройках для реестра в СБИС, такие как регламент, название реестра, указание на файл выгрузки самого документа DO_*, запрос списка связанных документов, исключения из выборки. В зависимости от версии системы различаются принципы построения списков – использование статических методов выборки или построение динамического select’a.
 
 
=====Общее для версий 700 и 740=====
 
 
#ПолучениеДанных_Класс – класс получения данных для построения списка документов
 
#Реестр1С_Название, Реестр1С_Тип – классификаторы пакета документов
 
#РеестрСБИС_Тип – тип входящего реестра СБИС
 
#Регламент_Название – название регламета СБИС
 
#Реестр_СБИС – название входящего реестра СБИС
 
#НазваниеДокумента – отображаемое название документа
 
#ИсклСторноДатаСовпадает – исключение сторно документа из списка, если дата совпадает
 
#ИсклСторноДатаНеСовпадает – исключение сторно документа из списка, если дата не совпадает
 
#ИсклСторноМесяцСовпадает  – исключение сторно документа из списка, если месяц совпадает
 
#ИсклСторноМесяцНеСовпадает – исключение сторно документа из списка, если месяц не совпадает
 
 
=====Версия 700=====
 
 
Для изменения выборки документов требуется наследовать стандартный класс получения данных и изменить метод GET_LIST_API2_PACKET.
 
#ПолучениеДанныхВложения – указание на документ выгрузки DO_*
 
#ЗапросСпискаСвязанныхДокументов – содержит ссылки на документы-вложения, в поле Имя указывается метод класса для получения связанных документов. Также указывается имя документа для отображения и связанный файл получения вложения DO_*.
 
 
<div style="border: 1px dashed;">
 
'''пример LO_РеализацияТоваров версии 700'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
{
 
  "ПолучениеДанных_Класс": {
 
    "Значение": "/SBIS/CL_SAP_DATA_700_LIKP" //класс получения данных
 
  },
 
  "Реестр1С_Название": {
 
    "Значение": "Реализация товаров"
 
  },
 
  "Реестр1С_Тип": {
 
    "Значение": "'РеализацияТоваров'"
 
  },
 
  "РеестрСБИС_Тип": {
 
    "Значение": "'ДокОтгрИсх,НакладнаяИсх,Исходящие'"
 
  },
 
  "Регламент_Название": {
 
    "Значение": "Реализация"
 
  },
 
  "Реестр_СБИС": {
 
    "Значение": "ДокОтгрИсх"
 
  },
 
  "НазваниеДокумента": {
 
    "Значение": "Накладная"
 
  },
 
  "ПолучениеДанныхВложения": {
 
    "Значение": "DO_DP_TOVTORGPR_1175010" //указание на выгрузку документа DO_*
 
  },
 
  "РеестрПоУмолчанию": {
 
    "Значение": "'1'"
 
  },
 
  "ЗапросСпискаСвязанныхДокументов": {
 
    "Тип": "List",
 
    "Значение": [
 
      {
 
        "Имя": "GET_CHILD_VBFA_SFAKT", //метод класса получения данных
 
        "Значение": [
 
          {
 
            "Имя": "НазваниеДокумента",
 
            "Значение": "Счет-фактура"
 
          },
 
          {
 
            "Имя": "ПолучениеДанныхВложения",
 
            "Значение": "DO_ON_SCHFDOPPR_1115125" //указание на выгрузку документа DO_*
 
          }
 
        ]
 
      }
 
    ]
 
  },
 
  "ИсклСторноДатаСовпадает": {
 
    "Значение": "X"
 
  },
 
  "ИсклСторноДатаНеСовпадает": {
 
    "Значение": "X"
 
  },
 
  "ИсклСторноМесяцСовпадает": {
 
    "Значение": "X"
 
  },
 
  "ИсклСторноМесяцНеСовпадает": {
 
    "Значение": "X"
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
=====Версия 740=====
 
 
Списки документов строятся на основании динамического select’а.
 
#ЗапросСпискаДокументов – содержит тип запроса: select, select_groupby, select_distinct.
 
##Тело запрос разбито на 5 подстрок длиной 255 символов, а именно:
 
###ЗапросСпискаДокументов_select_1 ... ЗапросСпискаДокументов_select_5
 
###ЗапросСпискаДокументов_from_1 ... ЗапросСпискаДокументов_from_5
 
###ЗапросСпискаДокументов_groupby_1 ... ЗапросСпискаДокументов_groupby_5
 
###ЗапросСпискаДокументов_having_1 ... ЗапросСпискаДокументов_having_5
 
###ЗапросСпискаДокументов_where_1 ... ЗапросСпискаДокументов_where_5
 
#ЗапросСпискаСвязанныхДокументов – динамическая выборка для построения списка связанных документов:
 
##Тело запрос разбито на 5 подстрок длиной 255 символов, дополнительно выделена выборка сторнированных документов:
 
###ЗапросСпискаСвязанныхДокументов_select_1 ... ЗапросСпискаСвязанныхДокументов_select_5
 
###ЗапросСпискаСвязанныхДокументов_from_1 ... ЗапросСпискаСвязанныхДокументов_from_5
 
###ЗапросСпискаСвязанныхДокументов_where_1 ... ЗапросСпискаСвязанныхДокументов_where_5
 
###ЗапросСпискаСвязанныхДокументовСторно_select_1 ... ЗапросСпискаСвязанныхДокументовСторно_select_5
 
###ЗапросСпискаСвязанныхДокументовСторно_from_1 ... ЗапросСпискаСвязанныхДокументовСторно_from_5
 
###ЗапросСпискаСвязанныхДокументовСторно_where_1 ... ЗапросСпискаСвязанныхДокументовСторно_where_5
 
 
<div style="border: 1px dashed;">
 
'''пример LO_РеализацияТоваров версии 740'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
{
 
  "ПолучениеДанных_Класс": {
 
    "Значение": "/SBIS/CL_SAP_DATA_740" //класс получения данных
 
  },
 
  "Реестр1С_Название": {
 
    "Значение": "Реализация товаров" //наименование реестра документов
 
  },
 
  "Реестр1С_Тип": {
 
    "Значение": "'РеализацияТоваров'" //наименование типа реестра документов
 
  },
 
  "РеестрСБИС_Тип": {
 
    "Значение": "'ДокОтгрИсх,НакладнаяИсх,Исходящие'" //наименование типа реестра документов в СБИС
 
  },
 
  "Регламент_Название": {
 
    "Значение": "Реализация" //регламент в СБИС
 
  },
 
  "Реестр_СБИС": {
 
    "Значение": "ДокОтгрИсх" //реестр в СБИС
 
  },
 
  "НазваниеДокумента": {
 
    "Значение": "Накладная" //наименование документа
 
  },
 
  "ЗапросСпискаДокументов": {
 
    "Значение": "select_groupby" //тип выборки
 
  },
 
  "ЗапросСпискаДокументов_select_1": {
 
    "Значение": "'DO_DP_TOVTORGPR_1175010' AS ini_name, likp~vbeln AS belnr, likp~vbeln AS xblnr,"
 
  },
 
  "ЗапросСпискаДокументов_select_2": {
 
    "Значение": "likp~wadat_ist AS date, likp~waerk AS waers, SUM( vbap~kzwi4 ) AS sum,"
 
  },
 
  "ЗапросСпискаДокументов_select_3": {
 
    "Значение": "( kna1~name1 && kna1~name2 && kna1~name3 && kna1~name4 ) AS partner_name,"
 
  },
 
  "ЗапросСпискаДокументов_select_4": {
 
    "Значение": "tvko~bukrs AS bukrs, vbfa~vbtyp_n AS subtype"
 
  },
 
  "ЗапросСпискаДокументов_select_5": {
 
    "Значение": ""
 
  },
 
  "ЗапросСпискаДокументов_from_1": {
 
    "Значение": "likp AS likp INNER  JOIN vbfa AS vbfa ON likp~vbeln = vbfa~vbeln AND vbfa~vbtyp_n = 'J'"
 
  },
 
  "ЗапросСпискаДокументов_from_2": {
 
    "Значение": "INNER  JOIN vbap AS vbap ON vbfa~vbelv = vbap~vbeln AND vbfa~posnv = vbap~posnr"
 
  },
 
  "ЗапросСпискаДокументов_from_3": {
 
    "Значение": "INNER JOIN kna1 AS kna1 ON likp~kunnr = kna1~kunnr"
 
  },
 
  "ЗапросСпискаДокументов_from_4": {
 
    "Значение": "INNER JOIN tvko AS tvko ON likp~vkorg = tvko~vkorg"
 
  },
 
  "ЗапросСпискаДокументов_from_5": {
 
    "Значение": ""
 
  },
 
  "ЗапросСпискаДокументов_groupby_1": {
 
    "Значение": "likp~vbeln, likp~wadat_ist,"
 
  },
 
  "ЗапросСпискаДокументов_groupby_2": {
 
    "Значение": "likp~waerk, vbfa~vbtyp_n,"
 
  },
 
  "ЗапросСпискаДокументов_groupby_3": {
 
    "Значение": "likp~kunnr, likp~vkorg, tvko~bukrs,"
 
  },
 
  "ЗапросСпискаДокументов_groupby_4": {
 
    "Значение": "kna1~name1, kna1~name2,"
 
  },
 
  "ЗапросСпискаДокументов_groupby_5": {
 
    "Значение": "kna1~name3, kna1~name4"
 
  },
 
  "ЗапросСпискаДокументов_having_1": {
 
    "Значение": "likp~vbeln IN @lt_rng_belnr AND likp~vkorg IN @lt_rng_vkorg "
 
  },
 
  "ЗапросСпискаДокументов_having_2": {
 
    "Значение": "AND likp~kunnr IN @lt_rng_partner"
 
  },
 
  "ЗапросСпискаДокументов_having_3": {
 
    "Значение": "AND likp~wadat_ist IN @lt_rng_bldat"
 
  },
 
  "ЗапросСпискаДокументов_having_4": {
 
    "Значение": "AND tvko~bukrs IN @lt_rng_bukrs"
 
  },
 
  "ЗапросСпискаДокументов_having_5": {
 
    "Значение": ""
 
  },
 
  "ЗапросСпискаСвязанныхДокументов": {
 
    "Тип": "List", //массив списка связанных документов
 
    "Значение": [
 
      {
 
        "Имя": "GET_CHILD_VBFA", //метод класса получения данных
 
        "Значение": [
 
          {
 
            "Имя": "НазваниеДокумента",
 
            "Значение": "Счет-фактура"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_select_1",
 
            "Значение": "'DO_ON_SCHFDOPPR_1115125' as ini_name, vbrk~bukrs AS bukrs, vbfa~vbeln AS belnr, "
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_select_2",
 
            "Значение": "vbrk~vbeln AS xblnr, vbrk~fkdat AS date, vbfa~waers AS waers,"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_select_3",
 
            "Значение": "( vbrk~netwr + vbrk~mwsbk ) AS sum,"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_select_4",
 
            "Значение": "( kna1~name1 && kna1~name2 && kna1~name3 && kna1~name4 ) AS partner_name,"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_select_5",
 
            "Значение": "vbtyp_n AS subtype"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_from_1",
 
            "Значение": "vbfa AS vbfa"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_from_2",
 
            "Значение": "INNER  JOIN vbrk AS vbrk ON vbfa~vbeln = vbrk~vbeln"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_from_3",
 
            "Значение": "INNER  JOIN kna1 AS kna1 ON vbrk~kunrg = kna1~kunnr"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_where_1",
 
            "Значение": "vbelv = @is_list_base_doc-belnr AND vbfa~vbtyp_n IN ('M', 'O', 'P')"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_select_20170716",
 
            "Значение": "'DO_ON_SCHFDOPPR_1115125' as ini_name, vbrk~bukrs AS bukrs, vbfa~vbeln AS belnr, bkpf~belnr AS xblnr, vbrk~fkdat AS date, vbfa~waers AS waers, ( vbrk~netwr + vbrk~mwsbk ) AS sum, ( kna1~name1 && kna1~name2 && kna1~name3 && kna1~name4 ) AS partner_name, vbtyp_n AS subtype"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_from_20170716",
 
            "Значение": "vbfa AS vbfa INNER  JOIN vbrk AS vbrk ON vbfa~vbeln = vbrk~vbeln INNER  JOIN kna1 AS kna1 ON vbrk~kunrg = kna1~kunnr INNER JOIN bkpf as bkpf ON bkpf~bukrs = vbrk~bukrs AND bkpf~awkey = vbrk~vbeln AND bkpf~awtyp = 'VBRK'"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументов_where_20170716",
 
            "Значение": "vbfa~vbtyp_n IN ('M', 'N', 'O', 'P') AND vbelv = @is_list_base_doc-belnr"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументовСторно_select_1",
 
            "Значение": "vbrk~vbeln AS belnr, vbrk~fkdat AS date"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументовСторно_from_1",
 
            "Значение": "vbfa AS vbfa INNER  JOIN vbrk AS vbrk ON vbfa~vbelv = vbrk~vbeln OR vbfa~vbeln = vbrk~vbeln"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументовСторно_where_1",
 
            "Значение": "( vbfa~vbtyp_v = 'M' AND vbfa~vbtyp_n = 'N' AND vbfa~vbeln = @ls_list_related_doc-belnr )"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументовСторно_where_2",
 
            "Значение": "OR ( vbfa~vbtyp_n = 'N' AND vbfa~vbtyp_v = 'M' AND vbfa~vbelv = @ls_list_related_doc-belnr )"
 
          },
 
          {
 
            "Имя": "ЗапросСпискаСвязанныхДокументовСторно_where_3",
 
            "Значение": "AND vbrk~vbeln <> @ls_list_related_doc-belnr"
 
          }
 
        ]
 
      }
 
    ]
 
  },
 
  "РеестрПоУмолчанию": {
 
    "Значение": "'1'"
 
  },
 
  "ИсклСторноДатаСовпадает": {
 
    "Значение": "X"
 
  },
 
  "ИсклСторноДатаНеСовпадает": {
 
    "Значение": "X"
 
  },
 
  "ИсклСторноМесяцСовпадает": {
 
    "Значение": "X"
 
  },
 
  "ИсклСторноМесяцНеСовпадает": {
 
    "Значение": "X"
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
====Настройка документа выгрузки====
 
Файлы DO_* содержат настройки для выгрузки документов, а именно указание программы печати,  класс получения данных, XSLT преобразование, данные отправителя и получателя, маппинг данных SAP во внутреннюю структуру SAPPER, на основании которой формируются XML документы.
 
*ПолучениеДанных_Класс – класс получения данных документа
 
*ПолучениеДанных_Метод – метод класса получения данных
 
*ПолучениеДанных_XSLT – XSLT преобразование для получения XML документа во внутреннем формате
 
*assign_program – программа печати, J_3RV_DELIV_PDF
 
*ОтправительПакета_Роль, ПолучательПакета_Роль – роли отправителя и получателя пакета
 
 
Описание маппинга документов содержатся в массиве FILE. Массив может содержать несколько документов, которые будут формироваться на основании одной программы печати, это может быть использовано для формирования накладной и вместе с ней сопроводительного документа, который содержит те же самые данные, но в другой форме, согласованной между участниками обмена.
 
<div style="border: 1px dashed;">
 
'''пример FILE'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
{
 
  "ПолучениеДанных_Класс": {
 
    "Значение": "/SBIS/CL_SAP_DATA"
 
  },
 
  "ПолучениеДанных_Метод": {
 
    "Значение": "/SBIS/PRINT_NAST"
 
  },
 
  "ПолучениеДанных_XSLT": {
 
    "Значение": "/SBIS/DOC301"
 
  },
 
  "assign_program": {
 
    "Значение": "J_3RV_DELIV_PDF"
 
  },
 
  "ОтправительПакета_Роль": {
 
    "Значение": "Отправитель"
 
  },
 
  "ПолучательПакета_Роль": {
 
    "Значение": "Получатель"
 
  },
 
  "FILE": {
 
    "Файл1_Накладная": {
 
    },
 
    "Файл1_Акт": {
 
    }
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
Маппинг полей из программы печати SAP в структуру /SBIS/S_XML.
 
*DOC_NAME – наименование документа “Накладная”
 
*FILE_FORMAT_TYPE – тип документа “ЭДОНакл”
 
*FILE_FORMAT_SUBTYPE – подтип докумета, КНД, "1175010"
 
*FILE_FORMAT_VERSION – версия документа, по умолчанию из SAP “3.01”
 
*FILE_PROG_VERSION – версия программы, по умолчанию "SAP NetConnector"
 
*FILE_ID_FORM – номер визуализации формы, по умолчанию, "1С"
 
*FILE_NAME – префикс имени создаваемого файла, "DP_TOVTORGPR_"
 
*NAME – отображаемое имя документа, “Накладная”
 
*DATE – дата документа, содержит ссылку на структуру H_DOC программы печати <source lang=JSON> "DATE": {
 
        "Значение": "H_DOC-WADAT",
 
        "Тип": "Field_Date"
 
      }</source>
 
*TIME – время документа
 
Остальные поля прописываются в соответствии с заголовочной структурой H_DOC программы печати, к примеру, номер документа, валюта, сумма без налога, итоговая сумма.
 
<source lang=JSON>
 
"NUMBER": {
 
        "Значение": "H_DOC-VBELN",
 
        "Тип": "Field"
 
      },
 
      "WAERS": {
 
        "Значение": "H_DOC-WAERK",
 
        "Тип": "Field_WaersToCode"
 
      },
 
      "SUM_TAX_FREE": {
 
        "Значение": "H_DOC-TOT_NETWR",
 
        "Тип": "Field"
 
      },
 
      "SUM": {
 
        "Значение": "H_DOC-TOT_SUM",
 
        "Тип": "Field"
 
      }
 
</source>
 
Значение параметра для заголовка может иметь тип: Field – поле ABAP объекта, String – строка. Для типов возможно применение внутренних преобразований с помощью добавления постфиксов, к примеру, Field_Date преобразует дату из формата ABAP в формат 00.00.0000, Field_WaersToCode преобразует валюту в кодовое значение валюты. Список доступных преобразований можно посмотреть в методе классе /SBIS/CL_MAPPING->CONVERT_FIELD_TYPE.
 
Маппинг данных отправителя и получателя находятся в массиве FACE.
 
Для заголовка, также можно добавить параметры, в следующем виде:
 
<div style="border: 1px dashed;">
 
'''параметры'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
"PARAM": {
 
  "Тип": "Param",
 
  "Значение": {
 
    "Отправитель_Банковские_Данные": [
 
      {
 
        "Имя": "NAME",
 
        "Значение": "Отправитель_Банковские_Данные",
 
        "Тип": "String"
 
      },
 
      {
 
        "Имя": "VALUE",
 
        "Значение": "H_DOC-WAERK",
 
        "Тип": "Field"
 
      }
 
    ],
 
    "Получатель_Банковские_Данные": [
 
      {
 
        "Имя": "NAME",
 
        "Значение": "Получатель_Банковские_Данные",
 
        "Тип": "String"
 
      },
 
      {
 
        "Имя": "VALUE",
 
        "Значение": "H_DOC-ERDAT",
 
        "Тип": "Field"
 
      }
 
    ],
 
    "ИнфПередТабл": [
 
      {
 
        "Имя": "NAME",
 
        "Значение": "ИнфПередТабл",
 
        "Тип": "String"
 
      },
 
      {
 
        "Имя": "VALUE",
 
        "Значение": "ИнфПередТабл N 00 от 01.01.1999 Контракт 123 от 01.01.2017",
 
        "Тип": "String"
 
      }
 
    ],
 
    "ИнфПослеТабл": [
 
      {
 
        "Имя": "NAME",
 
        "Значение": "ИнфПослеТабл",
 
        "Тип": "String"
 
      },
 
      {
 
        "Имя": "VALUE",
 
        "Значение": "ИнфПослеТабл N 00 от 01.01.1999",
 
        "Тип": "String"
 
      }
 
    ]
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
В массиве LINKS можно указать ссылки на связанные документы, номер заказа, транспортную накладную и так далее:
 
<div style="border: 1px dashed;">
 
'''массив LINKS'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
"LINKS": {
 
  "Тип": "Links",
 
  "Значение": {
 
    "Заказ": [
 
      {
 
        "Имя": "NAME",
 
        "Значение": "H_DOC-GROUND",
 
        "Тип": "Field"
 
      },
 
      {
 
        "Имя": "TYPE",
 
        "Значение": "ЗаказВх",
 
        "Тип": "String"
 
      },
 
      {
 
        "Имя": "NUMBER",
 
        "Значение": "H_DOC-TRANSP_NUM1",
 
        "Тип": "Field"
 
      },
 
      {
 
        "Имя": "DATE",
 
        "Значение": "H_DOC-TRANSP_DATE1",
 
        "Тип": "Field_Date"
 
      }
 
    ],
 
    "ТранНакл": [
 
      {
 
        "Имя": "NAME",
 
        "Значение": "ТранНакл",
 
        "Тип": "String"
 
      },
 
      {
 
        "Имя": "TYPE",
 
        "Значение": "",
 
        "Тип": "String"
 
      },
 
      {
 
        "Имя": "NUMBER",
 
        "Значение": "H_DOC-TRANSP_NUM2",
 
        "Тип": "String"
 
      },
 
      {
 
        "Имя": "DATE",
 
        "Значение": "01.01.1900",
 
        "Тип": "String"
 
      }
 
    ]
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
Отправитель, получатель, грузоотправитель, грузополучатель и прочие сущности сторон обмена содержатся в массиве FACE. 
 
<div style="border: 1px dashed;">
 
'''массив FACE сторон обмена'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
{
 
  "FACE": {
 
    "Тип": "Face",
 
    "Значение": {
 
      "Отправитель": [
 
        {
 
          "Имя": "ID",
 
          "Значение": "VBDKL-BUKRS",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "GET_BUKRS_BY_BUKRS",
 
          "Значение": "",
 
          "Тип": "Method",
 
          "Подтип": "/SBIS/CL_SAP_DATA"
 
        },
 
        {
 
          "Имя": "GET_BUKRS_BANK_BY_BUKRS",
 
          "Значение": "",
 
          "Тип": "Method",
 
          "Подтип": "/SBIS/CL_SAP_DATA"
 
        },
 
        {
 
          "Имя": "INN",
 
          "Значение": "H_DOC-SUPPLIERINN",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "KPP",
 
          "Значение": "H_DOC-SUPPLIERKPP",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKPO",
 
          "Значение": "H_DOC-SUPPLIEROKPO",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKOPF",
 
          "Значение": "H_DOC-SUPPLIEROKOPF",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKDP",
 
          "Значение": "",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_SP-NAME1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_SP-NAME2",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_SP-NAME3",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_SP-NAME4",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_SP-NAME1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_SP-NAME2",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_SP-NAME3",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_SP-NAME4",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "COUNTRY_CODE",
 
          "Значение": "GR_CURRENT_DATA->COUNTRY_CODE",
 
          "Тип": "ClassField"
 
        },
 
        {
 
          "Имя": "ADR_TEXT",
 
          "Значение": "",
 
          "Тип": "String"
 
        },
 
        {
 
          "Имя": "ADR_TYPE",
 
          "Значение": "Юридический",
 
          "Тип": "String"
 
        },
 
        {
 
          "Имя": "POST_CODE",
 
          "Значение": "ADDR1_SP-POST_CODE1",
 
          "Тип": "Concat_Field",
 
          "Подтип": "ADR_TEXT"
 
        },
 
        {
 
          "Имя": "CITY",
 
          "Значение": "ADDR1_SP-CITY1",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "ADR_TEXT"
 
        },
 
        {
 
          "Имя": "STREET",
 
          "Значение": "ADDR1_SP-STREET",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "ADR_TEXT"
 
        },
 
        {
 
          "Имя": "HOUSE",
 
          "Значение": "ADDR1_SP-HOUSE_NUM1",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "ADR_TEXT"
 
        },
 
        {
 
          "Имя": "PHONE",
 
          "Значение": "ADDR1_SP-TEL_NUMBER",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "FAX",
 
          "Значение": "ADDR1_SP-FAX_NUMBER",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "EMAIL",
 
          "Значение": "",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "BANK_NAME",
 
          "Значение": "SP_BANK-NAME",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "BANK_BIK",
 
          "Значение": "SP_BANK-BIK",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "BANK_CORACC",
 
          "Значение": "GR_CURRENT_DATA->BANK_CORACC",
 
          "Тип": "ClassField"
 
        },
 
        {
 
          "Имя": "BANK_ACC",
 
          "Значение": "SP_BANK-ACC_NUM",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "PARAM",
 
          "Тип": "Param",
 
          "Значение": {
 
            "BANK_CITY": [
 
              {
 
                "Имя": "NAME",
 
                "Значение": "BANK_CITY",
 
                "Тип": "String"
 
              },
 
              {
 
                "Имя": "VALUE",
 
                "Значение": "GR_HIGHER_DATA->BANK_CITY",
 
                "Тип": "ClassField"
 
              }
 
            ]
 
          }
 
        }
 
      ],
 
      "Грузоотправитель": [
 
        {
 
          "Имя": "ID",
 
          "Значение": "VBDKL-BUKRS",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "GET_BUKRS_BY_BUKRS",
 
          "Значение": "",
 
          "Тип": "Method",
 
          "Подтип": "/SBIS/CL_SAP_DATA"
 
        },
 
        {
 
          "Имя": "GET_BUKRS_BANK_BY_BUKRS",
 
          "Значение": "",
 
          "Тип": "Method",
 
          "Подтип": "/SBIS/CL_SAP_DATA"
 
        },
 
        {
 
          "Имя": "INN",
 
          "Значение": "H_DOC-CC_INN",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "KPP",
 
          "Значение": "H_DOC-CC_KPP",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKPO",
 
          "Значение": "H_DOC-OKPO",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKOPF",
 
          "Значение": "H_DOC-CC_OKOPF",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKDP",
 
          "Значение": "H_DOC-OKDP",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_CC-NAME1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_CC-NAME2",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_CC-NAME3",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_CC-NAME4",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_CC-NAME1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_CC-NAME2",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_CC-NAME3",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_CC-NAME4",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "COUNTRY_CODE",
 
          "Значение": "GR_CURRENT_DATA->COUNTRY_CODE",
 
          "Тип": "ClassField"
 
        },
 
        {
 
          "Имя": "ADR_TEXT",
 
          "Значение": "GR_CURRENT_DATA->STREET",
 
          "Тип": "ClassField"
 
        },
 
        {
 
          "Имя": "ADR_TYPE",
 
          "Значение": "Юридический",
 
          "Тип": "String"
 
        },
 
        {
 
          "Имя": "POST_CODE",
 
          "Значение": "ADDR1_CC-POST_CODE",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "REGION_CODE",
 
          "Значение": "ADDR1_CC-REGION",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "CITY",
 
          "Значение": "ADDR1_CC-CITY1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "STREET",
 
          "Значение": "ADDR1_CC-STREET",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "HOUSE",
 
          "Значение": "ADDR1_CC-HOUSE_NUM1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "PHONE",
 
          "Значение": "ADDR1_CC-TEL_NUMBER",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "FAX",
 
          "Значение": "ADDR1_CC-FAX_NUMBER",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "EMAIL",
 
          "Значение": "",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "SUBDIVISION_ID",
 
          "Значение": "012345",
 
          "Тип": "String"
 
        },
 
        {
 
          "Имя": "SUBDIVISION_NAME",
 
          "Значение": "Склад в Мытищах",
 
          "Тип": "String"
 
        },
 
        {
 
          "Имя": "BANK_NAME",
 
          "Значение": "CC_BANK-NAME",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "BANK_BIK",
 
          "Значение": "CC_BANK-BIK",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "BANK_CORACC",
 
          "Значение": "GR_CURRENT_DATA->BANK_CORACC",
 
          "Тип": "ClassField"
 
        },
 
        {
 
          "Имя": "BANK_ACC",
 
          "Значение": "CC_BANK-ACC_NUM",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "PARAM",
 
          "Тип": "Param",
 
          "Значение": {
 
            "BANK_CITY": [
 
              {
 
                "Имя": "NAME",
 
                "Значение": "BANK_CITY",
 
                "Тип": "String"
 
              },
 
              {
 
                "Имя": "VALUE",
 
                "Значение": "GR_HIGHER_DATA->BANK_CITY",
 
                "Тип": "ClassField"
 
              }
 
            ]
 
          }
 
        }
 
      ],
 
      "Получатель": [
 
        {
 
          "Имя": "ID",
 
          "Значение": "VBDKL-KUNNR",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "GET_KUNNR_BANK_BY_KUNNR",
 
          "Значение": "",
 
          "Тип": "Method",
 
          "Подтип": "/SBIS/CL_SAP_DATA"
 
        },
 
        {
 
          "Имя": "GET_KUNNR_BY_KUNNR",
 
          "Тип": "Method",
 
          "Подтип": "/SBIS/CL_SAP_DATA",
 
          "Значение": {
 
            "CLASS_PARAM": [
 
              {
 
                "Имя": "IV_NATION",
 
                "Значение": "VBDKL-SPRAS_VST",
 
                "Тип": "Field",
 
                "Подтип": "Export",
 
                "Формат": "AD_NATION"
 
              },
 
              {
 
                "Имя": "IV_SELECT_NATION_DATA",
 
                "Значение": "X",
 
                "Тип": "String",
 
                "Подтип": "Export",
 
                "Формат": "CHAR01"
 
              }
 
            ]
 
          }
 
        },
 
        {
 
          "Имя": "INN",
 
          "Значение": "H_DOC-PAYERINN",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "KPP",
 
          "Значение": "H_DOC-PAYERKPP",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKPO",
 
          "Значение": "H_DOC-PAYEROKPO",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKOPF",
 
          "Значение": "H_DOC-PAYEROKOPF",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKDP",
 
          "Значение": "",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_PY-NAME1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_PY-NAME2",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_PY-NAME3",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_PY-NAME4",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_PY-NAME1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_PY-NAME2",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_PY-NAME3",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_PY-NAME4",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "COUNTRY_CODE",
 
          "Значение": "GR_CURRENT_DATA->COUNTRY_CODE",
 
          "Тип": "ClassField"
 
        },
 
        {
 
          "Имя": "ADR_TEXT",
 
          "Значение": "GR_CURRENT_DATA->STREET",
 
          "Тип": "ClassField"
 
        },
 
        {
 
          "Имя": "ADR_TYPE",
 
          "Значение": "Юридический",
 
          "Тип": "String"
 
        },
 
        {
 
          "Имя": "POST_CODE",
 
          "Значение": "ADDR1_PY-POST_CODE1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "REGION_CODE",
 
          "Значение": "ADDR1_PY-REGION",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "CITY",
 
          "Значение": "ADDR1_PY-CITY1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "STREET",
 
          "Значение": "ADDR1_PY-STREET",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "HOUSE",
 
          "Значение": "ADDR1_PY-HOUSE_NUM1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "PHONE",
 
          "Значение": "ADDR1_PY-TEL_NUMBER",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "FAX",
 
          "Значение": "ADDR1_PY-FAX_NUMBER",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "EMAIL",
 
          "Значение": "",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "BANK_NAME",
 
          "Значение": "PY_BANK-NAME",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "BANK_BIK",
 
          "Значение": "PY_BANK-BIK",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "BANK_CORACC",
 
          "Значение": "GR_CURRENT_DATA->BANK_CORACC",
 
          "Тип": "ClassField"
 
        },
 
        {
 
          "Имя": "BANK_ACC",
 
          "Значение": "PY_BANK-ACC_NUM",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "PARAM_OLD",
 
          "Тип": "Param",
 
          "Значение": {
 
            "BANK_CITY": [
 
              {
 
                "Имя": "NAME",
 
                "Значение": "BANK_CITY",
 
                "Тип": "String"
 
              },
 
              {
 
                "Имя": "VALUE",
 
                "Значение": "GR_HIGHER_DATA->BANK_CITY",
 
                "Тип": "ClassField"
 
              }
 
            ]
 
          }
 
        }
 
      ],
 
      "Грузополучатель": [
 
        {
 
          "Имя": "ID",
 
          "Значение": "VBDKL-KUNWE",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "GET_KUNNR_BANK_BY_KUNNR",
 
          "Значение": "",
 
          "Тип": "Method",
 
          "Подтип": "/SBIS/CL_SAP_DATA"
 
        },
 
        {
 
          "Имя": "GET_KUNNR_BY_KUNNR",
 
          "Тип": "Method",
 
          "Подтип": "/SBIS/CL_SAP_DATA",
 
          "Значение": {
 
            "CLASS_PARAM": [
 
              {
 
                "Имя": "IV_NATION",
 
                "Значение": "VBDKL-SPRAS_VST",
 
                "Тип": "Field",
 
                "Подтип": "Export",
 
                "Формат": "AD_NATION"
 
              },
 
              {
 
                "Имя": "IV_SELECT_NATION_DATA",
 
                "Значение": "X",
 
                "Тип": "String",
 
                "Подтип": "Export",
 
                "Формат": "CHAR01"
 
              }
 
            ]
 
          }
 
        },
 
        {
 
          "Имя": "INN",
 
          "Значение": "H_DOC-CONSIGNEEINN",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "KPP",
 
          "Значение": "H_DOC-CONSIGNEEKPP",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKPO",
 
          "Значение": "H_DOC-CONSIGNEEOKPO",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKOPF",
 
          "Значение": "H_DOC-CONSIGNEEOKOPF",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "OKDP",
 
          "Значение": "",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_CO-NAME1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_CO-NAME2",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_CO-NAME3",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "NAME",
 
          "Значение": "ADDR1_CO-NAME4",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_CO-NAME1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_CO-NAME2",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_CO-NAME3",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "FULL_NAME",
 
          "Значение": "ADDR1_CO-NAME4",
 
          "Тип": "Concat_Field_AddLeftSpace",
 
          "Подтип": "FULL_NAME"
 
        },
 
        {
 
          "Имя": "COUNTRY_CODE",
 
          "Значение": "GR_CURRENT_DATA->COUNTRY_CODE",
 
          "Тип": "ClassField"
 
        },
 
        {
 
          "Имя": "ADR_TEXT",
 
          "Значение": "GR_CURRENT_DATA->STREET",
 
          "Тип": "ClassField"
 
        },
 
        {
 
          "Имя": "ADR_TYPE",
 
          "Значение": "Юридический",
 
          "Тип": "String"
 
        },
 
        {
 
          "Имя": "POST_CODE",
 
          "Значение": "ADDR1_CO-POST_CODE1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "CITY",
 
          "Значение": "ADDR1_CO-CITY1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "STREET",
 
          "Значение": "ADDR1_CO-STREET",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "REGION_CODE",
 
          "Значение": "ADDR1_CO-REGION",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "HOUSE",
 
          "Значение": "ADDR1_CO-HOUSE_NUM1",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "PHONE",
 
          "Значение": "ADDR1_CO-TEL_NUMBER",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "FAX",
 
          "Значение": "ADDR1_CO-FAX_NUMBER",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "EMAIL",
 
          "Значение": "",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "BANK_NAME",
 
          "Значение": "CO_BANK-NAME",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "BANK_BIK",
 
          "Значение": "CO_BANK-BIK",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "BANK_CORACC",
 
          "Значение": "GR_CURRENT_DATA->BANK_CORACC",
 
          "Тип": "ClassField"
 
        },
 
        {
 
          "Имя": "BANK_ACC",
 
          "Значение": "CO_BANK-ACC_NUM",
 
          "Тип": "Field"
 
        },
 
        {
 
          "Имя": "PARAM",
 
          "Тип": "Param",
 
          "Значение": {
 
            "BANK_CITY": [
 
              {
 
                "Имя": "NAME",
 
                "Значение": "BANK_CITY",
 
                "Тип": "String"
 
              },
 
              {
 
                "Имя": "VALUE",
 
                "Значение": "GR_HIGHER_DATA->BANK_CITY",
 
                "Тип": "ClassField"
 
              }
 
            ]
 
          }
 
        }
 
      ]
 
    }
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
Позиции документа отражаются в массиве ITEMS. В качестве значения передается ссылка на массив из программы печати ITEMS и маппинг его полей, к примеру:
 
<div style="border: 1px dashed;">
 
'''массив позиций ITEMS'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
"ITEMS": {
 
  "Тип": "Items",
 
  "Значение": {
 
    "ITEMS": [ //указание на массив ITEMS из программы печати
 
      {
 
        "Имя": "NUMBER",
 
        "Значение": "POSNUM", //маппинг полей структуры ITEMS в /SBIS/S_XML
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "NAME",
 
        "Значение": "ARKTX",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "ID",
 
        "Значение": "MATNR",
 
        "Тип": "ItemField_Matnr"
 
      },
 
      {
 
        "Имя": "PRICE",
 
        "Значение": "PRICE",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "AMOUNT",
 
        "Значение": "LFIMG",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "UNIT_NAME",
 
        "Значение": "MSEHI",
 
        "Тип": "ItemField_Unitlongname"
 
      },
 
      {
 
        "Имя": "UNIT_CODE",
 
        "Значение": "MSEHI",
 
        "Тип": "ItemField_Unitcode"
 
      },
 
      {
 
        "Имя": "SUM_TAX_FREE",
 
        "Значение": "NETWR",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "SUM",
 
        "Значение": "WRBTR",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "TAX_SUM",
 
        "Значение": "VAT",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "TAX_TYPE",
 
        "Значение": "процент",
 
        "Тип": "String"
 
      },
 
      {
 
        "Имя": "TAX_RATE",
 
        "Значение": "ST_VAT",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "EXCISE_SUM",
 
        "Значение": "",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "WEIGHT_NET",
 
        "Значение": "NTGEW",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "WEIGHT_GROSS",
 
        "Значение": "BRGEW",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "WEIGHT_UNIT_NAME",
 
        "Значение": "GEWEI",
 
        "Тип": "ItemField_Unitname"
 
      },
 
      {
 
        "Имя": "PACK_NAME",
 
        "Значение": "MAGRV",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "PACK_AMOUNT",
 
        "Значение": "PLACES",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "PACK_SIZE",
 
        "Значение": "IN1PL",
 
        "Тип": "ItemField"
 
      },
 
      {
 
        "Имя": "PARAM",
 
        "Тип": "Param",
 
        "Значение": {
 
          "НомерПУ": [
 
            {
 
              "Имя": "NAME",
 
              "Значение": "НомерПУ",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "VALUE",
 
              "Значение": "MATNR",
 
              "Тип": "ItemField"
 
            }
 
          ],
 
          "НаименованиеПУ": [
 
            {
 
              "Имя": "NAME",
 
              "Значение": "НаименованиеПУ",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "VALUE",
 
              "Значение": "ARKTX",
 
              "Тип": "ItemField"
 
            }
 
          ],
 
          "ДатаПоказаний": [
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ДатаПоказаний",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "VALUE",
 
              "Значение": "H_DOC-ERDAT",
 
              "Тип": "Field_Date"
 
            }
 
          ]
 
        }
 
      }
 
    ]
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
Массивы PRINT_PRINT и PRINT_SEND содержат параметры программы печати в режиме печати и в режиме формирования XML, соответственно.
 
<div style="border: 1px dashed;">
 
'''PRINT_SEND'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
"PRINT_SEND": {
 
  "Значение": [
 
    {
 
      "Имя": "print_program",
 
      "Значение": "J_3RV_DELIV_PDF"
 
    },
 
    {
 
      "Имя": "print_form",
 
      "Значение": "ENTRY"
 
    },
 
    {
 
      "Имя": "tnapr-sform",
 
      "Значение": "J_3RV_T12_PDF"
 
    },
 
    {
 
      "Имя": "nast-kappl",
 
      "Значение": "V2"
 
    },
 
    {
 
      "Имя": "nast-parvw",
 
      "Значение": "WE"
 
    },
 
    {
 
      "Имя": "nast-nacha",
 
      "Значение": "8"
 
    },
 
    {
 
      "Имя": "nast-kschl",
 
      "Значение": "LD00"
 
    },
 
    {
 
      "Имя": "nast-objtype",
 
      "Значение": "LIKP"
 
    },
 
    {
 
      "Имя": "nast-spras",
 
      "Значение": "R"
 
    }
 
  ]
 
}
 
</source>
 
</div>
 
</div>
 
<br>
 
<div style="border: 1px dashed;">
 
'''пример DO_DP_TOVTORGPR_1175010'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
{
 
  "ПолучениеДанных_Класс": {
 
    "Значение": "/SBIS/CL_SAP_DATA"
 
  },
 
  "ПолучениеДанных_Метод": {
 
    "Значение": "/SBIS/PRINT_NAST"
 
  },
 
  "ПолучениеДанных_XSLT": {
 
    "Значение": "/SBIS/DOC301"
 
  },
 
  "assign_program": {
 
    "Значение": "J_3RV_DELIV_PDF"
 
  },
 
  "ОтправительПакета_Роль": {
 
    "Значение": "Отправитель"
 
  },
 
  "ПолучательПакета_Роль": {
 
    "Значение": "Получатель"
 
  },
 
  "FILE": {
 
    "Файл1_Накладная": {
 
      "DOC_NAME": {
 
        "Значение": "Накладная"
 
      },
 
      "FILE_FORMAT_TYPE": {
 
        "Значение": "ЭДОНакл"
 
      },
 
      "FILE_FORMAT_SUBTYPE": {
 
        "Значение": "1175010"
 
      },
 
      "FILE_FORMAT_VERSION": {
 
        "Значение": "3.01"
 
      },
 
      "FILE_PROG_VERSION": {
 
        "Значение": "SAP NetConnector"
 
      },
 
      "FILE_ID_FORM": {
 
        "Значение": "1С"
 
      },
 
      "FILE_NAME": {
 
        "Значение": "DP_TOVTORGPR_"
 
      },
 
      "NAME": {
 
        "Значение": "Накладная"
 
      },
 
      "DATE": {
 
        "Значение": "H_DOC-WADAT",
 
        "Тип": "Field_Date"
 
      },
 
      "TIME": {
 
        "Значение": "00.00.00",
 
        "Тип": "String"
 
      },
 
      "ID": {
 
        "Значение": "H_DOC-VBELN",
 
        "Тип": "Field"
 
      },
 
      "NUMBER": {
 
        "Значение": "H_DOC-VBELN",
 
        "Тип": "Field"
 
      },
 
      "WAERS": {
 
        "Значение": "H_DOC-WAERK",
 
        "Тип": "Field_WaersToCode"
 
      },
 
      "SUM_TAX_FREE": {
 
        "Значение": "H_DOC-TOT_NETWR",
 
        "Тип": "Field"
 
      },
 
      "SUM": {
 
        "Значение": "H_DOC-TOT_SUM",
 
        "Тип": "Field"
 
      },
 
      "TAX_SUM": {
 
        "Значение": "H_DOC-TOT_VAT",
 
        "Тип": "Field"
 
      },
 
      "AMOUNT": {
 
        "Значение": "H_DOC-TOT_QUANT",
 
        "Тип": "Field"
 
      },
 
      "WEIGHT_GROSS": {
 
        "Значение": "H_DOC-BRGEW",
 
        "Тип": "Field"
 
      },
 
      "WEIGHT_NET": {
 
        "Значение": "H_DOC-NTGEW",
 
        "Тип": "Field"
 
      },
 
      "WEIGHT_UNIT_NAME": {
 
        "Значение": "H_DOC-GEWEI",
 
        "Тип": "Field_Unitname"
 
      },
 
      "CHECK_ITEMS_EMPTY": {
 
        "Значение": "X",
 
        "Тип": "String"
 
      },
 
      "PARAM": {
 
        "Тип": "Param",
 
        "Значение": {
 
          "Отправитель_Банковские_Данные": [
 
            {
 
              "Имя": "NAME",
 
              "Значение": "Отправитель_Банковские_Данные",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "VALUE",
 
              "Значение": "H_DOC-WAERK",
 
              "Тип": "Field"
 
            }
 
          ],
 
          "Получатель_Банковские_Данные": [
 
            {
 
              "Имя": "NAME",
 
              "Значение": "Получатель_Банковские_Данные",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "VALUE",
 
              "Значение": "H_DOC-ERDAT",
 
              "Тип": "Field"
 
            }
 
          ],
 
          "ИнфПередТабл": [
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ИнфПередТабл",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "VALUE",
 
              "Значение": "ИнфПередТабл N 00 от 01.01.1999 Контракт 123 от 01.01.2017",
 
              "Тип": "String"
 
            }
 
          ],
 
          "ИнфПослеТабл": [
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ИнфПослеТабл",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "VALUE",
 
              "Значение": "ИнфПослеТабл N 00 от 01.01.1999",
 
              "Тип": "String"
 
            }
 
          ]
 
        }
 
      },
 
      "FACE": {
 
        "Тип": "Face",
 
        "Значение": {
 
          "Отправитель": [
 
            {
 
              "Имя": "ID",
 
              "Значение": "VBDKL-BUKRS",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "GET_BUKRS_BY_BUKRS",
 
              "Значение": "",
 
              "Тип": "Method",
 
              "Подтип": "/SBIS/CL_SAP_DATA"
 
            },
 
            {
 
              "Имя": "GET_BUKRS_BANK_BY_BUKRS",
 
              "Значение": "",
 
              "Тип": "Method",
 
              "Подтип": "/SBIS/CL_SAP_DATA"
 
            },
 
            {
 
              "Имя": "INN",
 
              "Значение": "H_DOC-SUPPLIERINN",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "KPP",
 
              "Значение": "H_DOC-SUPPLIERKPP",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKPO",
 
              "Значение": "H_DOC-SUPPLIEROKPO",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKOPF",
 
              "Значение": "H_DOC-SUPPLIEROKOPF",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKDP",
 
              "Значение": "",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_SP-NAME1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_SP-NAME2",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_SP-NAME3",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_SP-NAME4",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_SP-NAME1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_SP-NAME2",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_SP-NAME3",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_SP-NAME4",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "COUNTRY_CODE",
 
              "Значение": "GR_CURRENT_DATA->COUNTRY_CODE",
 
              "Тип": "ClassField"
 
            },
 
            {
 
              "Имя": "ADR_TEXT",
 
              "Значение": "",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "ADR_TYPE",
 
              "Значение": "Юридический",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "POST_CODE",
 
              "Значение": "ADDR1_SP-POST_CODE1",
 
              "Тип": "Concat_Field",
 
              "Подтип": "ADR_TEXT"
 
            },
 
            {
 
              "Имя": "CITY",
 
              "Значение": "ADDR1_SP-CITY1",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "ADR_TEXT"
 
            },
 
            {
 
              "Имя": "STREET",
 
              "Значение": "ADDR1_SP-STREET",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "ADR_TEXT"
 
            },
 
            {
 
              "Имя": "HOUSE",
 
              "Значение": "ADDR1_SP-HOUSE_NUM1",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "ADR_TEXT"
 
            },
 
            {
 
              "Имя": "PHONE",
 
              "Значение": "ADDR1_SP-TEL_NUMBER",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "FAX",
 
              "Значение": "ADDR1_SP-FAX_NUMBER",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "EMAIL",
 
              "Значение": "",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "BANK_NAME",
 
              "Значение": "SP_BANK-NAME",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "BANK_BIK",
 
              "Значение": "SP_BANK-BIK",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "BANK_CORACC",
 
              "Значение": "GR_CURRENT_DATA->BANK_CORACC",
 
              "Тип": "ClassField"
 
            },
 
            {
 
              "Имя": "BANK_ACC",
 
              "Значение": "SP_BANK-ACC_NUM",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "PARAM",
 
              "Тип": "Param",
 
              "Значение": {
 
                "BANK_CITY": [
 
                  {
 
                    "Имя": "NAME",
 
                    "Значение": "BANK_CITY",
 
                    "Тип": "String"
 
                  },
 
                  {
 
                    "Имя": "VALUE",
 
                    "Значение": "GR_HIGHER_DATA->BANK_CITY",
 
                    "Тип": "ClassField"
 
                  }
 
                ]
 
              }
 
            }
 
          ],
 
          "Грузоотправитель": [
 
            {
 
              "Имя": "ID",
 
              "Значение": "VBDKL-BUKRS",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "GET_BUKRS_BY_BUKRS",
 
              "Значение": "",
 
              "Тип": "Method",
 
              "Подтип": "/SBIS/CL_SAP_DATA"
 
            },
 
            {
 
              "Имя": "GET_BUKRS_BANK_BY_BUKRS",
 
              "Значение": "",
 
              "Тип": "Method",
 
              "Подтип": "/SBIS/CL_SAP_DATA"
 
            },
 
            {
 
              "Имя": "INN",
 
              "Значение": "H_DOC-CC_INN",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "KPP",
 
              "Значение": "H_DOC-CC_KPP",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKPO",
 
              "Значение": "H_DOC-OKPO",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKOPF",
 
              "Значение": "H_DOC-CC_OKOPF",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKDP",
 
              "Значение": "H_DOC-OKDP",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_CC-NAME1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_CC-NAME2",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_CC-NAME3",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_CC-NAME4",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_CC-NAME1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_CC-NAME2",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_CC-NAME3",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_CC-NAME4",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "COUNTRY_CODE",
 
              "Значение": "GR_CURRENT_DATA->COUNTRY_CODE",
 
              "Тип": "ClassField"
 
            },
 
            {
 
              "Имя": "ADR_TEXT",
 
              "Значение": "GR_CURRENT_DATA->STREET",
 
              "Тип": "ClassField"
 
            },
 
            {
 
              "Имя": "ADR_TYPE",
 
              "Значение": "Юридический",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "POST_CODE",
 
              "Значение": "ADDR1_CC-POST_CODE",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "REGION_CODE",
 
              "Значение": "ADDR1_CC-REGION",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "CITY",
 
              "Значение": "ADDR1_CC-CITY1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "STREET",
 
              "Значение": "ADDR1_CC-STREET",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "HOUSE",
 
              "Значение": "ADDR1_CC-HOUSE_NUM1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "PHONE",
 
              "Значение": "ADDR1_CC-TEL_NUMBER",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "FAX",
 
              "Значение": "ADDR1_CC-FAX_NUMBER",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "EMAIL",
 
              "Значение": "",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "SUBDIVISION_ID",
 
              "Значение": "012345",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "SUBDIVISION_NAME",
 
              "Значение": "Склад в Мытищах",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "BANK_NAME",
 
              "Значение": "CC_BANK-NAME",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "BANK_BIK",
 
              "Значение": "CC_BANK-BIK",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "BANK_CORACC",
 
              "Значение": "GR_CURRENT_DATA->BANK_CORACC",
 
              "Тип": "ClassField"
 
            },
 
            {
 
              "Имя": "BANK_ACC",
 
              "Значение": "CC_BANK-ACC_NUM",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "PARAM",
 
              "Тип": "Param",
 
              "Значение": {
 
                "BANK_CITY": [
 
                  {
 
                    "Имя": "NAME",
 
                    "Значение": "BANK_CITY",
 
                    "Тип": "String"
 
                  },
 
                  {
 
                    "Имя": "VALUE",
 
                    "Значение": "GR_HIGHER_DATA->BANK_CITY",
 
                    "Тип": "ClassField"
 
                  }
 
                ]
 
              }
 
            }
 
          ],
 
          "Получатель": [
 
            {
 
              "Имя": "ID",
 
              "Значение": "VBDKL-KUNNR",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "GET_KUNNR_BANK_BY_KUNNR",
 
              "Значение": "",
 
              "Тип": "Method",
 
              "Подтип": "/SBIS/CL_SAP_DATA"
 
            },
 
            {
 
              "Имя": "GET_KUNNR_BY_KUNNR",
 
              "Значение": "",
 
              "Тип": "MethodOLDOLDOLDOLD",
 
              "Подтип": "/SBIS/CL_SAP_DATA"
 
            },
 
            {
 
              "Имя": "GET_KUNNR_BY_KUNNR",
 
              "Тип": "Method",
 
              "Подтип": "/SBIS/CL_SAP_DATA",
 
              "Значение": {
 
                "CLASS_PARAM": [
 
                  {
 
                    "Имя": "IV_NATION",
 
                    "Значение": "VBDKL-SPRAS_VST",
 
                    "Тип": "Field",
 
                    "Подтип": "Export",
 
                    "Формат": "AD_NATION"
 
                  },
 
                  {
 
                    "Имя": "IV_SELECT_NATION_DATA",
 
                    "Значение": "X",
 
                    "Тип": "String",
 
                    "Подтип": "Export",
 
                    "Формат": "CHAR01"
 
                  }
 
                ]
 
              }
 
            },
 
            {
 
              "Имя": "INN",
 
              "Значение": "H_DOC-PAYERINN",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "KPP",
 
              "Значение": "H_DOC-PAYERKPP",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKPO",
 
              "Значение": "H_DOC-PAYEROKPO",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKOPF",
 
              "Значение": "H_DOC-PAYEROKOPF",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKDP",
 
              "Значение": "",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_PY-NAME1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_PY-NAME2",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_PY-NAME3",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_PY-NAME4",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_PY-NAME1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_PY-NAME2",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_PY-NAME3",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_PY-NAME4",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "COUNTRY_CODE",
 
              "Значение": "GR_CURRENT_DATA->COUNTRY_CODE",
 
              "Тип": "ClassField"
 
            },
 
            {
 
              "Имя": "ADR_TEXT",
 
              "Значение": "GR_CURRENT_DATA->STREET",
 
              "Тип": "ClassField"
 
            },
 
            {
 
              "Имя": "ADR_TYPE",
 
              "Значение": "Юридический",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "POST_CODE",
 
              "Значение": "ADDR1_PY-POST_CODE1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "REGION_CODE",
 
              "Значение": "ADDR1_PY-REGION",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "CITY",
 
              "Значение": "ADDR1_PY-CITY1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "STREET",
 
              "Значение": "ADDR1_PY-STREET",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "HOUSE",
 
              "Значение": "ADDR1_PY-HOUSE_NUM1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "PHONE",
 
              "Значение": "ADDR1_PY-TEL_NUMBER",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "FAX",
 
              "Значение": "ADDR1_PY-FAX_NUMBER",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "EMAIL",
 
              "Значение": "",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "BANK_NAME",
 
              "Значение": "PY_BANK-NAME",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "BANK_BIK",
 
              "Значение": "PY_BANK-BIK",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "BANK_CORACC",
 
              "Значение": "GR_CURRENT_DATA->BANK_CORACC",
 
              "Тип": "ClassField"
 
            },
 
            {
 
              "Имя": "BANK_ACC",
 
              "Значение": "PY_BANK-ACC_NUM",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "PARAM_OLD",
 
              "Тип": "Param",
 
              "Значение": {
 
                "BANK_CITY": [
 
                  {
 
                    "Имя": "NAME",
 
                    "Значение": "BANK_CITY",
 
                    "Тип": "String"
 
                  },
 
                  {
 
                    "Имя": "VALUE",
 
                    "Значение": "GR_HIGHER_DATA->BANK_CITY",
 
                    "Тип": "ClassField"
 
                  }
 
                ]
 
              }
 
            }
 
          ],
 
          "Грузополучатель": [
 
            {
 
              "Имя": "ID",
 
              "Значение": "VBDKL-KUNWE",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "GET_KUNNR_BANK_BY_KUNNR",
 
              "Значение": "",
 
              "Тип": "Method",
 
              "Подтип": "/SBIS/CL_SAP_DATA"
 
            },
 
            {
 
              "Имя": "GET_KUNNR_BY_KUNNR",
 
              "Значение": "",
 
              "Тип": "MethodOLDOLDOLDOLDOLDOLD",
 
              "Подтип": "/SBIS/CL_SAP_DATA"
 
            },
 
            {
 
              "Имя": "GET_KUNNR_BY_KUNNR",
 
              "Тип": "Method",
 
              "Подтип": "/SBIS/CL_SAP_DATA",
 
              "Значение": {
 
                "CLASS_PARAM": [
 
                  {
 
                    "Имя": "IV_NATION",
 
                    "Значение": "VBDKL-SPRAS_VST",
 
                    "Тип": "Field",
 
                    "Подтип": "Export",
 
                    "Формат": "AD_NATION"
 
                  },
 
                  {
 
                    "Имя": "IV_SELECT_NATION_DATA",
 
                    "Значение": "X",
 
                    "Тип": "String",
 
                    "Подтип": "Export",
 
                    "Формат": "CHAR01"
 
                  }
 
                ]
 
              }
 
            },
 
            {
 
              "Имя": "INN",
 
              "Значение": "H_DOC-CONSIGNEEINN",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "KPP",
 
              "Значение": "H_DOC-CONSIGNEEKPP",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKPO",
 
              "Значение": "H_DOC-CONSIGNEEOKPO",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKOPF",
 
              "Значение": "H_DOC-CONSIGNEEOKOPF",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "OKDP",
 
              "Значение": "",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_CO-NAME1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_CO-NAME2",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_CO-NAME3",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ADDR1_CO-NAME4",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_CO-NAME1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_CO-NAME2",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_CO-NAME3",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "FULL_NAME",
 
              "Значение": "ADDR1_CO-NAME4",
 
              "Тип": "Concat_Field_AddLeftSpace",
 
              "Подтип": "FULL_NAME"
 
            },
 
            {
 
              "Имя": "COUNTRY_CODE",
 
              "Значение": "GR_CURRENT_DATA->COUNTRY_CODE",
 
              "Тип": "ClassField"
 
            },
 
            {
 
              "Имя": "ADR_TEXT",
 
              "Значение": "GR_CURRENT_DATA->STREET",
 
              "Тип": "ClassField"
 
            },
 
            {
 
              "Имя": "ADR_TYPE",
 
              "Значение": "Юридический",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "POST_CODE",
 
              "Значение": "ADDR1_CO-POST_CODE1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "CITY",
 
              "Значение": "ADDR1_CO-CITY1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "STREET",
 
              "Значение": "ADDR1_CO-STREET",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "REGION_CODE",
 
              "Значение": "ADDR1_CO-REGION",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "HOUSE",
 
              "Значение": "ADDR1_CO-HOUSE_NUM1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "PHONE",
 
              "Значение": "ADDR1_CO-TEL_NUMBER",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "FAX",
 
              "Значение": "ADDR1_CO-FAX_NUMBER",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "EMAIL",
 
              "Значение": "",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "BANK_NAME",
 
              "Значение": "CO_BANK-NAME",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "BANK_BIK",
 
              "Значение": "CO_BANK-BIK",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "BANK_CORACC",
 
              "Значение": "GR_CURRENT_DATA->BANK_CORACC",
 
              "Тип": "ClassField"
 
            },
 
            {
 
              "Имя": "BANK_ACC",
 
              "Значение": "CO_BANK-ACC_NUM",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "PARAM",
 
              "Тип": "Param",
 
              "Значение": {
 
                "BANK_CITY": [
 
                  {
 
                    "Имя": "NAME",
 
                    "Значение": "BANK_CITY",
 
                    "Тип": "String"
 
                  },
 
                  {
 
                    "Имя": "VALUE",
 
                    "Значение": "GR_HIGHER_DATA->BANK_CITY",
 
                    "Тип": "ClassField"
 
                  }
 
                ]
 
              }
 
            }
 
          ]
 
        }
 
      },
 
      "LINKS": {
 
        "Тип": "Links",
 
        "Значение": {
 
          "Заказ": [
 
            {
 
              "Имя": "NAME",
 
              "Значение": "H_DOC-GROUND",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "TYPE",
 
              "Значение": "ЗаказВх",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "NUMBER",
 
              "Значение": "H_DOC-TRANSP_NUM1",
 
              "Тип": "Field"
 
            },
 
            {
 
              "Имя": "DATE",
 
              "Значение": "H_DOC-TRANSP_DATE1",
 
              "Тип": "Field_Date"
 
            }
 
          ],
 
          "ТранНакл": [
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ТранНакл",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "TYPE",
 
              "Значение": "",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "NUMBER",
 
              "Значение": "H_DOC-TRANSP_NUM2",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "DATE",
 
              "Значение": "01.01.1900",
 
              "Тип": "String"
 
            }
 
          ]
 
        }
 
      },
 
      "ITEMS": {
 
        "Тип": "Items",
 
        "Значение": {
 
          "ITEMS": [
 
            {
 
              "Имя": "NUMBER",
 
              "Значение": "POSNUM",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "NAME",
 
              "Значение": "ARKTX",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "ID",
 
              "Значение": "MATNR",
 
              "Тип": "ItemField_Matnr"
 
            },
 
            {
 
              "Имя": "PRICE",
 
              "Значение": "PRICE",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "AMOUNT",
 
              "Значение": "LFIMG",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "UNIT_NAME",
 
              "Значение": "MSEHI",
 
              "Тип": "ItemField_Unitlongname"
 
            },
 
            {
 
              "Имя": "UNIT_CODE",
 
              "Значение": "MSEHI",
 
              "Тип": "ItemField_Unitcode"
 
            },
 
            {
 
              "Имя": "SUM_TAX_FREE",
 
              "Значение": "NETWR",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "SUM",
 
              "Значение": "WRBTR",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "TAX_SUM",
 
              "Значение": "VAT",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "TAX_TYPE",
 
              "Значение": "процент",
 
              "Тип": "String"
 
            },
 
            {
 
              "Имя": "TAX_RATE",
 
              "Значение": "ST_VAT",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "EXCISE_SUM",
 
              "Значение": "",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "WEIGHT_NET",
 
              "Значение": "NTGEW",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "WEIGHT_GROSS",
 
              "Значение": "BRGEW",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "WEIGHT_UNIT_NAME",
 
              "Значение": "GEWEI",
 
              "Тип": "ItemField_Unitname"
 
            },
 
            {
 
              "Имя": "PACK_NAME",
 
              "Значение": "MAGRV",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "PACK_AMOUNT",
 
              "Значение": "PLACES",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "PACK_SIZE",
 
              "Значение": "IN1PL",
 
              "Тип": "ItemField"
 
            },
 
            {
 
              "Имя": "PARAM",
 
              "Тип": "Param",
 
              "Значение": {
 
                "НомерПУ": [
 
                  {
 
                    "Имя": "NAME",
 
                    "Значение": "НомерПУ",
 
                    "Тип": "String"
 
                  },
 
                  {
 
                    "Имя": "VALUE",
 
                    "Значение": "MATNR",
 
                    "Тип": "ItemField"
 
                  }
 
                ],
 
                "НаименованиеПУ": [
 
                  {
 
                    "Имя": "NAME",
 
                    "Значение": "НаименованиеПУ",
 
                    "Тип": "String"
 
                  },
 
                  {
 
                    "Имя": "VALUE",
 
                    "Значение": "ARKTX",
 
                    "Тип": "ItemField"
 
                  }
 
                ],
 
                "ДатаПоказаний": [
 
                  {
 
                    "Имя": "NAME",
 
                    "Значение": "ДатаПоказаний",
 
                    "Тип": "String"
 
                  },
 
                  {
 
                    "Имя": "VALUE",
 
                    "Значение": "H_DOC-ERDAT",
 
                    "Тип": "Field_Date"
 
                  }
 
                ]
 
              }
 
            }
 
          ]
 
        }
 
      }
 
    }
 
  },
 
  "PRINT_PRINT": {
 
    "Значение": [
 
      {
 
        "Имя": "print_program",
 
        "Значение": "J_3RV_DELIV_PDF"
 
      },
 
      {
 
        "Имя": "print_form",
 
        "Значение": "ENTRY"
 
      },
 
      {
 
        "Имя": "tnapr-sform",
 
        "Значение": "J_3RV_T12_PDF"
 
      },
 
      {
 
        "Имя": "nast-kappl",
 
        "Значение": "V2"
 
      },
 
      {
 
        "Имя": "nast-parvw",
 
        "Значение": "WE"
 
      },
 
      {
 
        "Имя": "nast-nacha",
 
        "Значение": "1"
 
      },
 
      {
 
        "Имя": "nast-kschl",
 
        "Значение": "LD00"
 
      },
 
      {
 
        "Имя": "nast-objtype",
 
        "Значение": "LIKP"
 
      },
 
      {
 
        "Имя": "nast-spras",
 
        "Значение": "R"
 
      },
 
      {
 
        "Имя": "nast-dimme",
 
        "Значение": "X"
 
      }
 
    ]
 
  },
 
  "PRINT_SEND": {
 
    "Значение": [
 
      {
 
        "Имя": "print_program",
 
        "Значение": "J_3RV_DELIV_PDF"
 
      },
 
      {
 
        "Имя": "print_form",
 
        "Значение": "ENTRY"
 
      },
 
      {
 
        "Имя": "tnapr-sform",
 
        "Значение": "J_3RV_T12_PDF"
 
      },
 
      {
 
        "Имя": "nast-kappl",
 
        "Значение": "V2"
 
      },
 
      {
 
        "Имя": "nast-parvw",
 
        "Значение": "WE"
 
      },
 
      {
 
        "Имя": "nast-nacha",
 
        "Значение": "8"
 
      },
 
      {
 
        "Имя": "nast-kschl",
 
        "Значение": "LD00"
 
      },
 
      {
 
        "Имя": "nast-objtype",
 
        "Значение": "LIKP"
 
      },
 
      {
 
        "Имя": "nast-spras",
 
        "Значение": "R"
 
      }
 
    ]
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
===Настройки загрузки документов===
 
'''Алгоритм работы:'''
 
# На основании входящего документа XML формата ФНС (5.01) преобразовать его во внутренний формат 3.01
 
# Из внутреннего формата заполнить универсальную структуру документа /SBIS/S_API2_PACKET
 
# На основании данных структуры /SBIS/S_API2_PACKET и маппинга заполнить необходимые входные структуры для BAPI или BATCH INPUT
 
# Вызвать метод создания документа
 
 
'''Задача:''' на основании входящей накладной создать в SAP заказ на закупку.
 
 
'''Этапы решения: '''
 
# Преобразовать входящую XML в виде ABAP структуры
 
# Разобрать ABAP структуру для подготовки данных для вызова BAPI или BATCH INPUT
 
## При нехватке данных по номенклатуре, вызвать экран сопоставления номенклатуры
 
# Вызвать BAPI или BATCH INPUT с подготовленными данными
 
 
Файлы настройки загрузки начинаются с префикса 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",
 
        "Значение": []
 
      },
 
      {
 
        "Имя": "MENU_CREATE_GOODS_RECEIPT_BAPI",
 
        "Значение": []
 
      }
 
    ]
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
Основные параметры для создаваемых документов на примере BAPI:
 
#MENU_TEXT – текст, отображаемый в GUI
 
#DOC_TYPE – тип документа из справочника типов документа
 
#UPLOAD_DATA_CLASS_NAME – класс загрузки данных, обычно "/SBIS/CL_CREATE_SAP_DOCUMENTS"
 
#UPLOAD_DATA_METHOD_NAME – метод загрузки данных, для BAPI "CREATE_BAPI_DOC"
 
#MISSED_FIELDS_FUNCTION_NAME – модуль, вызывающий экран для ввода доп. данных, например, для сопоставления номенклатуры
 
#FACE_ROLE_TO_GET_BUKRS – указатель на роль, в которой содержатся данные для БЕ
 
#FACE_ROLE_TO_GET_LIFNR – указатель на роль, в которой содержатся данные поставщика
 
#TRANSACTION_NAME – транзакция, BAPI используемые для создания документа, "BAPI_PO_CREATE1"
 
#POSITION_NUMBER_INCREASE – инкремент позиции
 
#RESULT – поле с результатом выполнения операции, при успешном выполнении BAPI номер созданного заказа возвращается в EXPPURCHASEORDER
 
#BAPI – содержит структуры для маппинга входных данных для используемого BAPI метода
 
<div style="border: 1px dashed;">
 
'''пример заполнения основных параметров'''
 
<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_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" //наименование транзакции (для BATCH INPUT) или ФМ для BAPI
 
          },
 
          {
 
            "Имя": "POSITION_NUMBER_INCREASE",
 
            "Значение": "10" //инремент позиции
 
          },
 
          {
 
            "Имя": "RESULT", //в каком поле вернется результат
 
            "Значение": [
 
              {
 
                "Имя": "BELNR",
 
                "Тип": "BAPIMEPOHEADER-PO_NUMBER",
 
                "Значение": "EXPPURCHASEORDER"
 
              }
 
            ]
 
          },
 
          {
 
            "Имя": "BAPI",
 
            "Тип": "",
 
            "Подтип": "",
 
            "Значение": []
 
          }
 
        ]
 
      }
 
    ]
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
 
В нашем примере используются ФМ BAPI_PO_CREATE1 с входными структуры POHEADER, POHEADERX, NO_PRICE_FROM_PO, POITEM, POITEMX, POSCHEDULE, POSCHEDULEX и выходными EXPPURCHASEORDER, RETURN.
 
Для каждой структуры требуется сделать маппинг, например, для части полей POHEADER:
 
<source lang=JSON>
 
{
 
  "Имя": "COMP_CODE", //номер БЕ, используется внутренняя глобальная структура IR_INPUT_DATA
 
  "Значение": "IR_INPUT_DATA->BUKRS",
 
  "Тип": "Field",
 
  "Подтип": "Export",
 
  "Формат": ""
 
},
 
{
 
  "Имя": "DOC_TYPE",
 
  "Значение": "NB", //тип документа
 
  "Тип": "String",
 
  "Подтип": "Export",
 
  "Формат": ""
 
},
 
{
 
  "Имя": "VENDOR", //поставщик
 
  "Значение": "IR_INPUT_DATA->LIFNR",
 
  "Тип": "Field",
 
  "Подтип": "Export",
 
  "Формат": ""
 
}
 
</source>
 
И далее по аналогии:
 
<div style="border: 1px dashed;">
 
'''пример заполнения массива BAPI'''
 
<div class="mw-collapsible mw-collapsed" style="overflow: hidden;">
 
<br>
 
<source lang=JSON>
 
{
 
            "Имя": "BAPI",
 
            "Тип": "",
 
            "Подтип": "",
 
            "Значение": [
 
              {
 
                "Имя": "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>
 
 
В итоге готовый файл будет выглядеть так:
 
<div style="border: 1px dashed;">
 
'''пример UI_ЭДОНакл_1175010_5_01'''
 
<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",
 
        "Значение": [
 
          {
 
            "Имя": "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"
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_CATTMODE",
 
            "Значение": " "
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_DEFSIZE",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_RACOMMIT",
 
            "Значение": "X"
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_NOBINPT",
 
            "Значение": " "
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_NOBIEND",
 
            "Значение": " "
 
          },
 
          {
 
            "Имя": "TRANSACTION_NAME",
 
            "Значение": "ME21N"
 
          },
 
          {
 
            "Имя": "POSITION_NUMBER_INCREASE",
 
            "Значение": "10"
 
          },
 
          {
 
            "Имя": "RESULT",
 
            "Значение": [
 
              {
 
                "Имя": "MSGTYP_MSGID_MSGNR",
 
                "Значение": "S|06|017|MSGV2"
 
              },
 
              {
 
                "Имя": "MSGTYP_MSGID_MSGNR",
 
                "Значение": "S|MEPO|013|MSGV2"
 
              }
 
            ]
 
          },
 
          {
 
            "Имя": "BATCH",
 
            "Тип": "",
 
            "Подтип": "",
 
            "Значение": [
 
              {
 
                "Имя": "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",
 
                    "Формат": ""
 
                  }
 
                ]
 
              }
 
            ]
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "MENU_CREATE_GOODS_RECEIPT_BATCH",
 
        "Значение": [
 
          {
 
            "Имя": "DEFAULT",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "MENU_TEXT",
 
            "Значение": "Создать Накладную (ПакВвод)"
 
          },
 
          {
 
            "Имя": "DOC_TYPE",
 
            "Значение": "IJ"
 
          },
 
          {
 
            "Имя": "UPLOAD_DATA_CLASS_NAME",
 
            "Значение": "/SBIS/CL_CREATE_SAP_DOCUMENTS"
 
          },
 
          {
 
            "Имя": "UPLOAD_DATA_METHOD_NAME",
 
            "Значение": "CREATE_BATCH_DOC"
 
          },
 
          {
 
            "Имя": "MISSED_FIELDS_FUNCTION_NAME",
 
            "Значение": "/SBIS/FM_CREATE_BATCH_RCPT",
 
            "Тип": "String"
 
          },
 
          {
 
            "Имя": "FACE_ROLE_TO_GET_BUKRS",
 
            "Значение": "Получатель"
 
          },
 
          {
 
            "Имя": "FACE_ROLE_TO_GET_LIFNR",
 
            "Значение": "Отправитель"
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_DISMODE",
 
            "Значение": "E"
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_UPDMODE",
 
            "Значение": "S"
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_CATTMODE",
 
            "Значение": " "
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_DEFSIZE",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_RACOMMIT",
 
            "Значение": "X"
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_NOBINPT",
 
            "Значение": " "
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_NOBIEND",
 
            "Значение": " "
 
          },
 
          {
 
            "Имя": "TRANSACTION_NAME",
 
            "Значение": "/SBIS/MIGO_DIALOG"
 
          },
 
          {
 
            "Имя": "POSITION_NUMBER_INCREASE",
 
            "Значение": "1"
 
          },
 
          {
 
            "Имя": "RESULT",
 
            "Значение": [
 
              {
 
                "Имя": "MSGTYP_MSGID_MSGNR",
 
                "Значение": "S|MIGO|012|MSGV1"
 
              }
 
            ]
 
          },
 
          {
 
            "Имя": "BATCH",
 
            "Тип": "",
 
            "Подтип": "",
 
            "Значение": [
 
              {
 
                "Имя": "HEADER",
 
                "Тип": "Header",
 
                "Значение": [
 
                  {
 
                    "Имя": "/SBIS/MIGO_DIALOG",
 
                    "Значение": "1000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "=ONLI",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "P_EBELN",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "P_ACTION",
 
                    "Значение": "A01",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "P_REFDOC",
 
                    "Значение": "R01",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "P_BWART",
 
                    "Значение": "101",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "P_EBELN",
 
                    "Значение": "IR_DATA->EBELN",
 
                    "Тип": "Field",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "P_MBLNR",
 
                    "Значение": "",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "SAPLMIGO",
 
                    "Значение": "0001",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "=MIGO_OK_HEADER_OPEN",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "GODEFAULT_TV-BWART",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "SAPLMIGO",
 
                    "Значение": "0001",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "=OK_GO",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "GODEFAULT_TV-BWART",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "GOHEAD-BLDAT",
 
                    "Значение": "IR_DATA->DATE",
 
                    "Тип": "Field",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "GOHEAD-BUDAT",
 
                    "Значение": "SY-DATUM",
 
                    "Тип": "Field",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": "DATE"
 
                  },
 
                  {
 
                    "Имя": "GOHEAD-LFSNR",
 
                    "Значение": "IR_DATA->NUMBER",
 
                    "Тип": "Field",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "GOHEAD-FRBNR",
 
                    "Значение": "",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "GOHEAD-BKTXT",
 
                    "Значение": "",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  }
 
                ]
 
              },
 
              {
 
                "Имя": "ITEMS",
 
                "Тип": "Items",
 
                "Значение": {
 
                  "ITEMS": [
 
                    {
 
                      "Имя": "SAPLMIGO",
 
                      "Значение": "0001",
 
                      "Тип": "String",
 
                      "Подтип": "Bdcdynpro",
 
                      "Формат": ""
 
                    },
 
                    {
 
                      "Имя": "BDC_OKCODE",
 
                      "Значение": "=MIGO_OK_LOCATE",
 
                      "Тип": "String",
 
                      "Подтип": "Bdcfield",
 
                      "Формат": ""
 
                    },
 
                    {
 
                      "Имя": "BDC_CURSOR",
 
                      "Значение": "GODYNPRO-DETAIL_ZEILE",
 
                      "Тип": "String",
 
                      "Подтип": "Bdcfield",
 
                      "Формат": ""
 
                    },
 
                    {
 
                      "Имя": "GODYNPRO-DETAIL_ZEILE",
 
                      "Значение": "GV_ITEMS_POS_C",
 
                      "Тип": "ClassField",
 
                      "Подтип": "Bdcfield",
 
                      "Формат": ""
 
                    },
 
                    {
 
                      "Имя": "SAPLMIGO",
 
                      "Значение": "0001",
 
                      "Тип": "String",
 
                      "Подтип": "Bdcdynpro",
 
                      "Формат": ""
 
                    },
 
                    {
 
                      "Имя": "BDC_OKCODE",
 
                      "Значение": "=OK_GO",
 
                      "Тип": "String",
 
                      "Подтип": "Bdcfield",
 
                      "Формат": ""
 
                    },
 
                    {
 
                      "Имя": "BDC_CURSOR",
 
                      "Значение": "GODYNPRO-DETAIL_ZEILE",
 
                      "Тип": "String",
 
                      "Подтип": "Bdcfield",
 
                      "Формат": ""
 
                    },
 
                    {
 
                      "Имя": "GODYNPRO-DETAIL_TAKE",
 
                      "Значение": "X",
 
                      "Тип": "String",
 
                      "Подтип": "Bdcfield",
 
                      "Формат": ""
 
                    }
 
                  ]
 
                }
 
              },
 
              {
 
                "Имя": "GO_TO_FIRST_ITEM",
 
                "Тип": "Header",
 
                "Значение": [
 
                  {
 
                    "Имя": "SAPLMIGO",
 
                    "Значение": "0001",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "=MIGO_OK_LOCATE",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "GODYNPRO-DETAIL_ZEILE",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "GODYNPRO-DETAIL_ZEILE",
 
                    "Значение": "  1",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  }
 
                ]
 
              }
 
            ]
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "MENU_CREATE_INCOMING_INVOICE_BATCH",
 
        "Значение": [
 
          {
 
            "Имя": "DEFAULT",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "MENU_TEXT",
 
            "Значение": "Создать Счет-фактуру (ПакВвод)"
 
          },
 
          {
 
            "Имя": "DOC_TYPE",
 
            "Значение": "IM"
 
          },
 
          {
 
            "Имя": "UPLOAD_DATA_CLASS_NAME",
 
            "Значение": "/SBIS/CL_CREATE_SAP_DOCUMENTS"
 
          },
 
          {
 
            "Имя": "UPLOAD_DATA_METHOD_NAME",
 
            "Значение": "CREATE_BATCH_DOC"
 
          },
 
          {
 
            "Имя": "MISSED_FIELDS_FUNCTION_NAME",
 
            "Значение": "/SBIS/FM_CREATE_BATCH_INVOICE",
 
            "Тип": "String"
 
          },
 
          {
 
            "Имя": "FACE_ROLE_TO_GET_BUKRS",
 
            "Значение": "Получатель"
 
          },
 
          {
 
            "Имя": "FACE_ROLE_TO_GET_LIFNR",
 
            "Значение": "Отправитель"
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_DISMODE",
 
            "Значение": "E"
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_UPDMODE",
 
            "Значение": "S"
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_CATTMODE",
 
            "Значение": " "
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_DEFSIZE",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_RACOMMIT",
 
            "Значение": "X"
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_NOBINPT",
 
            "Значение": " "
 
          },
 
          {
 
            "Имя": "CTU_PARAMS_NOBIEND",
 
            "Значение": " "
 
          },
 
          {
 
            "Имя": "TRANSACTION_NAME",
 
            "Значение": "MIR7"
 
          },
 
          {
 
            "Имя": "POSITION_NUMBER_INCREASE",
 
            "Значение": "1"
 
          },
 
          {
 
            "Имя": "RESULT",
 
            "Значение": [
 
              {
 
                "Имя": "MSGTYP_MSGID_MSGNR",
 
                "Значение": "S|M8|388|MSGV1"
 
              },
 
              {
 
                "Имя": "MSGTYP_MSGID_MSGNR",
 
                "Значение": "S|M8|391|MSGV1"
 
              },
 
              {
 
                "Имя": "MSGTYP_MSGID_MSGNR",
 
                "Значение": "S|M8|399|MSGV1"
 
              },
 
              {
 
                "Имя": "MSGTYP_MSGID_MSGNR",
 
                "Значение": "S|M8|437|MSGV1"
 
              },
 
              {
 
                "Имя": "MSGTYP_MSGID_MSGNR",
 
                "Значение": "S|M8|438|MSGV1"
 
              }
 
            ]
 
          },
 
          {
 
            "Имя": "BATCH",
 
            "Тип": "",
 
            "Подтип": "",
 
            "Значение": [
 
              {
 
                "Имя": "HEADER",
 
                "Тип": "Header",
 
                "Значение": [
 
                  {
 
                    "Имя": "SAPLMR1M",
 
                    "Значение": "6000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "/00",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "INVFO-WAERS",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "RM08M-VORGANG",
 
                    "Значение": "1",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "INVFO-BLDAT",
 
                    "Значение": "IR_DATA->DATE",
 
                    "Тип": "Field",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "INVFO-BUDAT",
 
                    "Значение": "SY-DATUM",
 
                    "Тип": "Field",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": "DATE"
 
                  },
 
                  {
 
                    "Имя": "INVFO-XBLNR",
 
                    "Значение": "IR_DATA->NUMBER",
 
                    "Тип": "Field",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "INVFO-WRBTR",
 
                    "Значение": "IR_DATA->SUM",
 
                    "Тип": "Field",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": "POINTTOCOMMA"
 
                  },
 
                  {
 
                    "Имя": "INVFO-WAERS",
 
                    "Значение": "",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "SAPLMR1M",
 
                    "Значение": "6000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "=HEADER_PAY",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "INVFO-WAERS",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "SAPLMR1M",
 
                    "Значение": "6000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "/00",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "INVFO-ZFBDT",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "INVFO-ZFBDT",
 
                    "Значение": "IR_DATA->DATE",
 
                    "Тип": "Field",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "SAPLMR1M",
 
                    "Значение": "6000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "=HEADER_FI",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "INVFO-ZFBDT",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "SAPLMR1M",
 
                    "Значение": "6000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "/00",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "INVFO-LIFRE",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "INVFO-KURSF",
 
                    "Значение": " 1,00000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "INVFO-BLART",
 
                    "Значение": "RE",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "INVFO-LIFRE",
 
                    "Значение": "IR_DATA->LIFNR",
 
                    "Тип": "Field",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "SAPLMR1M",
 
                    "Значение": "6000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "=ITEMS_PO",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "INVFO-LIFRE",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "SAPLMR1M",
 
                    "Значение": "6000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "/00",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "RM08M-XWARE_BNK",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "RM08M-XWARE_BNK",
 
                    "Значение": "1",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "RM08M-REFERENZBELEGTYP",
 
                    "Значение": "1",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "RM08M-EBELN",
 
                    "Значение": "IR_DATA->EBELN",
 
                    "Тип": "Field",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "SAPLMR1M",
 
                    "Значение": "6000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "=HEADER_TAX",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "RM08M-XWARE_BNK",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "SAPLMR1M",
 
                    "Значение": "6000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "=1TX5",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_CURSOR",
 
                    "Значение": "RTAX1U10-XMWST",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "RTAX1U10-XMWST",
 
                    "Значение": "X",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "SAPLMR1M",
 
                    "Значение": "6000",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcdynpro",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "BDC_OKCODE",
 
                    "Значение": "=HEADER_TOTAL",
 
                    "Тип": "String",
 
                    "Подтип": "Bdcfield",
 
                    "Формат": ""
 
                  }
 
                ]
 
              }
 
            ]
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "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",
 
            "Тип": "",
 
            "Подтип": "",
 
            "Значение": [
 
              {
 
                "Имя": "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",
 
                "Значение": ""
 
              }
 
            ]
 
          }
 
        ]
 
      },
 
      {
 
        "Имя": "MENU_CREATE_GOODS_RECEIPT_BAPI",
 
        "Значение": [
 
          {
 
            "Имя": "DEFAULT",
 
            "Значение": ""
 
          },
 
          {
 
            "Имя": "MENU_TEXT",
 
            "Значение": "Создать Накладную (BAPI)"
 
          },
 
          {
 
            "Имя": "DOC_TYPE",
 
            "Значение": "IJ"
 
          },
 
          {
 
            "Имя": "UPLOAD_DATA_CLASS_NAME",
 
            "Значение": "/SBIS/CL_CREATE_SAP_DOCUMENTS"
 
          },
 
          {
 
            "Имя": "UPLOAD_DATA_METHOD_NAME",
 
            "Значение": "CREATE_BAPI_DOC"
 
          },
 
          {
 
            "Имя": "MISSED_FIELDS_FUNCTION_NAME",
 
            "Значение": "/SBIS/FM_CREATE_BAPI_RCPT",
 
            "Тип": "String"
 
          },
 
          {
 
            "Имя": "FACE_ROLE_TO_GET_BUKRS",
 
            "Значение": "Получатель"
 
          },
 
          {
 
            "Имя": "FACE_ROLE_TO_GET_LIFNR",
 
            "Значение": "Отправитель"
 
          },
 
          {
 
            "Имя": "TRANSACTION_NAME",
 
            "Значение": "BAPI_GOODSMVT_CREATE"
 
          },
 
          {
 
            "Имя": "POSITION_NUMBER_INCREASE",
 
            "Значение": "1"
 
          },
 
          {
 
            "Имя": "RESULT",
 
            "Значение": [
 
              {
 
                "Имя": "BELNR",
 
                "Тип": "BAPI2017_GM_HEAD_RET-MAT_DOC",
 
                "Значение": "MATERIALDOCUMENT"
 
              },
 
              {
 
                "Имя": "GJAHR",
 
                "Тип": "BAPI2017_GM_HEAD_RET-DOC_YEAR",
 
                "Значение": "MATDOCUMENTYEAR"
 
              }
 
            ]
 
          },
 
          {
 
            "Имя": "RESULT_MESSAGE",
 
            "Тип": "TABLE",
 
            "Подтип": "BAPIRET2",
 
            "Значение": "RETURN"
 
          },
 
          {
 
            "Имя": "BAPI",
 
            "Тип": "",
 
            "Подтип": "",
 
            "Значение": [
 
              {
 
                "Имя": "GOODSMVT_HEADER",
 
                "Тип": "Fmstructure",
 
                "Подтип": "Export",
 
                "Формат": "BAPI2017_GM_HEAD_01",
 
                "Значение": [
 
                  {
 
                    "Имя": "PSTNG_DATE_OLD",
 
                    "Значение": "IR_INPUT_DATA->DATE",
 
                    "Тип": "Field",
 
                    "Подтип": "Export",
 
                    "Формат": "DATE"
 
                  },
 
                  {
 
                    "Имя": "PSTNG_DATE",
 
                    "Значение": "SY-DATUM",
 
                    "Тип": "Field",
 
                    "Подтип": "Export",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "DOC_DATE",
 
                    "Значение": "IR_INPUT_DATA->DATE",
 
                    "Тип": "Field",
 
                    "Подтип": "Export",
 
                    "Формат": "DATE"
 
                  },
 
                  {
 
                    "Имя": "REF_DOC_NO",
 
                    "Значение": "IR_INPUT_DATA->NUMBER",
 
                    "Тип": "Field",
 
                    "Подтип": "Export",
 
                    "Формат": ""
 
                  },
 
                  {
 
                    "Имя": "PR_UNAME",
 
                    "Значение": "SY-UNAME",
 
                    "Тип": "Field",
 
                    "Подтип": "Export",
 
                    "Формат": ""
 
                  }
 
                ]
 
              },
 
              {
 
                "Имя": "GOODSMVT_CODE",
 
                "Тип": "Fmfield",
 
                "Подтип": "Export",
 
                "Формат": "BAPI2017_GM_CODE",
 
                "Значение": [
 
                  {
 
                    "Имя": "*",
 
                    "Значение": "01",
 
                    "Тип": "String",
 
                    "Подтип": "Export",
 
                    "Формат": ""
 
                  }
 
                ]
 
              },
 
              {
 
                "Имя": "GOODSMVT_ITEM",
 
                "Тип": "Fmtable",
 
                "Подтип": "Table",
 
                "Формат": "BAPI2017_GM_ITEM_CREATE",
 
                "Значение": [
 
                  {
 
                    "Имя": "GOODSMVT_ITEM",
 
                    "Тип": "IR_INPUT_DATA->ITEMS",
 
                    "Подтип": "",
 
                    "Формат": "BAPI2017_GM_ITEM_CREATE",
 
                    "Значение": [
 
                      {
 
                        "Имя": "MATERIAL",
 
                        "Значение": "ID",
 
                        "Тип": "Field",
 
                        "Подтип": "",
 
                        "Формат": ""
 
                      },
 
                      {
 
                        "Имя": "PLANT",
 
                        "Значение": "WERKS",
 
                        "Тип": "Field",
 
                        "Подтип": "",
 
                        "Формат": ""
 
                      },
 
                      {
 
                        "Имя": "STGE_LOC",
 
                        "Значение": "LGORT",
 
                        "Тип": "Field",
 
                        "Подтип": "",
 
                        "Формат": ""
 
                      },
 
                      {
 
                        "Имя": "MOVE_TYPE",
 
                        "Значение": "101",
 
                        "Тип": "String",
 
                        "Подтип": "",
 
                        "Формат": ""
 
                      },
 
                      {
 
                        "Имя": "ENTRY_QNT",
 
                        "Значение": "AMOUNT",
 
                        "Тип": "Field",
 
                        "Подтип": "",
 
                        "Формат": ""
 
                      },
 
                      {
 
                        "Имя": "VENDOR",
 
                        "Значение": "LIFNR",
 
                        "Тип": "Field",
 
                        "Подтип": "",
 
                        "Формат": ""
 
                      },
 
                      {
 
                        "Имя": "PO_NUMBER",
 
                        "Значение": "EBELN",
 
                        "Тип": "Field",
 
                        "Подтип": "",
 
                        "Формат": ""
 
                      },
 
                      {
 
                        "Имя": "PO_ITEM",
 
                        "Значение": "EBELP",
 
                        "Тип": "Field",
 
                        "Подтип": "",
 
                        "Формат": ""
 
                      },
 
                      {
 
                        "Имя": "MVT_IND",
 
                        "Значение": "B",
 
                        "Тип": "String",
 
                        "Подтип": "",
 
                        "Формат": ""
 
                      },
 
                      {
 
                        "Имя": "PAR_COMPCO",
 
                        "Значение": "BUKRS",
 
                        "Тип": "Field",
 
                        "Подтип": "",
 
                        "Формат": ""
 
                      }
 
                    ]
 
                  }
 
                ]
 
              },
 
              {
 
                "Имя": "MATERIALDOCUMENT",
 
                "Тип": "Fmfield",
 
                "Подтип": "Import",
 
                "Формат": "BAPI2017_GM_HEAD_RET-MAT_DOC",
 
                "Значение": ""
 
              },
 
              {
 
                "Имя": "MATDOCUMENTYEAR",
 
                "Тип": "Fmfield",
 
                "Подтип": "Import",
 
                "Формат": "BAPI2017_GM_HEAD_RET-DOC_YEAR",
 
                "Значение": ""
 
              },
 
              {
 
                "Имя": "RETURN",
 
                "Тип": "Fmtable",
 
                "Подтип": "Table",
 
                "Формат": "BAPIRET2",
 
                "Значение": ""
 
              }
 
            ]
 
          }
 
        ]
 
      }
 
    ]
 
  }
 
}
 
</source>
 
</div>
 
</div>
 
  
 
=Базовый комплект настроек=
 
=Базовый комплект настроек=
Строка 6946: Строка 572:
 
       },
 
       },
 
       {
 
       {
         "Имя": "/SBIS/PR_SEND_ALL_SDK",
+
         "Имя": "/SBIS/PR_SEND_ALL",
 
         "Значение": "SALES"
 
         "Значение": "SALES"
 
       }
 
       }
Строка 6960: Строка 586:
  
 
Возможные стандартные программы:
 
Возможные стандартные программы:
#/SBIS/PR_UPDATE_DOC_STATUS служит для автоматической обработки статусов, наличие вариантов не подразумевается. Для данной программы есть отдельная обертка рассмотренная выше.
+
#/SBIS/PR_UPDATE_DOC_STATUS служит для автоматической обработки статусов. Так как у программы есть обертка рассмотренная выше, требуется настроить вариант без выхода сессии.
#/SBIS/PR_SEND_ALL_SDK используется для автоматической отправки реестров документов, подразумевает гибкую настройку варианта отправки.  
+
#/SBIS/PR_SEND_ALL используется для автоматической отправки реестров документов, подразумевает гибкую настройку варианта отправки.  
 
##Обязательно следует указать реестр отправляемых документов, даты и исключить статус “Отправлен”, чтобы не переотправлять уже отправленные документы, если такие попадут в выборку или же, наоборот, ограничить только по статусу "Не отправлен", а также организационные единицы.  
 
##Обязательно следует указать реестр отправляемых документов, даты и исключить статус “Отправлен”, чтобы не переотправлять уже отправленные документы, если такие попадут в выборку или же, наоборот, ограничить только по статусу "Не отправлен", а также организационные единицы.  
 
               [[Файл:Скриншот_12.03.2018_08-42-39-259.png]]
 
               [[Файл:Скриншот_12.03.2018_08-42-39-259.png]]
Строка 7154: Строка 780:
 
|-
 
|-
 
|Global Field Symbol
 
|Global Field Symbol
|gfs_
+
|gs_
 
|
 
|
 
|Local Field Symbol
 
|Local Field Symbol
|lfs_
+
|ls_
 
|
 
|
 
|
 
|
Строка 7243: Строка 869:
 
|
 
|
 
|}
 
|}
 
  
 
=Языковая поддержка=
 
=Языковая поддержка=

Текущая версия на 17:02, 11 октября 2021

Содержание

Проверка готовности к настройке

Подготовительные действия

  • Получить в Тензоре параметры подключения к СБИС - адрес сервиса, тестовый логин и пароль
  • Авторизоваться в СБИС через браузер
  • Установить СБИС SDK

Запустить модуль

Действие: SE38 -> /sbis/sapper или транзакция /n/SBIS/SAPPER

Результат: Откроется окно авторизации

Проблемы:

  • Failed to create object SBIS.Docflow – Не установлен или не зарегистрирован SBIS SDK. Установите под админом SBIS SDK. После необходимо перезайти в SAP - закрыть все окна SAP Logon (включая разводящую страницу).
  • Система пытается создать инстанцию управляющего элемента – ответить "Разрешить всегда" примерно на 10 вопросов – или один раз разрешить доступ в настройках.

Авторизоваться в модуле

Действие: Запустить модуль -> В окне авторизации указать адрес сервиса, настройки прокси, логин, пароль.

Результат: Откроется главное окно SBIS SAPPER

Проблемы:

  • В окне аккордеона абракадабра – при импорте переноса возникла проблема с кодировкой (причина пока не понятна).

Необходимо вручную загрузить настройки se38 - /sbis/update_settings

Введение

При разработке SAPPER основной задачей являлось создать тиражируемое решение, которое будет легко разворачиваться на любой версии SAP и решать задачи клиента без программирования - на уровне настроек. Для достижения этой цели почти весь функционал SAPPER сделан настраиваемым. Настройки SAPPER хранятся в таблице /SBIS/SETTINGS.

Сами настройки можно представить как иерархическую структуру параметров типа ключ значение.

Редактирование настроек можно осуществить двумя способами:

  1. с помощью транзакции /n/SBIS/SETTINGS (ветка SPRO -> Integration with other SAP Components -> SBIS Sapper -> Settings).
  2. с помощью JSON файлов в последующем конвертирующихся и импортирующихся в /SBIS/SETTINGS. Данный способ на текущий момент является более удобным и наглядным. Далее в инструкции все примеры настроек показаны в виде JSON объектов.

Структура настроек /SBIS/SETTINGS

  • SBIS - Общие настройки модуля, протокол обмена, справочники
    • ACCORDION - Настройки аккордеона
  • LO_* - Настройки для построения списков исходящих документов для отправки
  • DO_* - Настройки выгрузки исходящих документов, название класса и программ печати отвечающих за формирование
    • PRINT_PRINT - параметры программы печати необходимые для вывода на печать
    • PRINT_SEND - параметры программы печати необходимые для формирования XML
    • FILE - массив настройки маппинга программы печати в XML, количество элементов FILE соответствует количеству формируемых электронных документов
  • UI_* - настройки загрузки электронных документов в SAP (создания SAP документов, сериализации XML файла в параметры BAPI)
    • FILE - массив настроек маппинга XML в параметры BAPI. Количество элементов FILE соответствует количеству документов SAP создаваемых из данного электронного документа.

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

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

  1. Заполнить опросный лист (определиться какие пакеты документов (их варианты) мы хотим отправлять и какие программы использует SAP для печати этих документов)
  2. Настроить ACCORDION - перечислить все варианты отправляемых пакетов документов (SAPPER SETTINGS - Общие).
  3. Для каждого варианта пакета документов настроить показ списка (SAPPER SETTINGS - Настройки списков).
  4. Для каждого входящего в пакет документа SAP настроить параметры формирования из него электронных документов (SAPPER SETTINGS - Настройки выгрузки).

Алгоритм отправки

  1. Показ списка записей для отправки
    1. на настройках аккордеона смотрим имя настройки LO_
    2. из таблицы настроек LO_ получаем имя класса отвечающего за показ списка
    3. выполняем запрос указанный в настройках,в результате получили список документов SAP от которых нужно будет сформировать электронные документы и идентификатор настроек описывающих формирование.
    4. показываем список документов в виде alv_tree
  2. Открыли окно предпросмотра
    1. для каждого документа пакета читаем настройки DO_
    2. вызываем класс формирования документа (далее описан сценарий по умолчанию)
    3. вызываем программу печати.
    4. в конце программы печати, когда все данные рассчитаны, передаем управление функции маппинга
    5. получаем необходимые для формирования XML значения
    6. при помощи XSLT формируем сначала шаблон XML с данными, потом при помощи другого XSLT приводим его к нужному формату
    7. запрашиваем HTML для визуализации сформированного XML
    8. показываем HTML
  3. Нажали кнопку отправить
    1. при помощи SDK асинхронно, многопоточно подписываем и отправляем сформированный пакет в ЛК СБИС

Настройка загрузки электронных документов (cоздание документа в SAP)

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

  1. Заполнить опросный лист (определиться какие документы SAP должны создаваться из каких электронных документов и какими методами (BAPI или BATCH INPUT))
    1. На данный момент поддерживается создание документов в SAP из электронных документов: счет-фактура, накладная.
  2. Для электронного документа настроить параметры создания из него документов SAP (SAPPER SETTINGS - Настройки загрузки).

Алгоритм загрузки

  1. Открыли окно предпросмотра
    1. по идентификаторам XML вложений запрашиваем HTML визуалиазции
    2. показываем HTML
  2. Открыли окно загрузки
    1. скачиваем XML
    2. при помощи XSLT приводим XML к XML шаблону с данными, шаблон с данными конвертируем с помощью другого XSLT в структуру SAP
    3. показываем универсальную форму загрузки, предзаполняем форму по известным данным (стороны, номенклатура)
    4. предоставляем интерфейс для дозаполнения неизвестных значений, необходимых для загрузки документа (в т.ч. сопоставление номенклатуры)
  3. Нажали кнопку загрузить
    1. по данным таблицы настроек конвертируем структуру SAP в параметры BAPI
    2. выполняем BAPI

Базовый комплект настроек

В базовый комплект настроек входит:

Настройки аккордеона

  • Полученные
  • Отправленные
  • Ответы контрагентов
  • Продажа
    • Реализация товаров
    • Реализация услуг
    • Корректировочные счета-фактуры
    • Неотфактурованные
    • Акт-сверки дебиторов
    • Акт-сверки кредиторов

Настройки реестров

  • Реализация товаров - список пакетов документов ( Накладная + Фактура ). Данный пакет строится на основе цепочки документов SAP: Заказ SD, Накладная SD, Фактура SD. Исключены сторно документы.
  • Реализация услуг - список пакетов документов ( Акт + Фактура ). Данный пакет строится на основе цепочки документов SAP: Заказ SD, Фактура SD.
  • Корректировочные счета-фактуры - список пакетов документов ( Корректировочный счет-фактура ). Данный пакет строится на основе документов SAP: Корректировочный счет-фактура SD.
  • Неотфактурованные - список накладных по которым не сформированы фактуры.
  • Акт сверки дебиторов - список дебиторов от которых можно построить акт сверки
  • Акт сверки кредиторов - список кредиторов от которых можно построить акт сверки

Настройки маппинга для программ печати

J_3RV_DELIV_PDF программа печати накладной SD

Параметры запуска:

print_form = 'ENTRY'
nast-kappl = 'V2'
nast-parvw = 'WE'
nast-nacha = '8'
nast-kschl = 'LD00'
nast-objtype = 'LIKP'
nast-spras = 'R'

J_3RV_INV_A программа печати фактуры SD

Параметры запуска:

print_form = 'ENTRY'
nast-kappl = 'V3'
nast-parvw = 'RE'
nast-nacha = '8'
nast-kschl = 'RD00'
nast-objtype = 'VBRK'
nast-spras = 'R'

J_3RV_TORG12_BIL программа печати акта выполненных работ на основе данных счет-фактуры SD

Параметры запуска:

print_form = 'ENTRY'
nast-kappl = 'V3'
nast-parvw = 'RE'
nast-nacha = '8'
nast-kschl = 'RDRU'
nast-objtype = 'VBRK'
nast-spras = 'R'

J_3RV_CORRINV_A - программа печати корректировочных счетов-фактур

Параметры запуска:

print_form = 'ENTRY'
nast-kappl = 'V3'
nast-parvw = 'RE'
nast-nacha = '8'
nast-kschl = 'RUKF'
nast-objtype = 'VBRK'
nast-spras = 'R'

/SBIS/AKT_SVERKI_D - копия программы формирования акта сверки дебиторов.

/SBIS/AKT_SVERKI_K - копия программы формирования акта сверки кредиторов.

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

Для загрузки документов в систему SAP из реестра "Полученные" созданы настройки загрузки.

  1. ТОРГ-12 КНД 1175004 версия 5.01:
    1. заказ на закупку (пакетный ввод, транзакция ME21N);
    2. поступление материалов (пакетный ввод, транзакция MIGO);
    3. счет-фактура (пакетный ввод, транзакция MIR7);
    4. заказ на закупку (BAPI_PO_CREATE1);
    5. поступление материалов (BAPI_GOODSMVT_CREATE);
  2. Счет-фактура КНД 1115125 версия 5.01:
    1. заказ на закупку (пакетный ввод, транзакция ME21N);
    2. поступление материалов (пакетный ввод, транзакция MIGO);
    3. счет-фактура (пакетный ввод, транзакция MIR7);
    4. заказ на закупку (BAPI_PO_CREATE1);
    5. поступление материалов (BAPI_GOODSMVT_CREATE);

Настройки справочников

В стандартные настройки включены справочники видов документов и кодов НДС.

Утилиты

SAPPER TEST MODE

В процессе настройки удобно включить режим в котором в C:\TEMP выгружаются промежуточные XML файлы и логи SDK. Для этого в постоянные значения пользователя (Меню Система - Постоянные значения пользователя - Собственные данные - Параметры) необходимо добавить параметр /SBIS/TEST_MODE = X

Ручная загрузка настроек

После исправления JSON файла настроек его нужно сконвертировать в CSV и загрузить при помощи программы /SBIS/UPDATE_SETTINGS.

Необходимы права на объект полномочий /SBIS/0001, ACTVT=01.

Просто указываем путь к файлу CSV и нажимаем Выполнить.

В результате загрузки вы увидите таблицу загруженных настроек.

Проблемы:

  • Если вместо кирилицы видим кракозябры, значит проблема с кодировкой файла. Пробуем менять в CSV конвертере UTF-8 <-> WINDOWS-1251

Обновление FM смартформы

В случае изменения смартформы и перегенерации ее функционального модуля, можно инициировать автоматическое обновление настроек в таблице с помощью программы /SBIS/UPDATE_SMARTFORM_FM.

Сброс номера, даты\времени последнего прочитанного события (только для пакета /SBIS/EJOURNAL)

С помощью программы /SBIS/RESET_U_SETTINGS или транзакции /n/SBIS/RESET_USET, можно сбросить последнее прочитанное событие и установить произвольные дату и время для текущего пользователя.

Пользовательский интерфейс и кастомизация

Интерфейсы

ГФ /SBIS/RFC – Набор RFC функций

Общее назначение

Настоящая группа функций обеспечивает работу с SAP из интерфейса личного кабинета СБИС. Соединение осуществляется через SBIS Plugin установленный на рабочем месте пользователя..

ФМ /SBIS/RFC_GET_LIST_PACKET – Получение списка пакетов документов.

Функциональный модуль предназначен для получения списка пакетов документов который отражается в интерфейсе СБИС, пользователь из данного списка выбирает документы для последующей отправки. В таблице ниже представлен локальный интерфейс модуля.

Параметр Описание
IMPORTING
IV_INI_NAME Код раздела настроек содержащих параметры необходимые для получения списка документов.
IS_FILTER Структура содержащая параметры для ограничения выборки списка документов (период, контрагент, балансовая единица и т.п.
TABLES
GET_LIST_PACKET Список пакетов документов

ФМ /SBIS/RFC_GET_ATTACHMENT – Данные отправки

Функциональный модуль предназначен для получения XML вложения в пакет.

Получает из таблицы настроек набор SQL запросов необходимых для построения списка пакетов документов. В таблице ниже представлен локальный интерфейс модуля.

Параметр Описание
IMPORTING
IV_INI_NAME Код раздела настроек содержащих параметры необходимые для получения данных документа.
IS_DOC_KEY Уникальный идентификатор документа
EXPORTING
ES_XML_PACKET Структура с описанием пакета, на основании данных данной структуры формируется описание пакета, актуально для первого вложения
ES_XML_ATTACHEMENT Структура с вложением, содержит описание формата, его версии и содержит XML файл взакодированный в BASE64. В общем случае передается XML универсального формата который в последующем конвертируется в формат ФНС.

ФМ /SBIS/RFC_GET_PARAM – Получение списка настроек аддона

Функциональный модуль предназначен для получения списка параметров из таблицы настроек. Параметры метода служат для ограничения списка возвращаемых значений. Таблица настроек фильтруется по всем заполненным параметрам.

В таблице ниже представлен локальный интерфейс модуля.

Параметр Описание
IMPORTING
IV_INI_NAME Название группы параметров
IV_PARENT Название подгруппы параметров
IV_PARAM_NAME Имя параметра
TABLE
ET_SETTINGS Таблица со списком параметров

ФМ /SBIS/RFC_DEL_PARAM – Удаление настроек аддона

Функциональный модуль предназначен для удаления настроек аддона, используется при администрировании настроек. В таблице ниже представлен локальный интерфейс модуля.

Параметр Описание
IMPORTING
IV_INI_NAME Параметр для ограничения списка удаляемых параметров.
IV_PARENT Параметр для ограничения списка удаляемых параметров.
IV_PARAM_NAME Имя удаляемого параметра.

ФМ /SBIS/RFC_ADD_PARAM – Добавление настроек аддона

Функциональный модуль предназначен для добавления настроек аддона, используется при администрировании настроек. В таблице ниже представлен локальный интерфейс модуля.

Параметр Описание
TABLE
IT_SETTINGS Список настроек которые надо добавить/обновить.


Класс /SBIS/CL_SAP_DATA - получение данных SAP

Метод GET_BUKRS_BY_BUKRS - Данные БЕ (ИНН КПП ОКПО Назв Адрес)

  1. Входные параметры
    1. IS_SETTINGS - тип /SBIS/S_SETTINGS, необязательный параметр.
    2. IR_CLASS - тип OBJECT, необязательный параметр.
    3. IR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
  2. Выходные параметры
    1. CR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
      2. INN - ИНН
      3. KPP - КПП
      4. OKPO - ОКПО
      5. OKDP - ОКДП
      6. NAME - наименование
      7. FULL_NAME - полное наименование
      8. POST_CODE - почтовый индекс
      9. REGION_CODE - код региона
      10. CITY - город
      11. DISTRICT - район
      12. VILLAGE - нас. пункт
      13. STREET - улица
      14. HOUSE - дом
      15. OFFICE - офис, квартира
      16. COUNTRY_CODE - код страны
      17. PHONE - телефон
      18. FAX - факс
      19. EMAIL - адрес эл. почты

Метод GET_VKORG_BY_VKORG - Данные СбОрг (ИНН КПП ОКПО Назв Адрес)

  1. Входные параметры
    1. IS_SETTINGS - тип /SBIS/S_SETTINGS, необязательный параметр.
    2. IR_CLASS - тип OBJECT, необязательный параметр.
    3. IR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
  2. Выходные параметры
    1. CR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
      2. INN - ИНН
      3. KPP - КПП
      4. OKPO - ОКПО
      5. OKDP - ОКДП
      6. NAME - наименование
      7. FULL_NAME - полное наименование
      8. POST_CODE - почтовый индекс
      9. REGION_CODE - код региона
      10. CITY - город
      11. DISTRICT - район
      12. VILLAGE - нас. пункт
      13. STREET - улица
      14. HOUSE - дом
      15. OFFICE - офис, квартира
      16. COUNTRY_CODE - код страны
      17. PHONE - телефон
      18. FAX - факс
      19. EMAIL - адрес эл. почты

Метод GET_WERKS_BY_WERKS - Данные Завода (ИНН КПП ОКПО Назв Адрес)

  1. Входные параметры
    1. IS_SETTINGS - тип /SBIS/S_SETTINGS, необязательный параметр.
    2. IR_CLASS - тип OBJECT, необязательный параметр.
    3. IR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
  2. Выходные параметры
    1. CR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
      2. INN - ИНН
      3. KPP - КПП
      4. OKPO - ОКПО
      5. OKDP - ОКДП
      6. NAME - наименование
      7. FULL_NAME - полное наименование
      8. POST_CODE - почтовый индекс
      9. REGION_CODE - код региона
      10. CITY - город
      11. DISTRICT - район
      12. VILLAGE - нас. пункт
      13. STREET - улица
      14. HOUSE - дом
      15. OFFICE - офис, квартира
      16. COUNTRY_CODE - код страны
      17. PHONE - телефон
      18. FAX - факс
      19. EMAIL - адрес эл. почты

Метод GET_KUNNR_BY_KUNNR - Данные Дебитора (ИНН КПП ОКПО Назв Адрес)

  1. Входные параметры
    1. IS_SETTINGS - тип /SBIS/S_SETTINGS, необязательный параметр.
    2. IR_CLASS - тип OBJECT, необязательный параметр.
    3. IR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
  2. Выходные параметры
    1. CR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
      2. INN - ИНН
      3. KPP - КПП
      4. OKPO - ОКПО
      5. OKDP - ОКДП
      6. NAME - наименование
      7. FULL_NAME - полное наименование
      8. POST_CODE - почтовый индекс
      9. REGION_CODE - код региона
      10. CITY - город
      11. DISTRICT - район
      12. VILLAGE - нас. пункт
      13. STREET - улица
      14. HOUSE - дом
      15. OFFICE - офис, квартира
      16. COUNTRY_CODE - код страны
      17. PHONE - телефон
      18. FAX - факс
      19. EMAIL - адрес эл. почты

Метод GET_BUKRS_BANK_BY_BUKRS - Данные БЕ (банк)

  1. Входные параметры
    1. IS_SETTINGS - тип /SBIS/S_SETTINGS, необязательный параметр.
    2. IR_CLASS - тип OBJECT, необязательный параметр.
    3. IR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
  2. Выходные параметры
    1. CR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
      2. BANK_NAME - наим. банка
      3. BANK_BIK - БИК
      4. BANK_ACC - расч. счет
      5. BANK_CORACC - корр. счет
      6. BANK_CITY - город банка

Метод GET_VKORG_BANK_BY_VKORG - Данные СбОрг (банк)

  1. Входные параметры
    1. IS_SETTINGS - тип /SBIS/S_SETTINGS, необязательный параметр.
    2. IR_CLASS - тип OBJECT, необязательный параметр.
    3. IR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
  2. Выходные параметры
    1. CR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
      2. BANK_NAME - наим. банка
      3. BANK_BIK - БИК
      4. BANK_ACC - расч. счет
      5. BANK_CORACC - корр. счет
      6. BANK_CITY - город банка

Метод GET_WERKS_BANK_BY_WERKS - Данные Завода (банк)

  1. Входные параметры
    1. IS_SETTINGS - тип /SBIS/S_SETTINGS, необязательный параметр.
    2. IR_CLASS - тип OBJECT, необязательный параметр.
    3. IR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
  2. Выходные параметры
    1. CR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
      2. BANK_NAME - наим. банка
      3. BANK_BIK - БИК
      4. BANK_ACC - расч. счет
      5. BANK_CORACC - корр. счет
      6. BANK_CITY - город банка

Метод GET_KUNNR_BANK_BY_KUNNR - Данные Дебитора (банк)

  1. Входные параметры
    1. IS_SETTINGS - тип /SBIS/S_SETTINGS, необязательный параметр.
    2. IR_CLASS - тип OBJECT, необязательный параметр.
    3. IR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
  2. Выходные параметры
    1. CR_DATA - тип DATA (/SBIS/S_XML_FACE_FULL), необязательный параметр. Поля:
      1. ID - код организации
      2. BANK_NAME - наим. банка
      3. BANK_BIK - БИК
      4. BANK_ACC - расч. счет
      5. BANK_CORACC - корр. счет
      6. BANK_CITY - город банка

Доработка программы печати

Для формирование XML документа ИМ использует имеющиеся программы печати. Данная методика позволяет избежать дублирования алгоритма формирования документа.

В простейшем случае доработка сводится к добавлению к в программу печати (или её копию) вызова метода ИМ который завершает программу печати после формирования электронного документа.

Пример вызова ИМ для формирования электронного документа. Данный код необходимо добавить непосредственно перед вызовом формуляра.

**************************************************************
*                 TENSOR SBIS EDO                            *
**************************************************************
  try.
      data cx_root type ref to cx_root.
      data lv_not_print type c value ''.
      data cl_mapping type ref to /sbis/cl_mapping.
      create object cl_mapping.
      call method cl_mapping->calc_doc
        exporting
          is_nast      = nast
        importing
          ev_not_print = lv_not_print.
      if lv_not_print = 'X'.
        exit.
      endif.
    catch cx_root into cx_root.
  endtry.

С интеграционным модулем поставляются примеры стандартных программ печати в которые добавлен вызов ИМ.

В ряде случаев этого может быть не достаточно.

Генерация электронного документа использует в качестве данных значения рассчитанные программой печати. Иногда название контрагента, его ИНН и КПП выводятся в печатной форме одной строкой и как правило в программе печати они хранятся в одной переменной, а для формирования электронного документа они нужны по раздельности. Поэтому для каждой программы печати проводится анализ, каких данных в ней не хватает, после чего в текст программы вносятся соответствующие изменения.

Если у Вас Z-программы печати, в которых используются подпрограммы, BADI, или логика вынесена в формуляр, то вызов SAPPER чуть более сложный. С примерами можно ознакомиться здесь.

Алгоритм выгрузки документов из SAP в СБИС для последующей отправки

Алгоритм выгрузки в СБИС документов SAP из интерфейса СБИС

Алгоритм загрузки документов в SAP из СБИС

Алгоритм загрузки документов в SAP из интерфейса СБИС

Назначение документа

Документ представляет собой техническое описание порядка установки, настройки и расширения стандартного функционала SBIS for SAP.

Область применения документа

Настоящий документ предназначен для описания технических аспектов внедрения продукта SBIS for SAP. Документ может использоваться для постановки задач техническим специалистам по внедрению и расширению функциональности Системы.

Общее назначение системы

Система предназначена для автоматизации процессов обмена электронными юридически значимыми документами.

Глоссарий

Настоящий раздел содержит полный список сокращений и определений, используемых в документе.

  • Служебные документы -Файлы, предусмотренные регламентом документооборота, содержащие описание процесса отправки и получения.
  • Формализованный документ - Структурированный документ (XML-формат)
  • Неформализованный документ - Неструктурированный документ (произвольный файл, например, в формате PDF)
  • ЭДО - Электронный документооборот
  • Документ / Вложение - Документ, полученный от контрагента или направляемый ему, отражающий факты проведения финансовых операций с контрагентом, выполнения каких-либо работ или оказания услуг, поставки каких либо * ТМЦ (например, Счёт-фактура, Накладная Торг-12, Акт приёма/сдачи работ и т.п.)
  • Пакет документов - Комплект Документов, полученных от контрагента или направляемых ему, необходимых для проведения финансовой операции с контрагентом.
  • ЭП Электронная подпись - реквизит электронного документа, предназначенный для защиты данного электронного документа от подделки, полученный в результате криптографического преобразования информации с использованием закрытого ключа электронной цифровой подписи и позволяющий идентифицировать владельца сертификата ключа подписи, а также установить отсутствие искажения информации в электронном документе
  • Техническая ЭП - ЭП, которая применяется для подписания технических документов (технологических уведомлений) в процессе обмена через ОЭД.
  • ИМ, IM Интеграционный модуль (Integration Module) - компонент Системы, отвечающий за обмен сообщениями между SAP-системой Заказчика и ОЭД
  • БЕ - Код балансовой единицы в системе SAP
  • ГФ - Группа функций, объект системы SAP
  • ФМ - Функциональный модуль, объект системы SAP
  • БО - Бизнес-объект SAP
  • СЭ - Селекционный экран, экран выбора данных


Настройка автоматического обновления статусов и отправки документов

Автоматическое обновление статусов

Помимо возможности обновления статусов документов через кнопку Сапера 'Обновить статусы', существует возможность автоматического периодического обновления статусов. Для этого существует транзакция /SBIS/UPDATE_STATUS, которую можно запускать через windows-планировщик.

Настройка:

  1. На компьютере должны быть установлены Windows, SBIS SDK, SAP GUI.
  2. Создайте отдельного SAP-пользователя с правами только на запуск транзакции /SBIS/UPDATE_STATUS, т.к. пароль этого пользователя будет храниться в открытом виде в bat-файле.
  3. Создайте bat файл, например C:\sbis_update_status.bat
    1. В файле укажите путь к файлу sapshcut.exe и параметры его запуска (SID системы sap, мандант, имя пользователя, пароль и код транзакции).
    2. Пример кода bat файла:
      "C:\Program Files (x86)\SAP\FrontEnd\SAPgui\sapshcut.exe" /system=SID /client=001 /user=SAP* /pw=06071992 /command=/sbis/update_status
  4. Зайдите в SAP под учетной записью только что созданного пользователя (пп.2). Запустите СБИС Сапер. Авторизуйтесь. Сохраните пароль СБИС-кабинета. Под этим логином и паролем СБИС-кабинета будет происходить обновление статусов.
  5. Создайте задачу для Планировщика заданий Windows.
    1. Меню: Пуск - Стандартные - Служебные - Планировщик заданий.
    2. Выберите пункт меню Создать задачу.
    3. Задайте имя, описание, например, sbis_update_status.
    4. Задайте триггер, например Ежедневно, в 06-00.
    5. Задайте действие, например Запуск программы, и укажите путь к bat-файлу, например C:\sbis_update_status.bat.
    6. Сохраните задание по кнопке ОК.
    7. Протестируйте, нажав Выполнить.

СБИС робот, автоматизация отправки документов и обновления статусов

Для более гибкой организации автоматической обработки статусов, отправки документов, можно использовать функционал SBIS ROBOT. Для настройки следует добавить в настроечный раздел SBIS следующие параметры:

 
"SBIS_ROBOT": {
    "Значение": [
      {
        "Имя": "/SBIS/PR_UPDATE_DOC_STATUS",
        "Значение": ""
      },
      {
        "Имя": "/SBIS/PR_SEND_ALL",
        "Значение": "SALES"
      }
    ]
  }

Параметр SBIS_ROBOT содержит имя программы, которая будет запускаться и вариант в поле значение, с которым программа будет исполняться. В поле значение можно указать:

  1. единственный вариант, к примеру, "SALES",
  2. множество вариантов разделенные запятой, "SALES, SALES1, SALES2",
  3. "*" - все доступные варианты программы.

Обратите внимание, что имя варианта в SAP не должно содержать пробелов, в противном случае вариант будет проигнорирован.

Возможные стандартные программы:

  1. /SBIS/PR_UPDATE_DOC_STATUS служит для автоматической обработки статусов. Так как у программы есть обертка рассмотренная выше, требуется настроить вариант без выхода сессии.
  2. /SBIS/PR_SEND_ALL используется для автоматической отправки реестров документов, подразумевает гибкую настройку варианта отправки.
    1. Обязательно следует указать реестр отправляемых документов, даты и исключить статус “Отправлен”, чтобы не переотправлять уже отправленные документы, если такие попадут в выборку или же, наоборот, ограничить только по статусу "Не отправлен", а также организационные единицы.
             Скриншот 12.03.2018 08-42-39-259.png

Запуск транзакции /SBIS/ROBOT осуществляется с помощью *.bat файла. По настройке *.bat файла смотрите пункт обновление статусов. Журналирование осуществляется с помощью стандартного функционала логирования приложений (SLG1) объект /SBIS/ подобъект ROBOT.

Правила ведения разработки на проекте

Настоящий раздел содержит общие рекомендации к ведению разработки на проектах внедрения.

Именование объектов словаря

Настоящий раздел описывает концепцию наименований объектов словаря на стороне SAP системы.

Таблица 3 Именование объектов словаря

Объект репозитория Длина имени Маска
Домены 30 /SBIS/DM_[<ff>]_[<XXXXXXXX>]
Элементы данных 30 /SBIS/ED_[<ff>]_[<XXXXXXXX>]
Структуры 30 /SBIS/S_[<ff>]_[<XXXXXXXX>]
Типы таблиц 30 /SBIS/T_[<ff>]_[<XXXXXXXX>]
Таблицы БД 16 /SBIS/[<ff>][<XXXXXXXX>]

/SBIS/[<ff>][<XXXXXXXX>]T - для текстовых таблиц

Ракурсы 16 /SBIS/V_[<ff>][<XXXXXXXX>]
Search-Help 30 /SBIS/SH_[<ff>]_[<XXXXXXXX>]
Объект блокировок 16 /SBIS/[<ff>][<XXXXXXXX>]
Группа функций 26 /SBIS/GF_[<ff>]_[<XXXXXXXX>]
Функциональные Модули 30 /SBIS/FM_ [<ff>]_[<XXXXXXXX>]

/SBIS/RFC_ [<ff>]_[<XXXXXXXX>]

Программы, include 40 /SBIS/[<ff>]_[<XXXXXXXX>]
Пулы модулей 40 /SBIS/[<ff>]_[<XXXXXXXX>]
Классы 30 /SBIS/CL_[<ff>]_[<XXXXXXXX>]
Интерфейсы 30 /SBIS/IF_[<ff>]_[<XXXXXXXX>]
Транзакции 20 /SBIS/[<ff>][<XXXXXXXX>]
Smartforms/SAPScript 30 /SBIS/[<ff>]_[<XXXXXXXX>]
Классы сообщений 20 /SBIS/[<ff>][<XXXXXXXX>]
Классы разработок 30 /SBIS/[<ff>]_[<XXXXXXXX>]
Реализация BAdi (новый/старый) 30/20 /SBIS/[<имя определения BAdi>]
Проекты SAP-расширений 8 /SBIS/[<XXXXXXXX>]
SET/GET-параметры 20 /SBIS/[<ff>][<XXXXXXXX>]
Append – структуры в стандартных таблицах 30 /SBIS/A_[<ff>]_[<XXXXXXXX>]
Поля в append-структурах стандартных таблиц 15 Z[<XXXXXXXX>]
Меню областей 30 /SBIS/[<ff>]_[<XXXXXXXX>]
Объект полномочий 30 /SBIS/[<ff>]_[<XXXXXXXX>]

Для именования остальных объектов репозитария используется маска формирования имени:

<ZZ>SBIS_[<ff>]_[<XXXXXXXX>] , где:

  • <ZZ> - буква Z (или две буквы Z, например, для полей в append - структурах стандартных таблиц) в соответствии с соглашением о пространстве имен для клиента;
  • <ff> - дополнительный квалификатор функциональности, опускается, в случае если объект принадлежит пакету ZCOMMON;
  • <XXXXXXXX> - произвольный набор символов, возможно, но не обязательно, как-то отражающий физический или производственный смысл объекта на английском языке. Возможно использование цифр для отражения следующей логики: 1 - создание, 2 - редактирование, 3 – удаление;

Объекты, не попадающие под требование, должны именоваться исходя из здравого смысла.

Именование переменных кода

Настоящий раздел описывает систему именования объектов и переменных программ продукта на стороне SAP. Таблица 4 Именование объектов и переменных программ

Объект Префикс Объект Префикс Объект Префикс Объект Префикс Объект Префикс
Class cl_
Parameter p_
Push Button pb_ Radio Button rb_ Select Option so_
Table type tt_
Type ty_
Global Constant gc_ Local Constant lc_
Global Field Symbol gs_ Local Field Symbol ls_
Global Structure gs_ Local Structure ls_ Importing Structure is_ Changing Structure cs_ Exporting Structure es_
Global Variable gv_ Local Variable lv_ Importing Variable iv_ Changing Variable cv_ Exporting Variable ev_
Global Internal Table gt_ Local Internal Table lt_ Importing Internal Table it_ Changing Internal Table ct_ Exporting Internal Table et_
Global Range gt_rng_ Local Range lt_rng_
Global Reference gr_ Local Reference lr_

Языковая поддержка

Текущая версия системы должна поддерживать (работать без дополнительной настройки) следующие языки:

  • Английский
  • Русский