Friday 13 July 2018

Transaction integrity checking in D365

It is important to ensure the integrity of all transactions within the system. When a transaction begins, to ensure data consistency, it must finish completely with predictable results. If the transaction terminates in the middle, the system should roll back to its state before the transaction began. Use the Transaction Tracking System (tts) to help you ensure database integrity. 

The following keywords help in integrity checking:
ttsbegin – Indicates the beginning of the transaction.
ttscommit – Indicates the successful end of a transaction. This ensures the transaction performed as intended upon completion.
ttsabort – Used as an exception to abort and roll back a transaction to the state before the ttsbegin.

Nested ttsbegins and ttscommits are ignored in that a lock is held until the last ttscommit is reached. However the system does keep track of the tts level. Each time a ttsbegin is called, the tts level increases by one. Every ttscommit decreases the level by one. If possible you will want to make the tts blocks as small as required.  When a record is selected for update, it will lock the records or table to prevent another process from also modifying them.  The shorter the transaction block the less possibility for potential deadlocks.

No comments:

Post a Comment

Key Updates in Dynamics 365 F&O for Version 10.0.39

Here’s a concise summary of the  platform updates  in  Microsoft Dynamics 365 Finance & Operations version 10.0.39 (March 2024) : 1- Add...