Обработка внутренних ошибок
Внутренняя обработка ошибок SAP зависит от режима процесса транзакции, входящего в SAP.
Этот режим обработки задается в таблице ZBC_INBPROGRAMS в поле BDPR_MODE_ACT.
- Если в качестве режима процесса используется BDC, то функциональный модуль создает карту пакетного ввода.
- Если в качестве режима процесса используется BAPI, то функциональный модуль сохраняет запись в таблицах. Используйте программу ZBC_BAPI_ADMIN, чтобы повторно обработать эти ошибки.
Для обоих режимов обработки:
- Указанным получателям отправляется электронное сообщение, содержащие всю необходимую информацию об этой ошибке.
- Запись записывается в таблицу журнала ZBC_MSIF.
- Таблица RETURN обрабатывается так, чтобы она содержала только сообщение об успехе (RETURN-TYPE=S).
Карта пакетного ввода
Карта пакетного ввода содержит запись о входящем сеансе. Используйте код транзакции sm35, чтобы проверить эту карту и исправить ошибочные или вставить недостающие данные.
В конце этой карты транзакция передается в SAP.
Отчет ZBC_BAPIADMIN
Если внутренний процесс обработки ошибок использует BAPI для отправки данных в SAP, при ошибке в определенные таблицы помещается запись. Все процессы помещают в таблицу ZBC_BAPIADMIN запись с информацией о сообщении, индексе и об ошибке. Сами данные записываются в таблицу для конкретного процесса, на которую указывает значение индекса. Например, данные об ошибках рабочего задания записываются в ZBC_BAPI_WORKOR, данные об ошибках резервирования записываются в ZBC_BAPI_RESERV и так далее. Эти таблицы соответствуют структурам отправки данных в SAP.
Используйте отчет ZBC_BAPIADMIN, чтобы повторно обработать эти записи.
Конфигурирование отчета ZBC_BAPIADMIN
Первый экран этого отчета - это экран выбора, позволяющий фильтровать представление записей в таблице ZBC_BAPIADMIN.
На следующем экране показаны все выбранные записи в ZBC_BAPI_ADMIN.
Дважды щелкните по записи, чтобы перейти к таблице для конкретного процесса, в которой можно изменить данные (кроме некоторых ключевых полей), а также повторно обработать или удалить запись.
При повторной обработке записи сообщение в строке заголовка будет обновлено в случае возникновения последующей ошибки. Если запись будет повторно обработана успешно (или удалена вручную), эта запись удаляется из таблиц, и программа возвращается к предыдущему экрану со списком сообщений.
Таблицы для процессов ZBC_BAPI_XXXX
У каждого процесса есть еще одна таблица, в которой хранятся сообщения об ошибках. Они соответствуют структурам передачи данных (SAP-IR).
Процесс |
Таблица |
Имя структуры |
|---|---|---|
| Записи ГК | ZBC_BAPI_GLINVOI | ZBC_M2S_GLINVOICES |
| Инвойсы | ZBC_BAPI_INVOIC | ZBC_M2S_MMINVOICES |
| Отпуски | ZBC_BAPI_ISSUES | ZBC_M2S_ISSUES |
| Рабочие часы | ZBC_BAPI_LABHOUR | ZBC_M2S_LABORHOURS |
| Заказ на закупку | ZBC_BAPI_PURCHO | ZBC_M2S_PURCHASEORDER |
| Заявка на закупку | ZBC_BAPI_PURREQ | ZBC_M2S_PURCHASEREQ |
| Получение | ZBC_BAPI_RECEIP | ZBC_M2S_RECEIPTS |
| Резервирование | ZBC_BAPI_RESERV | ZBC_M2S_RESERVATIONS |
| Рабочее задание | ZBC_BAPI_WORKOR | ZBC_M2S_WORKORDERS |