Sapforum.Biz

Логистика => Техническое обслуживание и ремонт оборудования (PM) => Тема розпочата: X-Rey від Січень 18, 2013, 07:25:26 ДП

Назва: BAPI_EQUI_CREATE Проблема при загрузке ЕО.
Відправлено: X-Rey від Січень 18, 2013, 07:25:26 ДП
Коллеги, добрый день!

Возникла проблема с загрузкой единиц оборудования в систему.

В Z-программе в цикле происходят следующие операции:
1) Создание ЕО с помощью BAPI_EQUI_CREATE.
2) Присвоение ЕО класса с помощью BAPI_OBJCL_CREATE.
3) Если ошибок не было вызывается CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' EXPORTING WAIT = 'X'.
В случае ошибки вызывается BAPI_TRANSACTION_ROLLBACK.

Складывается следующая ситуация:
1) Отрабатывается BAPI_EQUI_CREATE (без ошибок).
2) Отрабатывается BAPI_OBJCL_CREATE, возникают ошибки, вызывается BAPI_TRANSACTION_ROLLBACK, но при этом информация об основных данных ЕО не откатывается, а сохраняется где-то во внутреннем буфере.
3) При повторении операций (создание и присвоение класса) со следующей ЕО ФМ отрабатываются без ошибок, НО основные данные ЕО берутся из предыдущей (хотя на вход подаются новые значения!).

Подскажите пожалуйста, как обойти сложившуюся ситуацию.
Назва: Re: BAPI_EQUI_CREATE Проблема при загрузке ЕО.
Відправлено: X-Rey від Січень 21, 2013, 03:50:20 ДП
Проблема решена.

После вызова BAPI_TRANSACTION_ROLLBACK необходимо вызывать ITOB_BUF_FREE.
Назва: Re: BAPI_EQUI_CREATE Проблема при загрузке ЕО.
Відправлено: Uukrul від Січень 21, 2013, 11:03:41 ДП
Цитата: X-Rey від Січень 21, 2013, 03:50:20 ДП
После вызова BAPI_TRANSACTION_ROLLBACK необходимо вызывать ITOB_BUF_FREE.
Это система ECC 6.0 похоже, так как я с ЕО работал в 4.6 и там не помню такой проблемы, хотя на создавался серийных номеров тогда по самое не хочу.