Если присвоение класса проходит без ошибок, то
Code:
set update task local.
BAPI_EQUI_CREATE.
BAPI_OBJCL_CREATE.
commit.
работает корректно.
Описанная ситуация возникает только в случае ошибки при присвоении классов/признаков (через BAPI_OBJCL_CREATE).
Может быть непонятно описал проблему, попробую по другому.
Есть файл, в нем 2 строки, в каждой данные о единице оборудования.
Запускаем Z-программу загрузки.
В ней единицы оборудования из файла обрабатываются построчно, выполняются в цикле следующие операции.
Для ЕО из 1 строки.
Code:
BAPI_EQUI_CREATE. - успешно
BAPI_OBJCL_CREATE. - ошибка
BAPI_TRANSACTION_ROLLBACK.
Переходим к ЕО из 2 строки.
Code:
BAPI_EQUI_CREATE. - успешно
BAPI_OBJCL_CREATE. - успешно
BAPI_TRANSACTION_COMMIT.
В результате в системе создается ЕО, в которой информация основных полей из 1 строки файла, а информация о классификации - из 2 (хотя данные на вход ФМ подаются корректные).