06-27-2017 8:42 AM
Hi,
in many cases the COMMIT of a transaction is only done if changes are there.
Does the Transaction Manager (Standalone or save) take this into account? Or can/should this be done via the change object (get_transactional_changes)?
Are there any issues or things to consider (Performance, Locking, ...)?
Thanks a lot in advance.
Regards, Thomas.
07-03-2017 6:27 AM
I think BOPF transaction manager handles this together with the service managers. This means that all changes there are performed get recorded with the corresponding service managers(in case multiple BOs are involved). The 'Save' triggers the transaction manager which checks with the involved service managers(in that session) about the changes done.
Regards,
Suhas
07-07-2017 4:09 PM
Hi Suhas,
thanks for the reply, it would be fine, if the Framework takes care of it.
I would now like to extend my question to the following situation.
- We modify the BO instance an exit
- The central process calls the master slave transaction manager and all BOs (including ours) are saved
- Finally, the a COMMIT WORK persists the data.
Now, it can happen that the central process does not call the BOPF Transaction Manager and we have to ensure that changes to our BO will be saved. On the other hand, I do not get the information from the process, whether the TM is called or not.
Now, my extended question is:
Can the slave transaction manager be called twice? Or should I rather use the change object to find out whether there are still open changes?
Thanks a lot and best regards, Thomas.