Detalhamento técnico da integração de registros - GKO
Atenção!
- Esta documentação não tem a intenção de abranger todos os detalhes do processo de integração entre o ERP XT e a senior X Platform. Seu objetivo é esclarecer aspectos específicos da integração que são relevantes para o uso cotidiano das funcionalidades entre o ERP e o GKO.
- Para informações mais detalhadas sobre a integração do ERP com a Senior X, recomendamos a consulta às documentações específicas, como Gestão Empresarial | ERP – senior X Platform e Instalação da senior X Platform.
Potenciais questões
- Quais são os componentes tecnológicos envolvidos no processo de integração e o que eles fazem exatamente?
- O ERP Service não pode ser acionado por outros sistemas de terceiros para o processamento de registros no padrão JSON. Ele é um componente exclusivo para integração com a senior X Platform, utilizado apenas nos modelos de integração padrão desenvolvidos pela Senior.
- Em ambiente Cloud Senior, este componente é configurado e mantido pela equipe IT Services da Senior.
- Para maiores informações sobre a instalação do componente (caso você utilize ambiente OnPremise), verifique a documentação: Manual de instalação - ERP Service.
É um servidor de mensageria de código aberto, desenvolvido em Erlang, responsável por criar a ponte de comunicação entre o ERP XT e a senior X Platform. Há sempre uma instância do RabbitMQ instalada localmente no ERP (que pode estar OnPremise ou no ambiente Cloud da Senior, administrado por IT Services) e outra instância instalada localmente na senior X Platform (administrada pela equipe de arquitetura da Senior).
No fluxo de integração entre ERP e GKO, o ETL ERP é responsável apenas pela limpeza das pendências da tabela RTC_PENDENCIES. Ele deve estar devidamente instalado e executando, para que as limpezas das pendências processadas sejam executadas.
Em ambiente Cloud Senior, este componente é configurado e mantido pela equipe IT Services da Senior.
É um componente da integração alocado na própria plataforma Senior X, responsável por receber dados dos sistemas (ERP ou GKO) e convertê-los para o formato compatível com cada ambiente. Por exemplo, quando um processo de emissão de nota fiscal é concluído no ERP, as informações são enviadas à plataforma Senior X, onde o Integrador GKO transforma os dados recebidos em um formato que possa ser interpretado e processado pelo sistema GKO.
O componente ERP_Service é responsável por receber informações oriundas da Senior X e processá-las dentro do ERP. No processo de integração com GKO, o ERP Service é acionado após o processamento de algum registro que seja retornado do GKO e já tenha sido processado também pelo Integrador GKO. O ERP Service obrigatoriamente precisa de conexão com o RabbitMQ, que faz a ponte de comunicação entre ERP e a plataforma.
Na prática, o ERP_Service é responsável por receber mensagens no padrão de comunicação JSON (utilizado pela plataforma), interpretá-las e processá-las dentro do ERP. Ele atua de forma semelhante a uma instância de Middleware, porém, atende a requisições JSON em vez de requisições SOAP.
Importante
O AppManager é o Gerenciador de Instâncias do ERP Service. Em uma analogia, ele é para a comunicação com a senior X Platform o que o Gerenciador de Middleware é para o Middleware Senior. O AppManager não processa registros, mas se estiver desabilitado ou desativado, as instâncias do ERP Service não estarão disponíveis na memória, impedindo o processamento do tráfego de informações entre a Plataforma Senior X e o ERP XT.
Em ambiente Cloud Senior, este componente é configurado e mantido pela equipe IT Services da Senior.
O SeniorMiddleware é utilizado para execução dos processos automáticos através de uma instância do SapiensServer – sapiensserv.exe, que são utilizados na integração. Ele não é responsável por executar nenhuma transformação de dados do padrão do ERP XT para padrão de comunicação senior X Platform (padrão JSON), essa responsabilidade é da rotina interna do ERP. Assim, o componente é utilizado apenas para gerenciar a execução do processo agendado.
Em ambiente Cloud Senior, este componente é configurado e mantido pela equipe IT Services da Senior.
Para que ocorra a comunicação entre a plataforma Senior X e o sistema GKO, é necessário um processo de conversão entre os padrões de comunicação utilizados por cada sistema: a plataforma opera com API (JSON), enquanto o GKO utiliza web service (XML).
Para realizar essa conversão, o sistema GKO conta com um Middleware próprio, uma camada tecnológica responsável por transformar as informações entre os dois formatos.
É importante não confundir essa camada tecnológica do GKO com o Middleware da Senior, que também atua no processo de integração, mas apenas para executar os processos agendados do ERP.
- Como funciona a replicação de registros do ERP XT para plataforma senior X?
- COLUNA: IDREPLICATOR = ERP_GKO
- COLUNA: TABLENAME = Nome da tabela a ser replicada
O processo abaixo descreve como ocorre a replicação de dados entre o ERP XT e Plataforma Senior X para conhecimento técnico geral.
O processo de replicação é baseado nas pendências de integração registradas na tabela RTC_PENDENCIES, localizada no banco de dados do ERP XT. Essas pendências são populadas pela execução das triggers 'RTC_XXXX', que são geradas em diversas tabelas do banco de dados do ERP XT.
A tabela RTC_REPLICATIONDEF recebe a indicação das tabelas que devem gerar pendências, seguindo o padrão abaixo:
A tabela RTC_REPLICATORDEF registra os tipos de replicação ativos na base de dados e a tabela onde os status de processamento das pendências serão gravados. Quando pendências são geradas na tabela RTC_PENDENCIES, elas estão sempre associadas a um tipo, definido na coluna IDREPLICATOR da tabela RTC_REPLICATIONDEF.
Assim, quando uma pendência é gerada via trigger, por exemplo, na tabela E140IDE, ela é registrada na tabela RTC_PENDENCIES para ser consumida pelos processos agendados de integração.
- Como ocorre a limpeza das pendências de integração da tabela RTC_PENDENCIES?
A limpeza das pendências na tabela RTC_PENDENCIES é realizada pelo ETL, mesmo que o tráfego dessas pendências ocorra em fluxos separados. Portanto, o ETL não pode ser desativado, mesmo que nenhuma replicação de dados acontece pelo componente.
A limpeza das pendências ocorre conforme a documentação do Integrador ETL. Para mais detalhes, consulte o tópico Limpeza de pendências.
- Como fazer o teste de conectividade dos componentes de integração entre ERP XT e a XPlatform que afetam a integração entre ERP e WMS?
- Como é possível verificar as pendências de integração que não foram integradas na plataforma ainda?
- Em algumas bases de dados, o registro "idreplicator" da tabela "rtc_replicationdef" pode estar em letras minúsculas. Por isso, é necessário adaptar o comando conforme o padrão utilizado, já que o banco de dados pode ser case sensitive nessa verificação.
- Exemplo de linha ajustada para o comando: TABLENAME IN (SELECT TABLENAME FROM rtc_replicationdef WHERE idreplicator = 'erp_gko') AND
- Se essa adaptação não for feita, o comando pode não retornar registros, mesmo quando deveria. Em caso de dúvida sobre como o registro está gravado na base de dados que você está acessando, verifique o padrão da coluna "idreplicator" na tabela "rtc_replicationdef", executando um SELECT nessa tabela.
- Em quais tabelas da base de dados são armazenados os registros das Notas Fiscais de Entrada e de Saída que precisam ser exportados para o GKO?
Para realizar essa análise, é necessário executar consultas SQL (SELECT) na base de dados do ERP XT, utilizando o CBDS ou outra ferramenta de acesso ao banco de dados.
Importante
A consulta abaixo verifica se o processo agendado 178 está consumindo as pendências registradas na base de dados do ERP.
SELECT 'ERP_GKO' AS REPLICATOR, COUNT(*), TABLENAME FROM RTC_PENDENCIES A WHERE TABLENAME IN (SELECT TABLENAME FROM rtc_replicationdef WHERE idreplicator = 'ERP_GKO') AND ID NOT IN ( SELECT OPERATIONID FROM RTC_ERP_GKO_STATUS ) GROUP BY TABLENAME
A tabela RTC_PENDENCIES armazena as pendências de integração.
No entanto, para que essas pendências estejam efetivamente vinculadas às NF de Entrada (E440NFC) e NF de Saída (E140IDE), existem tabelas intermediárias: E000NEX (NF de Entrada) e E000NSX (NF de Saída), que armazenam as informações das notas que serão exportadas.
Dessa forma, o processo agendado 178 verifica as pendências na tabela RTC_PENDENCIES, localiza as notas a serem exportadas nas tabelas E000NEX e E000NSX e acessa os dados das notas nas tabelas nativas do sistema. Em seguida, monta o pacote de dados em JSON para envio à Plataforma Senior X, aplicando inclusive os identificadores de regras existentes no processo de integração.
- Como funciona o fluxo de reprocessamento de registros no Monitor GKO?
Quando um registro é reenviado por meio do botão “Reenviar registro” no Monitor GKO, o Integrador GKO da plataforma Senior X aciona o ERP_Service do ERP e solicita a criação de uma nova pendência de exportação para esse registro. Dessa forma, a tabela RTC_PENDENCIES recebe a nova pendência.
A exportação do registro ocorre posteriormente pelo processo agendado de rotina 178.
Portanto, o ERP_Service não realiza a exportação de registros diretamente no fluxo ERP - Plataforma Senior X. Nesse fluxo, ele atua apenas como ponte para gerar a nova pendência no ERP, que será exportada pelo processo 178. Por isso, o reprocessamento de registros no Monitor GKO não é instantâneo.
English
Español
English
Español


