Setando Porta Dinamica - EDI
segunda-feira, 2 de dezembro de 2013
|
|
Olá Pessoal.
Hoje vou falar sobre setar porta dinamica para enviar uma mensagem EDI dentro da orchestration. Já postei aqui um pouco sobre o EDI.
Considerem o seguinte cenario:
Então eu estou usando uma porta dinamica comum dentro da orchestration e que poderia setar dessa forma.
Até aqui nenhuma novidade, o problema é que o sistema Interno só aceita EDIFACT, e dessa forma eu não estou usando os Agreements configurados no Console do Biztalk.
Então a mensagem não setava corretamente o parceiro, sendo gravada no diretório dinamico dessa maneira:
Notem o BTS-SENDER e o RECEIVE-PARTNER.
Isso quer dizer que o Biztalk não identificou o parceiro daquela mensagem, e jogou o parceiro padrão do sistema.
Para evitar isso devemos setar também o parceiro na mensagem. Segue:
Essas propriedades EDI para serem acessadas, é preciso adicionar a referencia Microsoft.BizTalk.Edi.BaseArtifacts.dll, ao projeto. Segue o caminho disponivel:
Segue a mensagem de saída com o parceiro configurado e garantido que está usando o Agreement.
Referencia: http://blogs.msdn.com/b/biztalkb2b/archive/2007/02/12/key-new-feature-in-february-ctp.aspx
É isso, Até a próxima.
E você? Já ajudou a comunidade hoje?
Hoje vou falar sobre setar porta dinamica para enviar uma mensagem EDI dentro da orchestration. Já postei aqui um pouco sobre o EDI.
Considerem o seguinte cenario:
- FABRIKAM envia a mensagem EDIFACT para CONTOSO.
- CONTOSO por sua vez recebe essa mensagem e faz algum processamento.
- CONTOSO envia mensagem EDIFACT para diretório dinamico, para ser processada por sistema Interno.
Então eu estou usando uma porta dinamica comum dentro da orchestration e que poderia setar dessa forma.
port_Dynamic_EDIFACT(Microsoft.XLANGs.BaseTypes.Address) = @"file://"+strPath+\\%SourceFileName%;
Então a mensagem não setava corretamente o parceiro, sendo gravada no diretório dinamico dessa maneira:
Notem o BTS-SENDER e o RECEIVE-PARTNER.
Isso quer dizer que o Biztalk não identificou o parceiro daquela mensagem, e jogou o parceiro padrão do sistema.
Para evitar isso devemos setar também o parceiro na mensagem. Segue:
1: msgOUT = msgIN;
2:
3: Port_2(Microsoft.XLANGs.BaseTypes.Address) = @"file://C:\\Ruth\\%SourceFileName%";
4:
5: msgOUT(EDI.DestinationPartySenderIdentifier) = "7654321";
6: msgOUT(EDI.DestinationPartySenderQualifier) = "";
7: msgOUT(EDI.DestinationPartyReceiverIdentifier) = "1234567";
8: msgOUT(EDI.DestinationPartyReceiverQualifier) = "";
Essas propriedades EDI para serem acessadas, é preciso adicionar a referencia Microsoft.BizTalk.Edi.BaseArtifacts.dll, ao projeto. Segue o caminho disponivel:
C:\Windows\assembly\GAC_MSIL\Microsoft.BizTalk.Edi.BaseArtifacts\3.0.1.0__31bf3856ad364e35\Microsoft.BizTalk.Edi.BaseArtifacts.dll
Referencia: http://blogs.msdn.com/b/biztalkb2b/archive/2007/02/12/key-new-feature-in-february-ctp.aspx
É isso, Até a próxima.
E você? Já ajudou a comunidade hoje?
Seja o primeiro a comentar ;)
Postar um comentário