СБИС Сапёр - user-exit
Содержание
- 1 Общая концепция
- 2 "UserExit_After_IfExchange_GetPacket"
- 3 BAdI "/SBIS/AFTER_GET_PACKET"
- 4 BAdI "/SBIS/AFTER_READ_CHANGE"
- 5 BAdI "/SBIS/BADI" ( Устарело )
- 6 BAdI "/SBIS/AFTER_READ_CHANGES"
- 7 BAdI "/SBIS/AFTER_SEND_PACKET
- 8 BAdI "/SBIS/EXECUTE_ACTION_EX"
- 9 "ENHANCEMENT_SHOW_WINDOW_BEFORE"
- 10 "ENHANCEMENT_SHOW_WINDOW_AFTER"
Общая концепция
Служит для изменения или проверки отправляемых в СБИС или принимаемых из СБИС данных через СБИС Сапер в системе SAP клиента. По умолчанию метод не вызывается и данные отправляются / принимаются как есть. Если активировать вызов и создать метод, то предоставляется возможность изменить данные пакета.
"UserExit_After_IfExchange_GetPacket"
Предназначено для изменения или проверки отправляемых в СБИС документов
Место вызова
Вызывается из метода /SBIS/IF_EXCHANGE->GET_PACKET
Параметры вызова
Создаваемый метод может иметь произвольное название и должен быть вида static.
Входные параметры
- IT_SETTINGS - таблица с текущими настройками типа /SBIS/T_SETTINGS
- IV_INI_NAME - текущее имя раздела конфигурации типа /SBIS/ED_UUID
- IV_SBIS_SERVER - индикатор текущего сервера СБИС типа CHAR01
Изменяемые параметры
- CS_API2_PACKET - пакет типа /SBIS/S_API2_PACKET
Способ вызова
В настройках в разделе для построения списка необходимо указать имя класса и метода, который будет вызываться. Например, для класса ZCL_SBIS_SDK метода GET_LINKS_VBFA_SFAKT настройки будет выглядеть так:
"UserExit_After_IfExchange_GetPacket_Class": {
"Значение": "ZCL_SBIS_SDK"
},
"UserExit_After_IfExchange_GetPacket_Method": {
"Значение": "GET_LINKS_VBFA_SFAKT"
}
BAdI "/SBIS/AFTER_GET_PACKET"
Предназначено для изменения или проверки отправляемых в СБИС документов
Место вызова
Вызывается из метода /SBIS/CL_EXCHANGE->GET_PACKET
Параметры вызова
Входные параметры:
- IV_SBIS_SERVER - индикатор текущего сервера СБИС
- IV_INI_NAME - текущее имя раздела конфигурации
- IT_SETTINGS - таблица с текущими настройками
Изменяемые параметры:
- CS_API2_PACKET - структура отправляемого документа
Способ вызова
Создать реализацию BAdI "/SBIS/AFTER_GET_PACKET" с помощью транзакции SE18 в точке расширения /SBIS/ES_SAPPER
BAdI "/SBIS/AFTER_READ_CHANGE"
Предназначено для обработки событий по документу для:
- Загрузки документы в ИС
- Проверки состояние исходящих документов
- Проверки состояние входящих документов
Место вызова
Вызывается из метода /SBIS/CL_EXCHANGE->READ_CHANGE
Параметры вызова
Фильтр:
- PREFIX - вид электронного документооборота:
- значение "" или "EDM" - ЭДО
- значение "REPORT" - КЭДО
- EVENT_NAME - Название события
- ROUTE_NAME - Название регламента
Входные параметры:
- IR_CL_EXCHANGE - класс способа обмена
- IS_DOCUMENT- структура документ
Способ вызова
Создать реализацию BAdI "/SBIS/AFTER_READ_CHANGE" с помощью транзакции SE18 в точке расширения /SBIS/ES_SAPPER
BAdI "/SBIS/BADI" ( Устарело )
Предназначено для обработки событий по документу для:
- Загрузки документы в ИС
- Проверки состояние исходящих документов
- Проверки состояние входящих документов
Место вызова
Вызывается из метода /SBIS/CL_EXCHANGE->READ_CHANGE
Параметры вызова
Входные параметры:
- IS_CLASS - класс способа обмена
- IS_DOCUMENT - структура документа
Способ вызова
Создать реализацию BAdI "/SBIS/BADI" с помощью транзакции SE18 в точке расширения /SBIS/ES_SAPPER
BAdI "/SBIS/AFTER_READ_CHANGES"
Предназначено для вызова алгоритмов после обработки всех событий
Место вызова
Вызывается из метода /SBIS/CL_EXCHANGE->READ_CHANGES
Параметры вызова
Входные параметры:
- IO_EXCHANGE - класс способа обмена
Способ вызова
Создать реализацию BAdI "/SBIS/AFTER_READ_CHANGES" с помощью транзакции SE18 в точке расширения /SBIS/ES_SAPPER
BAdI "/SBIS/AFTER_SEND_PACKET
Предназначено для вызова алгоритмов после отправки документа
Место вызова
Вызывается из метода /SBIS/CL_EXCHANGE_EXTSDK2-> WRITE_DOCS_EX_ASYNC_PROC_ANS
Параметры вызова
Фильтр:
- AFTER_SEND_PACKET - значение для фильтрации запускаемых алгоритм в зависимости от настроек
Входные параметры:
- IR_CL_EXCHANGE - класс способа обмена
- IS_PACKET - структура отправленного документа
- IT_SETTINGS - таблица с текущими настройками
Способ вызова
- Создать реализацию BAdI "/SBIS/AFTER_SEND_PACKET" с помощью транзакции SE18 в точке расширения /SBIS/ES_SAPPER.
- В настройках в разделе для построения списка необходимо указать для параметра "BADI_AFTER_SEND_PACKET" значение фильтра запускаемой реализации BAdI
"BADI_AFTER_SEND_PACKET": {
"Значение": "LO_РеализацияУслуг"
}
BAdI "/SBIS/EXECUTE_ACTION_EX"
Предназначено для вызова алгоритмов до и после перевода документа на этап
Место вызова
Вызывается из метода /SBIS/CL_EXCHANGE->EXECUTE_ACTION
Параметры вызова
Метод ENHANCEMENT_BEFORE
- Входные параметры:
- IO_EXCHANGE - класс способа обмена
- Изменяемые параметры:
- CS_DOCUMENT - структура документа
Метод ENHANCEMENT_AFTER
- Входные параметры:
- IO_EXCHANGE - класс способа обмена
- Изменяемые параметры:
- CS_DOCUMENT - структура документа
Способ вызова
Создать реализацию BAdI "/SBIS/EXECUTE_ACTION_EX" с помощью транзакции SE18 в точке расширения /SBIS/ES_SAPPER
"ENHANCEMENT_SHOW_WINDOW_BEFORE"
Предназначено для вызова алгоритмов до появления экрана загрузки документа
Место вызова
Вызывается из метода /SBIS/CL_CREATE_SAP_DOCUMENTS=>CALL_WINDOW
Параметры вызова
Входные параметры:
- IO_EXCHANGE - класс способа обмена типа /SBIS/IF_EXCHANGE
- IT_SETTINGS - таблица с текущими настройками типа /SBIS/T_SETTINGS
- IT_MATERIALS - таблица сопоставленной номенклатуры типа /SBIS/T_MATERIALS
- IS_ATTACHMENT - структура загружаемое вложение типа /SBIS/S_API2_ATTACHMENT
- IS_PACKET - структура загружаемый документ типа /SBIS/S_API2_PACKET
Изменяемые параметры:
- CS_XML_DATA - структура xml документа типа /SBIS/S_FULL_ATTACHMENT
Способ вызова
В настройках в разделе для загружаемого документа необходимо указать имя наименование точки прерывания и имя ФМ, который будет вызываться. Например, для ФМ "/SBIS/FM_EI_SWB_DOC_PURCHASING" настройка будет выглядеть вот так:
{
"Имя": "MISSED_FIELDS_FUNCTION",
"Значение": [
{
"Имя": "MISSED_FIELDS_FUNCTION_NAME",
"Значение": "/SBIS/FM_CREATE_SAP_DOC"
},
{
"Имя": "ENHANCEMENT_SHOW_WINDOW_BEFORE",
"Значение": [
{
"Имя": "ENHANCEMENT_1",
"Значение": [
{
"Имя": "FUNCTION_NAME",
"Значение": "/SBIS/FM_EI_SWB_DOC_PURCHASING"
}
]
}
]
}
]
}
"ENHANCEMENT_SHOW_WINDOW_AFTER"
Предназначено для вызова алгоритмов после экрана загрузки документов.
Место вызова
Вызывается из метода /SBIS/CL_CREATE_SAP_DOCUMENTS=>CALL_WINDOW
Параметры вызова
Входные параметры:
- IO_EXCHANGE - класс способа обмена типа /SBIS/IF_EXCHANGE
- IT_SETTINGS - таблица с текущими настройками типа /SBIS/T_SETTINGS
- IT_MATERIALS - таблица сопоставленной номенклатуры типа /SBIS/T_MATERIALS
- IS_ATTACHMENT - структура загружаемое вложение типа /SBIS/S_API2_ATTACHMENT
- IS_PACKET - структура загружаемый документ типа /SBIS/S_API2_PACKET
Изменяемые параметры:
- CS_XML_DATA - структура xml документа типа /SBIS/S_FULL_ATTACHMENT
Способ вызова
В настройках в разделе для загружаемого документа необходимо указать имя наименование точки прерывания и имя ФМ, который будет вызываться. Например, для ФМ "/SBIS/FM_EI_SWA_DOC_PURCHASING" настройка будет выглядеть вот так:
{
"Имя": "MISSED_FIELDS_FUNCTION",
"Значение": [
{
"Имя": "MISSED_FIELDS_FUNCTION_NAME",
"Значение": "/SBIS/FM_CREATE_SAP_DOC"
},
{
"Имя": "ENHANCEMENT_SHOW_WINDOW_AFTER",
"Значение": [
{
"Имя": "ENHANCEMENT_1",
"Значение": [
{
"Имя": "FUNCTION_NAME",
"Значение": "/SBIS/FM_EI_SWA_DOC_PURCHASING"
}
]
}
]
}
]
}