我有两个不同的接收端口和两个接收位置 - 分配给每个端口的一个位置。这些端口设置为接收完全相同的类型的文件 - 我结束了两个,因为我认为合并做同样的事情两个不同的应用

我想这两个位置合并成一个单一的接收端口,但我似乎并没有能够改变位置,要么属于 - 没有选择这样做,我可以找到。从本质上讲,我只是想好好一个位置。(无论是 - 我不关心),并将其分配给其他端口,这样一个端口有两个位置,而另一个具有无

是否有人知道的方式来改变接收现有的位置的端口?

有帮助吗?

解决方案

我使出了暗侧,和手动更新SQL表。我仍然欢迎任何人谁拥有合法的,支持的方式做到这一点,但谁需要一个答案的任何人,这里是我写来解决这个问题的脚本(到目前为止,还没有副作用,但它只有一天) :

DECLARE @AppName             VARCHAR(255),
        @ReceiveLocationName VARCHAR(255),
        @NewReceivePortName  VARCHAR(255)

SET @AppName = 'Your application name'
SET @ReceiveLocationName = 'Name of your existing receive location'
SET @NewReceivePortName = 'Name of receive port to move location to'

DECLARE @NewPortID INT
DECLARE @ReceiveLocationID INT

SELECT @NewPortID = rp.[nID]
  FROM [BizTalkMgmtDb].[dbo].[bts_application] a
  JOIN [BizTalkMgmtDb].[dbo].[bts_receiveport] rp
    ON a.nID = rp.nApplicationID
 WHERE a.nvcName = @AppName
   AND rp.nvcName = @NewReceivePortName

SELECT @ReceiveLocationID = Id
  FROM [BizTalkMgmtDb].[dbo].[adm_receivelocation]
 WHERE Name = @ReceiveLocationName

UPDATE [BizTalkMgmtDb].[dbo].[adm_receivelocation]
   SET ReceivePortId = @NewPortID,
       IsPrimary = 0
 WHERE Id = @ReceiveLocationID

其他提示

请不要试图在BizTalk系统数据库,SQL直接的变化。你总是使用微软提供的API的。

尝试要么ExplorerOM或WMI做任何这样的配置更改。 http://msdn.microsoft.com /en-us/library/microsoft.biztalk.explorerom.receiveport_members(v=bts.10 http://msdn.microsoft.com/en-我们/库/ ee277482(v = bts.10)的.aspx

如果万一您进行直接的DB变化和提高微软的支持,他们不会支持它。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top