Biztalk - могу ли я изменить порт приема существующего местоположения приема?

StackOverflow https://stackoverflow.com/questions/1510417

Вопрос

У меня есть два разных порта приема и два местоположения приема - каждому порту назначено по одному местоположению.Порты настроены на прием файлов точно такого же типа - в итоге я получил оба, потому что объединил два разных приложения, которые делали одно и то же.

Я хочу объединить оба местоположения в один порт приема, но, похоже, я не могу изменить местоположение, которому принадлежит любое из них - я не могу найти никакой возможности сделать это.По сути, я просто хочу взять одно местоположение (любое - мне все равно) и назначить его другому порту, чтобы у одного порта было два местоположения, а у другого - ни одного.

Кто-нибудь знает о способе изменить порт приема существующего местоположения?

Это было полезно?

Решение

Я прибегнул к темной стороне и обновил таблицу 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, предоставляемый корпорацией Майкрософт.

Попробуйте либо 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

Если в случае, если вы внесете прямые изменения в базу данных и обратитесь в службу поддержки Microsoft, они это не поддержат.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top