O conversor do EAI 1.0 para 2.0 tem por finalidade disponibilizar acesso às novas rotinas de integração, convergir os pacotes de integração para aplicativos integrados, migrar as informações presentes na base para o novo modelo de dados e realizar os ajustes de base de dados necessários para cada pacote de integração instalado no EAI.
Qualquer alteração realizada diretamente na tabela GEAICONFIG irá automaticamente bloquear todo o uso das ferramentas de integração do RM. Assim sendo, sempre utilize o RM para realizar qualquer configuração referente ao EAI. |
A versão miníma exigida do RM para a conversão ao EAI 2.0 é 12.1.29 e do Protheus 12.1.25 (Lobo Guará)
|
Clientes que tem por origem Stored devem garantir a correta conversão a versão do EAI 1.0 antes de realizar a conversão para o EAI 2.0. Por exemplo o correto carregamento de De/Para na tabela HCINTEGRACAOID. |
Gestão | Fórmula Visual | Fórmula Visual
Selecionar a Fórmulas
Inativar todas as Fórmulas
O acesso ao conversor de integrações é restrito a bases de dados que possuem o parâmetro de liberação, pois até o presente momento (fevereiro de 2019) ainda existem pacotes de integração não migrados para o EAI 2.0.
A análise de compatibilidade do cliente com o EAI 2.0 deve ser realizada pelo consultor de implantação ou analista de suporte, que deve considerar as características:
Caso após a análise acima seja constatado que o cliente é compatível com o EAI 2.0, deve-se solicitar ao suporte o script de liberação de acesso ao conversor.
Sem a execução deste script o menu de acesso não é visível no menu do RM. |
O processo de conversão está disponível no contexto de integrações, na árvore de menus de Mensagem Única.
O processo de conversão passa por 4 passos, melhor descritos nas sub-sessões a seguir.
A primeira etapa, consiste nos teste de comunicação dos serviços do Ambiente do Protheus. Basta informar a URL do Web Services e do serviços REST para testar a comunicação. Esta URL pode ser obtida do arquivo appserver.ini, onde é definido a porta do WSDL e a porta do REST mais o endereço do servidor, conforme os exemplos na imagem abaixo.
Nesta etapa, ao clicar no botão iniciar validações é onde a Api Rest "ShareModeRest" entra em ação para obter os compartilhamento das tabelas no Protheus.
Na imagem abaixo, segue exemplo de resultado de compartilhamentos das tabelas do Protheus.
Nesta etapa do processo de conversão é declarar-se ciente dos riscos e procedimentos de segurança.
Ao passar do segundo para o terceiro passo, o conversor tentará obter automaticamente (vide imagem abaixo) a informação do SourceApplication de cada pacote integrado a partir do envio de uma mensagem única Whois para o WebService parametrizado no pacote.
Em caso de falha ao tentar consultar o serviço Protheus será exibido o alerta abaixo, porém é possível prosseguir realizando o preenchimento manual da informação de SourceAplication
Logo após a consulta automática será apresentada a tela de parametrização da conversão, disponibilizando a lista de integrações a serem convertidas e a parametrização de mensagens a migrar para as novas tabelas.
Podemos observar que na imagem acima o pacote de integração não teve seu SourceApplication identificado automaticamente, devendo assim ser parametrizado de forma manual através do botão "Atualizar por Sistema Integrado".
O SourceApplication pode ser identificado a partir de uma Mensagem Única trafegada via EAI 1.0, copiando o conteúdo de uma Tag de mesmo nome. A informação do SourceAplicacion por padrão no Protheus é definida pelo nome do enviroment (P12) + grupo de empresa (01). Ou seja neste exemplo "P1201".
A rotina de conversão não migrará mensagens com sucesso para a nova estrutura de tabelas, ficando a cargo do consultor no momento da conversão definir se deve-se ou não importar as mensagens de erro. É aconselhável que todas as análises do ambiente 1.0 sejam realizadas previamente, tornando assim a conversão das mensagens de erro desnecessárias.
Após finalizar da conversão por parte do EAI (dados de integração) serão executados os processos de conversão específicos de cada pacote de integração.
A ocorrência de erro em um dos processos por pacote de integração não fará com que a conversão por parte do EAI seja desfeita, ficando a cargo do consultor responsável pela conversão realizar os ajustes necessários e executar novamente o processo em questão.
O processo de conversão realiza a consolidação e migração de dados das tabelas do EAI 1.0 para o EAI 2.0.
Segue abaixo os dados trabalhados pelo conversor padrão do EAI:
Durante os projetos de migração dos pacotes de integração do EAI 1.0 para o EAI 2.0 podem surgir necessidades específicas de adapters ou destes pacotes de integração. Estas necessidades devem ser analisadas e ter suas regras de negócio implementadas na respectiva sessão do conversor.
Os fontes do conversor estão disponíveis no projeto RM.EAI.TotvsMessage.Conversor.Server e as sub-sessões a seguir apresentam os pontos de desenvolvimento para cada necessidade.
Este ponto de desenvolvimento deve ser utilizado para implementação de ajustes de base de dados relacionados a um adapter específico.
O fonte com o conversor do adapter deve seguir as regras citadas abaixo:
Este ponto de desenvolvimento é reservado para ajustes específicos de um pacote de integração que devem ser executados na mesma transação dos scripts do EAI, como ajustes de roteamento e de parâmetros de integração.
Estes ajustes devem ser adicionados como uma sessão no método "ExecutarScriptsPacotes" da classe "EAIConverteEAI2", conforme exemplo de código abaixo.
Exemplo de código: Pacote TOP x Protheus
Após finalizar a execução do processo de conversão do EAI são executadas também todas as actions de processos parametrizadas para os pacotes de integração convertidos. Este fluxo de execução deve ser utilizado na conversão de informações que necessitem de iteração do usuário, para processamentos de longa duração ou que devam ser executados fora da transação do conversor padrão.
Atenção!
A execução dos processos de conversão específicos por pacote de integração é realizada pelo Client, estando assim fora da transação original e não realizando nenhum tipo de tratamento de erros.
Todo o tratamento de erro dos processos deve estar contidos na execução do próprio, como por exemplo o travamento da integração até a re-execução com sucesso do processo.
Passos para desenvolvimento de um processo de conversão específico: