BizTalk - هل يمكنني تغيير ميناء تلقي موقع تلقي موجود؟
-
19-09-2019 - |
سؤال
لدي اثنين من المنافذ المختلفة تلقي واثنين من تلقي المواقع - موقع واحد معين لكل منفذ. يتم تعيين المنافذ لتلقي نفس النوع من الملفات بالضبط - انتهى بي الأمر مع حد سواء لأنني عززت اثنين من التطبيقات المختلفة التي فعلت نفس الشيء.
أريد الجمع بين كلتا الموقعين في منفذ تلقي واحد، لكنني لا يبدو لي أن أتمكن من تغيير الموقع الذي ينتمي إليه - لا يوجد خيار للقيام بذلك. في الأساس، أريد فقط أن أستأخذ موقعا واحدا (إما - لا أهتم)، ويعينه إلى المنفذ الآخر، بحيث يحتوي منفذ واحد على موقعين والآخر ليس له.
هل يعرف شخص ما بطريقة تغيير ميناء تلقي موقع موجود؟
المحلول
لجأت إلى الجانب المظلم، وتحديث جدول 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
نصائح أخرى
يرجى عدم محاولة تغييرات SQL المباشرة هذه في قواعد بيانات نظام BizTalk. يمكنك دائما استخدام API المقدمة من Microsoft.
حاول إما استغلال أو 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، فلن يدعمها.