VENDAS: 1-800-867-1389

Migrando soluções EDI do BizTalk Server para os Serviços BizTalk: Guia Técnico

Atualizado: fevereiro de 2015

Autor: Tim Wieman e Nitin Mehrotra

Revisores: Karthik Bharthy

Escrito usando: Serviços BizTalk do Microsoft Azure – Versão de fevereiro de 2014.

O intercâmbio eletrônico de dados (EDI) é um dos meios mais utilizados pelas empresas para trocar dados eletronicamente, também conhecido como transações Business-to-Business ou B2B. O BizTalk Server teve suporte de EDI por mais de uma década, desde a versão inicial do BizTalk Server. Com o Serviços do BizTalk, a Microsoft continua oferecendo suporte às soluções EDI na plataforma do Microsoft Azure. As transações B2B, em sua maioria, são externas a uma organização, de modo que é fácil de implementar em uma plataforma de nuvem. O Microsoft Azure oferece esse recurso por meio do Serviços do BizTalk.

Embora alguns clientes considerem o Serviços do BizTalk uma plataforma de "ambiente intacto" para novas soluções EDI, vários clientes têm as soluções EDI atuais do BizTalk Server possivelmente necessárias para fazer a migração para o Azure. Como o Serviços do BizTalk foi projetado com base nas mesmas entidades chave da arquitetura EDI do BizTalk Server (parceiros comerciais, entidades, acordos), é possível migrar os artefatos EDI do BizTalk Server para o Serviços do BizTalk.

Este documento discute algumas diferenças envolvidas na migração de artefatos EDI do BizTalk Server para o Serviços do BizTalk. Este documento assume que há um conhecimento prático do processamento de EDI do BizTalk Server e que foram firmados acordos entre parceiros comerciais. Para obter mais informações sobre o EDI do BizTalk Server, consulte Gerenciamento de parceiros comerciais usando o BizTalk Server.

O módulo EDI do BizTalk Server foi significativamente aprimorado para o BizTalk Server 2010, quando foi remodelado para incluir parceiros, perfis e contratos. O Serviços do BizTalk usa o mesmo modelo para organizar os parceiros comerciais e as divisões de negócios nesses parceiros comerciais. Como resultado, migrar artefatos EDI do BizTalk Server 2010 e versões posteriores para o Serviços do BizTalk é um processo muito mais simples. Para migrar artefatos EDI associados a versões anteriores para o BizTalk Server 2010, atualize primeiro para o BizTalk Server 2010 e, depois, migre os artefatos EDI para o Serviços do BizTalk.

Como acontece com o BizTalk Server, o processamento do EDI no Serviços do BizTalk foi criado para uma solução de gerenciamento de parceiros comerciais (TPM). A solução TPM tem os seguintes componentes principais:

  • Parceiros comerciais, que representam a organização em uma transação B2B.

  • Perfis, que representam divisões em um parceiro comercial.

  • Acordos com parceiros comerciais (ou acordos), que representam o acordo comercial entre os dois parceiros/perfis.

A ilustração a seguir mostra as semelhanças e as diferenças entre uma solução EDI do BizTalk Server e a solução EDI do Serviços do BizTalk:

Fluxo de mensagens EDI- BizTalk Server & BizTalk Service

