title: SQL Server linked server error "The partner transaction manager has disabled its support for remote/network transactions."
body: <p>I have a linked server (SQL Server 14.0.1000.169). The local server (SQL Server 10.0.1600) receives data in short periods of time, around 1 new row per minute, into <code>Table46</code>. I need to pass some of the information of this new row to the linked server, so I created a trigger in the local server for this:</p>
  
  <pre><code>CREATE TRIGGER New_Event 
  ON  dbo.Table46 FOR INSERT AS 
  BEGIN
      SET NOCOUNT ON;
      INSERT INTO [LinkedServer].[Database].[dbo].[TableEvents]
      SELECT    i.[046_ID] AS [id]
              , NP.NoPart + ' ' + CONVERT(VARCHAR(3), T41.[041_No]) AS [name]
              , DATEADD(MINUTE, -1 * i.[046_ExeTime], i.[046_DateTime]) AS [eventstart]
              , i.[046_DateTime] AS [eventend]
              , i.[046_IDRes] AS [resource_id]
              , i.[046_ExeTime] AS [execution]
              , ISNULL(MIN(T48.[048_MachTime]), 0) AS [same]
              , ISNULL(MIN(T48_1.[048_MachTime]), 0) AS [all]
              , i.[046_Pallet] AS [pallet]
      FROM inserted AS i
          INNER JOIN Table41 AS T41
              ON i.[046_IDOp] = T41.[041_IDOp]
          INNER JOIN NoParts AS NP
              ON T41.[041_IDNoPart] = NP.Autonumber
          INNER JOIN Table48 AS T48
              ON i.[046_IDRes] = T48.[048_IDRes]
              AND i.[046_IDOp] = T48.[048_IDOp]
          INNER JOIN Table48 AS T48_1
              ON i.[046_IDOp] = T48_1.[048_IDOp]
      GROUP BY i.[046_ID], NP.NoPart, T41.[041_No], i.[046_MachTime], 
              i.[046_DateTime], i.[046_IDRes], i.[046_ExeTime], i.[046_Pallet];
  END;
  </code></pre>
  
  <p>The original query after the <code>INSERT INTO</code> works, I just changed <code>Table46</code> for the <code>inserted</code> virtual table because of the trigger.</p>
  
  <p><strong>Edit 1:</strong></p>
  
  <p>If I add a new row manually to <code>Table46</code> I get the following error (already started MSDTC service):</p>
  
  <pre><code>OLE DB provider "SQLNCLI10" for linked server "[LinkedServer]" returned message "The partner transaction manager has disabled its support for remote/network transactions.".
  Msg 7391, Level 16, State 2, Procedure New_Event, Line 5 [Batch Start Line 15]
  The operation could not be performed because OLE DB provider "SQLNCLI10" for linked server "[LinkedServer]" was unable to begin a distributed transaction.
  </code></pre>
  
  <p><strong>Edit 2:</strong></p>
  
  <p>I have followed <a href="https://ask.sqlservercentral.com/questions/19813/linked-server-error-the-partner-transaction-manage.html" rel="nofollow noreferrer">these instructions</a> and also allowed MSDTC inbound rules in the Firewall of both servers but now if I try to add the row the query takes a lot of time executing, it hasn't finished yet. The same is happening with a <code>SELECT</code> query to <code>Table46</code>.</p>
  
  <p>What are other ways to insert in the remote server whenever <code>Table46</code> receives a new row, if triggers don't work?</p>