1

2 つの異なる受信ポートと 2 つの受信場所があり、各ポートに 1 つの場所が割り当てられています。ポートは、まったく同じタイプのファイルを受信するように設定されています。同じことを行う 2 つの異なるアプリケーションを統合したため、最終的に両方になりました。

両方の場所を 1 つの受信ポートに結合したいのですが、どちらかが属している場所を変更できないようです。これを行うオプションが見つかりません。基本的に、1 つの場所 (どちらでもかまいません) を取り、それを他のポートに割り当てて、1 つのポートに 2 つの場所があり、もう 1 つのポートには何もないようにしたいだけです。

誰かが既存の場所の受信ポートを変更する方法を知っていますか?

4

2 に答える 2

1

私は暗黒面に訴え、SQL テーブルを手動で更新しました。これを行うための正当でサポートされている方法を持っている人は誰でも歓迎しますが、回答が必要な他の人には、この問題を修正するために私が書いたスクリプトを示します (これまでのところ、副作用はありませんが、1日しか経っていません) :

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
于 2009-10-02T16:35:17.757 に答える
0

BizTalk システム データベースでこのような直接的な SQL 変更を試みないでください。Microsoft が提供する API を常に使用します。

このような構成変更を行うには、ExplorerOM または WMI を試してください。 http://msdn.microsoft.com/en-us/library/microsoft.biztalk.explorerom.receiveport_members(v=bts.10 ) http://msdn.microsoft.com/en-us/library/ee277482(v= bts.10).aspx

DB を直接変更して Microsoft のサポートを依頼した場合、彼らはそれをサポートしません。

于 2012-05-22T10:42:15.267 に答える