Biztalk - puedo cambiar el puerto de una ubicación de recepción existente reciben?
-
19-09-2019 - |
Pregunta
Tengo dos diferentes puertos de recepción y dos ubicaciones de recepción - un lugar asignado a cada puerto. Los puertos se configuran para recibir exactamente el mismo tipo de archivo -. Terminé con tanto porque Consolidé dos aplicaciones diferentes que hicieron lo mismo
quiero combinar ambos lugares en un solo puerto de recepción, pero no parecen ser capaces de cambiar la ubicación que pertenece a cualquiera - no hay opción para hacer esto que puedo encontrar. Esencialmente, sólo quiero tomar un solo lugar. (Ya sea - no me importa), y asignarlo a otro puerto, por lo que un puerto tiene dos lugares y el otro tiene ninguna
¿Alguien sabe de una manera de cambiar el puerto de una ubicación existente reciben?
Solución
recurrí al lado oscuro, y se actualiza la tabla de SQL manualmente. Todavía daría la bienvenida a cualquier persona que tenga una forma legítima, con el apoyo para hacer esto, pero a cualquier otras personas que necesitan una respuesta, aquí está el guión que escribí para solucionar este problema (no hay efectos secundarios hasta ahora, a pesar de que sólo ha pasado un día) :
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
Otros consejos
Por favor, no intente este tipo de cambios de SQL directas en las bases de datos del sistema de BizTalk. Siempre se utiliza la API del proporcionado por Microsoft.
Trate ya sea la ExplorerOM o WMI para hacer tales cambios de configuración. http://msdn.microsoft.com /en-us/library/microsoft.biztalk.explorerom.receiveport_members(v=bts.10 ) http://msdn.microsoft.com/en- es / library / ee277482 (v = bts.10) .aspx
Si en el caso de realizar cambios directos DB y aumentar el apoyo Microsoft, que no apoyarán a él.