One of the line of business applications used by a few clients performs updates to both it’s own database and also the Microsoft Dynamics GP database. It does this using code in SQL stored procedures which use transaction boundaries.
As the updates are between SQL servers, it does this using BEGIN DISTRIBUTED TRANSACTION
rather than the usual BEGIN TRANSACTION
; updates of this sort are, as stated in the name, distributed and required the Distributed Transaction Coordinator (DTC) Windows component to be enabled, which it is not by default, on both servers.
However, enabling DTC is straightforward and quick to do. Launch Component Services and expand the nodes (
) and right click on Local DTC; select Properties:Select the Security tab and mark the following checkboxes:
- Network DTC Access
- Allow Inbound
- Allow Outbound
When you click OK you’ll be prompted to restart the service along with a warning that dependent services will also be stopped, but will need to manually restarted:
Once the DTC service has been restated, click OK to dismiss the message:
Once DTC has been enabled on both servers, distributed transactions can be processed.
What should we write about next?
If there is a topic which fits the typical ones of this site, which you would like to see me write about, please use the form, below, to submit your idea.