Назначение компонентов интеграции¶
Объекты словаря¶
Таблица сопоставления документов xDE и SAP¶
/TRL/XDE_UTD_ID
Таблица предназначена для сопоставления GUID отправки SAP и ключей документов в журналах
J3RFUTDOUT
,J3RFUTDIN
. Предоставляет однозначное соответствие между документами.
Поле |
Элемент данных |
Ключ |
Описание |
---|---|---|---|
RECORD_ID |
/TRL/XDE_ED_RECORD_ID_EXT |
X |
TerraLink xDE GUID отправки SAP |
.INCLU-_DI |
J_3RF_REGINV_KEY |
Составной ключ журнала электронных счетов-фактур |
|
BUKRS_DI |
BUKRS |
Балансовая единица |
|
GJAHR_IN_DI |
GJAHR |
Финансовый год |
|
NUM_IN_DI |
NUM10 |
Номер (10-значный) |
|
BELNR_ORIG_DI |
J_3RFINV_ORIGS |
Номер исходного счета-фактуры |
|
GJAHR_ORIG_DI |
J_3RFINV_ORIGY |
Год исходного счета-фактуры |
|
BELNR_CORR_DI |
J_3RFINV_CORRS |
Номер корректировочного счета-фактуры |
|
GJAHR_CORR_DI |
J_3RFINV_CORRY |
Год корректировочного счета-фактуры |
|
REVNO_DI |
J_3RFINV_REVNO |
Номер исправления |
|
.INCLU-_TG |
J_3RF_RG_FILE_KEY |
Составной ключ журнала актов |
|
.INCLUDE |
J_3RF_REGTORG_KEY |
Electronic Documents Journal Key |
|
BUKRS |
BUKRS |
Балансовая единица |
|
GJAHR |
J_3RFTG_DOCJR_YEAR |
Год документа |
|
NUM |
J_3RFTG_NUM |
Номер электронного документа |
|
.INCLUDE |
J_3RF_RG_FILE_DATA |
Electronic Documents Key Data |
|
JTYPE |
J_3RF_DI_JOURNAL_TYPE |
Вид документа |
|
DOC_TYPE |
J_3RF_DI_DOCTYPE |
Вид документа электронного счета |
|
POS |
J_3RF_RG_FILE_POS |
Позиция файла |
|
STATUS |
/TRL/XDE_ED_STATUS |
TerraLink xDE Код статуса отправки |
|
VBELN |
VBELN |
Номер документа сбыта |
В общем случае, при отправке документа или получении статуса по документу, в этой таблице находится нужный документ по соответствующему составному ключу журнала электронных документов и GUID отправки в xDE.
Важно
Документы СЧФ, СЧФДОП, КСЧФ, КСЧФДОП хранятся в архиве SAP –
J_3RFDI_ARC
и для них заполняется ключ J_3RF_REGINV_KEY.Документы ДОП хранятся в архиве –
J_3RF_RGTORG_IFS
и для них заполняется ключ J_3RF_RG_FILE_KEY.Для входящих документов такого типа будут заполнены поля составного ключа J_3RF_REGINV_KEY –
BUKRS_DI
,GJAHR_IN_DI
,NUM_IN_DI

Для исходящих документов этих же типов будут заполнены поля составного ключа J_3RF_REGINV_KEY – BUKRS_DI, BELNR_ORIG_DI, GJAHR_ORIG_DI, REVNO_DI. Если фактура корректировочная, то дополнительно будут заполнены BELNR_CORR_DI и GJAHR_CORR_DI.
Для документов типа ДОП заполняется другой ключ J_3RF_RG_FILE_KEY – поля BUKRS, GJAHR, NUM, JTYPE, DOC_TYPE, POS. В большинстве случаев однозначно документ можно определить по первой части ключа - J_3RF_REGTORG_KEY.

Важно
Ключи J_3RF_REGINV_KEY и J_3RF_RG_FILE_KEY не могут быть заполнены одновременно.
Таблица переключения доработок¶
/TRL/XDE_UTD_SW
таблица имеет ракурс ведения и предназначена
для включения и выключения определенных доработок.
Указывается класс и метод, содержащий доработку, флаг управляет работой этого метода.
В случае если флаг пуст, логика указанного метода выполнена не будет.

