Turn off Transactional Processing in Catalina’s API for SL
Catalina’s API for Dynamics SL wraps saving of data into transactions which allows for “rollback” if there is an error. Meaning if there are multiple tables/records that are in a transaction, and an error occurs, everything will get rolled back as if nothing happened.
There are some times when there are problems with this. Mainly when some type of external force (like a trigger) updates the same data that Catalina is trying to save. This could cause table locking and not allow transactions to save properly. One way to get around this is to turn transactional processing off.
NOTE: Only do this in a test environment first. This should be done if other methods don’t work.
This is done easily by changing the web.config of ctDynamics SL. Search for the keyword “DISABLETRANSACTIONS”.
Once you have found the keyword, make sure that the value=”TRUE” and that will turn off transactions.
<add key="DISABLETRANSACTIONS" value="TRUE"/>
If you only want to disable the transactions on a single web service and not all of Catalina’s API, Keep the value of DISABLETRANSACTIONS to FALSE. But add a key to web.config similar to this:
<add key="PROJECTCHARGEENTRYDISABLETRANSACTIONS" value="TRUE"/>
The above will only disable transactions for the Project Charge Entry web service. The syntax is like this:
<serviceName> + “DISABLETRANSACTIONS“
So, if you wanted to disable transactions for customerMaintenance, the key would look like this:
<add key="CUSTOMERMAINTENANCEDISABLETRANSACTIONS" value="TRUE"/>