Bonjour ,
sans doute vous serez face a la situation ou vous avez beaucoup Send/Receive Ports dans votre Application ,est vous avez besoin de récupérer ces informations rapidement .
ce petit Post vous donne une maniéré rapide pour attaquer la base de données BizTalkMgmtDb directement.
NB: les requêtes ne sont pas optimisées , je vous laisse le choix de les mouler comme vous le souhaiter :)
- Receive Ports Informations :
SELECT DISTINCT
adm_Host.Name AS Host, adm_Adapter.Name AS transporttype, bts_receiveport.nvcName AS [Receive port name],
adm_ReceiveLocation.Name AS [Receive Location]
FROM bts_receiveport INNER JOIN
adm_ReceiveLocation ON bts_receiveport.nID = adm_ReceiveLocation.ReceivePortId INNER JOIN
adm_Adapter INNER JOIN
adm_ReceiveHandler ON adm_Adapter.Id = adm_ReceiveHandler.AdapterId INNER JOIN
adm_Host ON adm_ReceiveHandler.HostId = adm_Host.Id ON adm_ReceiveLocation.AdapterId = adm_Adapter.Id AND
adm_ReceiveLocation.ReceiveHandlerId = adm_ReceiveHandler.Id
- Sends Port Informations :
SELECT DISTINCT adm_Host.Name AS Host, adm_Adapter.Name AS transporttype, bts_sendport.nvcName AS [Send Port], bts_sendport_transport.nvcAddress AS Adresse
FROM adm_Adapter INNER JOIN
adm_SendHandler ON adm_Adapter.Id = adm_SendHandler.AdapterId INNER JOIN
bts_sendport INNER JOIN
bts_sendport_transport ON bts_sendport.nID = bts_sendport_transport.nSendPortID ON adm_Adapter.Id = bts_sendport_transport.nTransportTypeId AND
adm_SendHandler.Id = bts_sendport_transport.nSendHandlerID INNER JOIN
adm_Host ON adm_SendHandler.HostId = adm_Host.Id