Hi Rudy,
you can acheive this by reverting the bol buffer.
Afte the FM call 'BAPI_TRANSACTION_COMMIT', check sy-subrc. If it is ZERO, execute the below code else not.
* Read header Entity
lr_ent ?= me->typed_context->your context node name->collection_wrapper->get_current( ).
* get Transaction
lr_trans ?= lr_ent->get_transaction( ).
* Revert all changes
lr_trans->revert( ).
As you have already commited changes using 'BAPI_TRANSACTION_COMMIT'. Now revert will only bring the changes from the database again and will not affect your status changes which you made recently.
Please let me know, if you have any issues.
Regards,
Jotsaroop Singh