As principais diferenças e semelhanças entre um fluxo de solução EDI no BizTalk Server e nos Serviços do BizTalk são:

  • Assim como o BizTalk Server usa um pipeline EDIReceive para receber uma mensagem de EDI e um pipeline EDISend para enviar uma mensagem EDI, o Serviços do BizTalk usa uma ponte de recepção EDI para receber e ponte de envio EDI para enviar mensagens EDI. No BizTalk Server, os pipelines estão associados a um acordo usando portas de envio ou recebimento. Nos Serviços do BizTalk, o próprio acordo indica a ponte de envio ou recebimento.

  • No BizTalk Server, depois que o pipeline EDIReceive processa a mensagem EDI, a mensagem é despejada em um banco de dados do SQL Server. Em seguida, o pipeline EdiSend pega a mensagem do banco de dados do SQL Server, a processa e a envia para o parceiro comercial.

    No Serviços do BizTalk, depois que a ponte de recebimento EDI processa a mensagem EDI, ela encaminha a mensagem para um processo externo. O processo externo pode estar sendo executado no Microsoft Azure ou no local. O processo externo deve encaminhar a mensagem para a ponte de envio EDI; a ponte de envio não puxa a mensagem inerentemente. Depois de processar a mensagem, a ponte de envio EDI encaminha a mensagem para o parceiro comercial.

O Serviços do BizTalk oferece uma experiência de configuração fácil de usar para criar e implantar rapidamente um acordo de B2B entre parceiros comerciais, sem configurar nenhuma instância de computação do Microsoft Azure (funções Web ou de Trabalho), nenhum Banco de dados SQL do Microsoft Azures ou nenhuma conta de armazenamento do Microsoft Azure. Os cenários mais complexos exigirão a associação a fluxos de trabalho ou outro processamento de serviço "de última geração" de um acordo entre parceiros comerciais, ou seja, antes ou depois do processamento de ponte EDI do acordo. Em detalhe, as sequências de eventos a seguir ocorrem durante um processamento de mensagens EDI no Serviços do BizTalk.

  1. Uma mensagem EDI é recebida do parceiro comercial Fabrikam. Para receber mensagens EDI de parceiros comerciais, o Serviços do BizTalk oferece suporte a protocolos de transporte como FTP, SFTP, AS2 e HTTP/S.

  2. O processamento no lado de recebimento do acordo entre parceiros comerciais desmonta a mensagem EDI para o formato XML. Você pode encaminhar a mensagem EDI desmontada (no formato XML) para os pontos de extremidade Service Bus, como um ponto de extremidade de retransmissão Service Bus, tópico Service Bus, fila Service Bus ou uma ponte do Serviços do BizTalk.

  3. As mensagens XML desmontadas poderão, então, ser recebidas do ponto de extremidade para processamento personalizado posterior. Esses pontos de extremidade podem ser executados por um componente no local ou por uma instância de computação do Microsoft Azure para processar posteriormente a mensagem em um serviço Windows Workflow (WF) ou Windows Communication Foundation (WCF), por exemplo.

  4. O "processamento no lado do envio" do acordo entre parceiros comerciais monta a mensagem XML no formato EDI e a envia ao parceiro comercial Contoso. Para enviar mensagens EDI aos parceiros comerciais, o Serviços do BizTalk oferece suporte aos mesmos protocolos usados para receber mensagens EDI.

Este documento fornece mais orientações conceituais sobre a migração de alguns dos diferentes artefatos EDI do BizTalk Server para o Serviços do BizTalk.

No BizTalk Server, você configura os locais e as portas de recebimento para receber mensagens EDI/XML dos parceiros comerciais, e configura as portas de envio para enviar mensagens EDI/XML aos parceiros comerciais. Em seguida, você associa essas portas a um acordo entre parceiros comerciais usando o console de administração do BizTalk Server. No Serviços do BizTalk, os locais em que você recebe as mensagens dos parceiros comerciais e em que você envia as mensagens aos parceiros comerciais são configurados como parte do acordo do parceiro comercial em si (como parte das Configurações de Transporte) no Portal de Serviços do BizTalk. Portanto, na verdade, o conceito de "portas de envio" e "locais de recebimento" não existe no Serviços do BizTalk. Para obter mais informações, consulte Criando acordos.