Структура для отображения статусов в журналах¶
/TRL/XDE_S_UTD_ADD_STATUS
Структура содержит два поля:
код статуса отправки xDE;
наименование статуса отправки xDE.
Предназначена для отображения статусов xDE в журналах J3RFUTDOUT
,
J3RFUTDIN
. Статусы получаются из заголовка отправки xDE. Заполнение
происходит в публичных методах UTDO_SELECT_DATA
и UTDI_SELECT_DATA
класса /TRL/XDE_CL_UTD_PROCESSING
.
Для отображения статусов необходимо добавить APPEND структуры в стандартные структуры SAP и включить туда данную структуру в виде INCLUDE:
J_3RF_RG_FILE_DATA
J_3RF_RG_FILE_DATA
Само заполнение любых доп. полей происходит в реализации расширения BADI
J_3R_REGINV_BADI
. Таким образом, для корректного отображения статусов
xDE необходимо в реализацию вышеуказанной BADI у заказчика добавить
вызов static методов UTDO_SELECT_DATA
и UTDI_SELECT_DATA
класса
/TRL/XDE_CL_UTD_PROCESSING
в соответствующие методы BADI реализации.
Библиотека классов¶
Класс реализации интеграции¶
/TRL/XDE_CL_UTD_PROCESSING
Класс реализует работу интеграции xDE продукта и SAP UTD.
Атрибуты класса /TRL/XDE_CL_UTD_PROCESSING
.
Атрибут |
Вид |
Видимость |
Нач. Знач. |
Описание |
---|---|---|---|---|
MC_LOG_OBJ |
Constant |
Public |
«RU_XMLINV» |
Журнал приложений – имя объекта SLG |
MC_MSGID |
Constant |
Public |
«/TRL/XDE_UTD» |
Имя класса сообщений |
GO_SWITCH |
Static Attribute |
Public |
Объект локального класса |
|
MC_ENCODING |
Constant |
Private |
«XML_ENCODING_FTS» |
Имя настройки для получения кодировки |
MC_REGINV_KEY |
Constant |
Private |
«J_3RF_REGINV_KEY» |
Имя структуры ключа журнала счф |
MC_RG_FILE_KEY |
Constant |
Private |
«J_3RF_REGTORG_KEY» |
Имя структуры ключа журнала актов |
MC_SWITCH_SETTING_NAME |
Constant |
Private |
«UTD_INTEGRATION» |
Имя настройки /TRL/XDE_CU ST |
MC_XML_EXT |
Constant |
Private |
«XML» |
Расширение |
GRT_DOC_TAB |
Static Attribute |
Private |
Таблица документов для класса CL_J3RF_DIGINV_PROCESSOR |
|
GT_R_DOC_TYPES |
Static Attribute |
Private |
Набор типов документов |
|
GV_SKIP_CHECK |
Static Attribute |
Private |
Флаг отключения проверки при постановке в очередь отправки из UTD |
|
GV_STATE |
Static Attribute |
Private |
Не используется |
|
MV_DYN_PROG_NAME |
Static Attribute |
Private |
Имя ABAP-программы |
Метод |
Вид |
Видимость |
Описание |
---|---|---|---|
ADD_DOCUMENT_BY_DOC_TAB |
Static Method |
Public |
Добавление документа после обработки в UTD |
CONV_DTYPE_TO_SRC_TYPE |
Static Method |
Public |
XDE тип документа -> UTD тип документа |
CRUTCH_DOC_ORIG_NAME |
Static Method |
Public |
Работа с атрибутом «НаимДокОпр» |
CRUTCH_IN_BUYTL_REPLACER |
Static Method |
Public |
Замена местами отпр. и пол. в титуле получателя |
CRUTCH_IN_KORBUYTL_REPLACER |
Static Method |
Public |
Замена местами отпр. и пол. в титуле КОРР получателя |
CRUTCH_UPD_PRANNUL_FILENAME |
Static Method |
Public |
Изменение имени файла PRANNUL на реально отправленное |
GET_DOCUMENTS |
Static Method |
Public |
Получение всех документов, ранее добавленных в рамках процесса |
GET_SKIP_FLAG |
Static Method |
Public |
Получение флага пропуска проверки наличия в UTD при отправке |
INTEGRATION_SWITCH |
Static Method |
Public |
Проверка параметра вкл./выкл. интеграции |
SM30_BOX_UPDATE |
Static Method |
Public |
Обновление данных ящиков по данным /TRL/XDE_BOX_ID |
UTDI_SELECT_DATA |
Static Method |
Public |
Вх. журнал доп. статусы |
UTDO_SELECT_DATA |
Static Method |
Public |
Исх. журнал доп. статусы |
UTD_DOCUMENT_CHECK |
Static Method |
Public |
Проверка наличия документа в журнале UTD |
UTD_RECEIVE |
Static Method |
Public |
Получение документов |
UTD_SEND |
Static Method |
Public |
Кнопка Отправить… |
UTD_SIGN |
Static Method |
Public |
Кнопка Подписать… |
UPDATE_DB_TAB |
Static Method |
Protected |
Обновить таблицу |
ADD_DOCUMENT_BY_LINK |
Static Method |
Private |
Добавление документа из архива в атрибут по ссылке LINK |
ADD_LOG_ENTRY |
Static Method |
Private |
Добавление сообщения в лог RU_XMLINV |
ANNULMENT_REQ |
Static Method |
Private |
Запрос на аннулирование |
BO_GET_PARTNERS |
Static Method |
Private |
/TRL/XDE_API_BO_GET_PARTNERS |
CONV_DOC_TYPE_BY_REC_ID |
Static Method |
Private |
Получение типа документа по RECORD_ID |
CONV_SRC_TYPE_TO_DTYPE |
Static Method |
Private |
UTD тип документа -> XDE тип документа |
CRUTCH_UVTOUCH |
Static Method |
Private |
Допобработка уведомления об уточнении |
DYNAMIC_COND_PREPARE |
Static Method |
Private |
Подготовка динамического условия для выборки |
FIND_COMMENT |
Static Method |
Private |
Поиск комментария в документе |
GET_ARC_KEY_STRUCT |
Static Method |
Private |
Получение ключа архива документов SAP |
GET_BOX |
Static Method |
Private |
Получение данных ящиков |
GET_CCODE_BY_FILENAME |
Static Method |
Private |
Получение БЕ по имени файла |
GET_CODEPAGE |
Static Method |
Private |
Получение кодировки документа XML |
GET_DOC_BY_FILENAME |
Static Method |
Private |
Получение ключа документа в архивах по имени файла |
GET_OPERATOR_ID |
Static Method |
Private |
Получение ИдОператора по XML |
GET_SHIPMENTS |
Static Method |
Private |
Вызов /TRL/XDE_API_SHIPM_GET_DATA |
GET_VBELN |
Static Method |
Private |
Поиск фактуры по ключу журналов UTDINV и TG |
POPUP_QUESTION |
Static Method |
Private |
Вывод всплывающего окна |
READ_JOURNAL_LAST_STATUS |
Static Method |
Private |
Получение последнего статуса замены оператора |
SELECT_DOCS |
Static Method |
Private |
Выбор документов из /trl/xde_utd_id по ключу документа |
SET_SIGNER_IN_XML |
Static Method |
Private |
Не используется |
SET_STATUS |
Static Method |
Private |
R1->R |
SHIPM_OUT_ADD |
Static Method |
Private |
Постановка в очередь отправки R1 |
SHIPM_SEND_AGAIN |
Static Method |
Private |
Для статусов WV1->WV и WX1->WX |
SHIPM_SIGN_IN |
Static Method |
Private |
Подтверждение/Отклонение аннулирования |
UPDATE_DB_KEY_PREPARE |
Static Method |
Private |
Подготовка ключа для табл. /TRL/XDE_UTD_ID |
UPDATE_DB_UPDATE |
Static Method |
Private |
Запись строки в табл. /TRL/XDE_UTD_ID |
UPDATE_DB_UTD_DOCS |
Static Method |
Private |
Обновление статусов в журналах UTD |
Группа функций¶
Группа функций для работы с интеграцией¶
/TRL/FG_XDE_UDT
- группа функций служит в качестве обёртки для класса
/TRL/XDE_CL_UTD_PROCESSING и соответствующих методов этого класса.
/TRL/XDE_RECEIVE_FOR_UTD
- /trl/xde_cl_utd_processing=>utd_receive
Примечание
ФМ запустит метод utd_receive только в случае, если настройка UTD_INTEGRATION включена в /TRL/XDE_CUST
/TRL/XDE_SEND_FOR_UTD
- /trl/xde_cl_utd_processing=>utd_send/TRL/XDE_SIGN_FOR_UTD
- /trl/xde_cl_utd_processing=>utd_sign
ФМ проверки существования документа в стандартных журналах SAP¶
/TRL/XDE_UTD_DOCUMENT_CHECK
Функциональный модуль предназначен для проверки уже существующего
документа в UTD, при вызове диалога из GOS меню транзакции VF02/VF03.
Если документ уже присутствует в SAP UTD, то отправку документа следует
производить из журнала электронных счетов-фактур J3RFUTDOUT
,
соответствующая ошибка будет выведена в диалоговом окне отправки
документа тр. VF02/VF03.
Для пропуска этой проверки в рамках работы с SAP UTD, при подписании
документа и постановке в очередь отправки в xDE продукт, используется
атрибут SKIP_CHECK
класса /TRL/XDE_CL_UTD_PROCESSING
,
и работа этого ФМ пропускается при работе с UTD.
Классы сообщений¶
/TRL/XDE_UTD
- Класс текстовых сообщений для записи корректных текстов в лог RU_XMLINV.
Транзакции¶
Автоматическое обновление ящиков дебиторов¶
/TRL/XDE_BOX_UPDATE
Транзакция позволяет настроить ракурсы с ящиками операторов дебиторов и
кредиторов автоматически.
xDE->SAP позволяет по настройкам /TRL/XDE_BOX_ID настроить все ракурсы SAP UTD
SAP->xDE позволяет настроить по ракурсам SAP UTD таблицу /TRL/XDE_BOX_ID

Синхронизация статусов документов¶
/TRL/XDE_DOCS_SYNC
Транзакция предназначена для получения корректных статусов по
отправлениям, в случае, если они отличаются от статусов в xDE продукте.
Выбирать документы можно как по номерам xDE, так и по номерам документов UTD.