No EDI do BizTalk Server, os pipelines são entidades de processamento de mensagens que podem também incluir lógica personalizada para recursos específicos de processamento, conforme exigido pelo aplicativo. Para o Serviços do BizTalk, o equivalente seria uma ponte EDI. Portanto, no Serviços do BizTalk, por enquanto, as pontes EDI estão "fechadas". Ou seja, você não pode adicionar suas próprias atividades personalizadas a uma ponte EDI. Qualquer processamento personalizado deve ser executado fora da ponte EDI no seu aplicativo, antes ou depois de a mensagem entrar na ponte configurada como parte do acordo entre parceiros comerciais. As pontes EAI permitem fazer o processamento personalizado. Se você quiser um processamento personalizado, use as pontes EAI antes ou depois de a mensagem ser processada pela ponte EDI. Para obter mais informações, consulte Usando código personalizado em pontes.

Você pode inserir um fluxo de publicações/assinaturas com código personalizado e/ou usando as filas e os tópicos de mensagens Service Bus antes que o acordo entre parceiros comerciais receba a mensagem, ou depois que o acordo processar a mensagem e encaminhá-la para um ponto de extremidade Service Bus.

Consulte Cenários/fluxo de mensagens para conhecer o padrão de fluxo de mensagens.

Se você estiver familiarizado com os acordos entre parceiros comerciais do BizTalk Server 2010 usados no processamento EDI, os acordos entre parceiros comerciais do Serviços do BizTalk lhe parecem velhos conhecidos. A maioria das configurações de acordo são idênticas e usam a mesma terminologia. Em alguns casos, as configurações de acordo são muito mais simples em comparação às mesmas configurações no BizTalk Server. O Serviços BizTalk do Microsoft Azure oferece suporte a X12, EDIFACT e transporte de AS2.

O Serviços BizTalk do Microsoft Azure também oferece uma ferramenta de TPM Data Migration para migrar parceiros comerciais e acordos do módulo de parceiros comerciais do BizTalk Server para o Portal de Serviços do BizTalk. A ferramenta TPM Data Migration está disponível como parte de um pacote Ferramentas, que pode ser baixado em http://go.microsoft.com/fwlink/?LinkId=235057. O pacote também inclui um arquivo Leiame que fornece instruções sobre como usar a ferramenta e informações básicas sobre solução de problemas da ferramenta.

O Serviços do BizTalk oferece esquemas EDI que podem ser usados nas soluções do Serviços do BizTalk. Além disso, os esquemas EDI do BizTalk Server também podem ser utilizados com o Serviços do BizTalk, porque o nó raiz do esquema EDI é o mesmo em todo o BizTalk Server, bem como no Serviços do BizTalk. Assim, você poderá levar diretamente os esquemas EDI do BizTalk Server e usá-los nas soluções EDI que você desenvolveu usando o Serviços do BizTalk. Baixe também os esquemas de http://go.microsoft.com/fwlink/?LinkId=235057.

Os mapas no BizTalk Server são chamados de Transformações no Serviços do BizTalk. Migrar mapas do BizTalk Server para o Serviços do BizTalk pode ser uma das tarefas mais complexas de executar (dependendo da complexidade do mapa). A ferramenta de mapeamento usada para o Serviços do BizTalk é diferente do mapeador do BizTalk. Mesmo que o mapeador pareça ser igual, o formato subjacente do mapa é diferente. As functoids (denominadas Operação de mapeamentos no Serviços do BizTalk) disponíveis para os usuários são diferentes também. Na verdade, você não pode usar diretamente um mapa do BizTalk no Serviços do BizTalk. Além disso, nem todas as functoids disponíveis no BizTalk Server estão disponíveis como operações de mapa no Serviços do BizTalk.

Embora a lista de operações de mapa Transformação disponíveis possa ser bastante diferente do mapeador do BizTalk Server, as transformações do Serviços do BizTalk têm novas maneiras de realizar as mesmas tarefas. Por exemplo, as transformações do Serviços do BizTalk têm operações de lista disponíveis. Esse recurso não estava disponível no mapeador do BizTalk. As operações de lista permitem criar e operar uma "Lista", na qual uma lista é um conjunto de itens (também conhecidos como "linhas") e cada item pode ter vários membros (também conhecidos como "colunas"). Você pode classificar a lista, selecionar os itens com base em uma condição etc.

Outro exemplo da nova funcionalidade nas transformações do Serviços do BizTalk são as operações de loop. É difícil criar loops aninhados no mapeador do BizTalk Server. Portanto, as operações de mapa Loop são adicionadas para as transformações do Serviços do BizTalk.

Um outro exemplo é a operação de mapa da expressão If-Then-Else. Uma operação if-then-else era possível no mapeador do BizTalk, mas exigia várias functoids para realizar uma tarefa aparentemente simples.

O Serviços BizTalk do Microsoft Azure fornece uma ferramenta para migrar mapas do BizTalk Server para as transformações do Serviços do BizTalk. O BTMMigrationTool está disponível como parte do pacote de Ferramentas fornecido com o SDK do Serviços do BizTalk e pode ser baixado de http://go.microsoft.com/fwlink/?LinkId=235057. Para obter mais informações sobre a ferramenta, consulte Converter um mapa do BizTalk em uma Transformação dos Serviços do BizTalk.

Você também pode conferir uma amostra por Sandro Pereira, MVP da BizTalk, sobre como migrar mapas do BizTalk Server para transformações do Serviços do BizTalk. A amostra está disponível aqui. Um artigo com base nessa amostra está disponível aqui.

Se você precisar migrar o processamento da orquestração do BizTalk Server para o Microsoft Azure, as orquestrações precisarão ser regravadas porque o Microsoft Azure não oferece suporte a orquestrações do BizTalk Server em execução. Você pode regravar a funcionalidade de orquestração em um serviço Windows Workflow Foundation 4.0 (WF4). Essa seria uma regravação completa, pois não há nenhuma migração de orquestrações do BizTalk Server para o WF4. Veja alguns recursos do Windows Workflow:

  • Como integrar um serviço de fluxo de trabalho WCF às filas e aos tópicos do Service Bus, por Paolo Salvatori. Consulte aqui (http://go.microsoft.com/fwlink/?LinkId=237313).

  • Sessão Criando aplicativos com o Windows Workflow Foundation e o Azure na conferência do Build 2011. Consulte aqui (http://go.microsoft.com/fwlink/?LinkId=237314).

  • Central de Desenvolvedores do Windows Workflow Foundation no MSDN. Consulte aqui (http://go.microsoft.com/fwlink/?LinkId=237315).

  • Documentação do Windows Workflow Foundation 4 (WF4) no MSDN. Consulte aqui (http://go.microsoft.com/fwlink/?LinkId=237316).

A seguir, veja algumas considerações que você deve fazer ao usar o Serviços do BizTalk.

O processamento de EDI do BizTalk Server tem o conceito de “Acordos de fallback”. O Serviços do BizTalk não tem um conceito de Acordos de fallback até agora. Consulte os tópicos de documentação do BizTalk A função dos acordos no processamento de EDI e Configurando propriedades de acordo global ou fallback para obter informações sobre como os acordos de fallback são usados no BizTalk Server.

As pontes do Serviços do BizTalk, em seu estado atual, não são compatíveis com o roteamento de mensagens para vários destinos usando um modelo de publicação/assinatura. Em vez disso, você pode encaminhar mensagens de uma ponte do Serviços do BizTalk para um tópico Service Bus, que pode, então, ter várias assinaturas para receber a mensagem em mais de um ponto de extremidade.

O Serviços BizTalk do Microsoft Azure é atualizado em etapas regulares para adicionar mais recursos e capacidades. A cada atualização, esperamos dar suporte a mais funcionalidades para facilitar a criação de soluções de ponta a ponta usando o Serviços do BizTalk e outras tecnologias do Azure.

Consulte também

Isso foi útil para você?
(1500 caracteres restantes)
Agradecemos os seus comentários
Mostrar:
© 2015 Microsoft