Histórico da Página
Integração PROTHEUS (SIGAJURI - Funcionários) X Backoffice RM
Contexto de negócio:
O intuito deste manual é validar a integração do Ambiente BackOffice RM X Protheus via envio de mensagem única EAI.
O objetivo da integração do PROTHEUS x BackOffice RM é viabilizar que de forma automática os cadastros gerenciados pelo BackOffice sejam replicados. Desta forma as bases de dados se mantém espelhadas.
Sumário |
---|
1 - Sistemas Envolvidos |
2 - Modelo de Mensagem Única TOTVS |
3 - Pré-requisitos instalação/implantação/utilização |
4 - CheckList de Implantação - Protheus |
5 - CheckList de Implantação - RM |
ÂncoraSistemas Envolvidos Sistemas Envolvidos
Sistemas Envolvidos | |
Sistemas Envolvidos |
Sistemas Envolvidos
Descrição dos sistemas envolvidos no contexto de negócio (e que serão envolvidos na integração).
- Microsiga Protheus através dos seguintes módulos:
Protheus Framework (SIGACFG): Módulo responsável pelos WebServices e Framework de Integração.
Protheus Padrão Jurídico (SIGAJURI): Módulo Jurídico.
- TOTVS Business Connect: Módulo responsável pelos WebServices e Framework de Integração.
Integração
Atender a demanda de clientes que possuem o BackOffice RM, sincronizando as informações entre os módulos a partir da integração por Mensagem Única TOTVS.
Modelo de Mensagem Única TOTVS
Durante o processo de consolidação de marcas, iniciado pela TOTVS, várias empresas diferentes foram adquiridas e com elas vários produtos passaram a compor o portfólio de ofertas disponível aos clientes. Esta expansão de ofertas permitiu que clientes de uma marca, antes limitados pelas opções com aquela “etiqueta”, pudessem agora compor o seu ambiente de TI utilizando produtos de origens diferentes (Exemplo: BackOffice RM + Protheus).
Esta mesma iniciativa já era uma prática comum nos clientes, porém todo o custo envolvido na integração entre estes aplicativos era visto pelo cliente como parte da escolha de utilizar-se de produtos de diferentes fornecedores. Uma vez que estes produtos passam a fazer parte de uma mesma oferta, os clientes TOTVS passam a demandar que estes produtos sejam naturalmente integrados. Isto significa que se antes o cliente arcava com o custo e o risco envolvido em uma integração (como corrupção da base de dados, por exemplo), ele agora entende que a TOTVS deve prover soluções já integradas, independente da origem dos produtos oferecidos.
Com o objetivo de padronizar as integrações com os produtos TOTVS, foi definida uma nova diretriz para os projetos de integração: A de que todos os produtos TOTVS devam trabalhar com uma mensagem XML único evitando, desta forma, o processo de transformação de mensagens. Neste cenário, teríamos o seguinte quadro:
Neste cenário, qualquer produto TOTVS trabalhará com o mesmo XML para uma mesma entidade, vamos supor que tenhamos um XML correspondente à mensagem de CLIENTES, ela poderá ser enviada para qualquer um dos produtos que suporte o recebimento desta entidade.
Uma vez que os vários produtos TOTVS terão um "idioma" comum (o XML único), as integrações entre estes produtos não exigirão mais que as mensagens sejam transformadas de um formato para outro. Com isto, será possível conectar diretamente dois produtos, sem a necessidade do TOTVS ESB, como no diagrama abaixo:
Além de questões referentes ao formato das mensagens, a mensagem única também torna uniforme o tratamento destas mensagens XML pelos aplicativos, principalmente no que diz respeito à capacidade de rastreamento.
Âncora Pré-requisitos instalação/implantação/utilização Pré-requisitos instalação/implantação/utilização
Pré-requisitos instalação/implantação/utilização
O ambiente de integração necessita, além dos pré-requisitos de cada módulo individualmente, das seguintes características:
- Permissão de tráfego na rede entre os sistemas e os WebServices de destino.
- Devem haver licenças de uso suficientes para o processamento das integrações em conjunto com o uso dos sistemas.
BackOffice RM
- Configurar a integração TOTVS PROTHEUS x BackOffice RM por meio do TBC na versão 12.1.12 ou superior.
- Importação das Fórmulas Visuais com gatilhos de integração, enviando os registros ao EAI.
- Cadastramento do De-Para de Empresas e Filial antes de iniciar a carga de dados.
Protheus
- Utilizar a versão 12.1.20 do Protheus ou superior.
O Protheus deve utilizar grupo de empresas para refletir a hierarquia de empresas configurada no BackOffice RM, contendo somente um grupo e a divisão de empresas sendo representada pelo respectivo conjunto “empresa” +” unidade”.
O compartilhamento de tabelas deve ser coerente com a forma como o BackOffice RM trabalha, conforme descrita tabela abaixo.
Cadastro | Empresa | Filial | Tabela RM | Tabela Protheus |
---|---|---|---|---|
Departamento | - | - | GDEPTO | SQB |
Função | - | - | PFUNCAO | SRJ |
Centro de Custo | - | - | GCCUSTO | CTT |
Cargo | - | - | PCARGO | SQ3 |
Funcionário | - | - | PFUNC | SRA |
CheckList de Implantação - Protheus
Visando maior facilidade na implantação da integração está disponível abaixo um CheckList com os passos padrão necessários para implantação e parametrização da integração no Protheus.
Neste passo, vamos realizar a configuração HTTP por parte do Protheus, bem como configurar os Adapters e Rotas para comunicação com RM via EAI.
- Na pasta do ambiente Protheus > pasta bin > editar o arquivo appserver.ini
- Avaliar ou Incluir o seguinte bloco para conexão WebService Protheus:
- ;================== webservice ========================
[HTTP]
ENABLE=1
PORT=12001 ;definir porta para http Protheus
PATH=\web\WS
ENVIRONMENT=p12117 ;ambiente
RESPONSEJOB=JOB_WS_0101
;webservice para o MU usando o nome
[LOCALHOST:12001] ;webservice para o MU
ENABLE=1
;PATH=M:\Protheus11\web\WS
ENVIRONMENT=p12117
INSTANCENAME=JOB_WS_0101
RESPONSEJOB=JOB_WS_0101
DEFAULTPAGE=wsindex.ap
[JOB_WS_0101] ;webservice para o MU
TYPE=WEBEX
ENVIRONMENT=p12117
INSTANCES=1,10
SIGAWEB=JOB_WS_0101
INSTANCENAME=JOB_WS_0101
ONSTART=__WSSTART
ONCONNECT=__WSCONNECT
XMLSAVEALL=1
namespace=http://www.totvs.com.br/rm/
trace=1
- ;================== webservice ========================
- Subir o serviço ambiente Protheus.
- Verificar acesso ao Host no caminho: http://localhost:12001/
- Será utilizado o método EAI SERVICE: http://localhost:12001/EAISERVICE.apw?WSDL
Adapter E.A.I
Configuração dos adapters utilizados na integração TOTVS PROTHEUS x BackOffice RM, assim como toda a configuração do EAI Protheus.
- Acessar o SIGACFG
- Ambiente > Schedule > Adapter E.a.I.
- Incluir uma nova Rotina para os adapters do sistema Protheus
- Configurar a Rotina do Adapter de acordo com os dados abaixo fornecidos e que já foram pré estabelecidos na aplicação do patch de atualização do Protheus:
Mensagem Única | Rotina Protheus | Mensagem | Descrição | Envia | Recebe | Método Protheus | Operação | Canal de Envio | Adapter Protheus | Versão |
Sim | CSAA100 | DEPARTAMENT | DEPARTAMENTO | Não | Sim | Síncrono | Todas | EAI | CSAA100 | 2.001 |
Sim | CTBA030 | COSTCENTER | CENTRO DE CUSTO | Não | Sim | Síncrono | Todas | EAI | CTBA030 | 2.002 |
Sim | GPEA010 | EMPLOYEE | FUNCIONARIOS | Não | Sim | Síncrono | Todas | EAI | GPEA010 | 3.002 |
Sim | GPEA030 | ROLE | FUNCAO | Não | Sim | Síncrono | Todas | EAI | GPEA030 | 1.000 |
Sim | GPEA370 | EMPLOYEEPOSITION | CARGO | Não | Sim | Síncrono | Todas | EAI | GPEA370 | 1.002 |
Âncora Configurar os Parametros Protheus Configurar os Parametros Protheus
Parâmetros
a) MV_EAIURL2
Host do RM configurado (Procedimento futuro)
2. MV_EAIMETH
Método padrão
3. MV_EAIUSER
4. MV_EAIPASS
. MV_EAIPORT
ÂncoraCheckList Protheus CheckList Protheus
CheckList Protheus | |
CheckList Protheus |
Protheus
Visando maior facilidade na implantação da integração está disponível abaixo um CheckList com os passos padrão necessários para implantação e parametrização da integração no Protheus.
Neste passo, vamos realizar a configuração HTTP por parte do Protheus, bem como configurar os Adapters e Rotas para comunicação com RM via EAI.
- Utilizar um ambiente Protheus existente.
- Na pasta bin, editar o arquivo appserver.ini
Incluir o seguinte bloco para conexão web service Protheus:
;================== webservice ========================
[HTTP]
ENABLE=1
PORT=12001 ;definir porta para http Protheus
PATH=\web\WS
ENVIRONMENT=p12117 ;ambiente
RESPONSEJOB=JOB_WS_0101
;webservice para o MU usando o nome
[LOCALHOST:12001] ;webservice para o MU
ENABLE=1
;PATH=M:\Protheus11\web\WS
ENVIRONMENT=p12117
INSTANCENAME=JOB_WS_0101
RESPONSEJOB=JOB_WS_0101
DEFAULTPAGE=wsindex.apw
[JOB_WS_0101] ;webservice para o MU
TYPE=WEBEX
ENVIRONMENT=p12117
INSTANCES=1,10
SIGAWEB=JOB_WS_0101
INSTANCENAME=JOB_WS_0101
ONSTART=__WSSTART
ONCONNECT=__WSCONNECT
XMLSAVEALL=1
namespace=http://www.totvs.com.br/rm/
trace=1
- Subir o serviço ambiente Protheus.
- Verificar acesso ao Host no caminho: http://localhost:12001/
- Será utilizado o método EAI SERVICE: http://localhost:12001/EAISERVICE.apw?WSDL
Exemplo: http://localhost:12001/EAISERVICE.apw?WSDL
- Realizar a configuracao dos parâmetros listados anteriormente.
- Ainda no SIGACFG, acessar a rotina de Schedule e realizar os seguintes cadastros:
- Cadastro de Rotas EAI (Sóé preciso cadastrar rotas quando o EAI já está em uso para outra MARCA, ex: Protheus vs LOGIX. Se existir apenas a integração do Protheus com RM, podemos pular esta etapa)
*URL (Método Host do RM – Service EAI RM)
*Usuário e senha RM
*Cliente WS e método (padrão)
- Adapter EAI (É feita para cada rotina integrada ao RM)
*Mensagem única – Sim
*Rotina a ser integrada (exemplo clientes)
*Envia mensagens – Sim
*Recebe mensagem - Sim
*Método - Síncrono
*Canal de envio – EAI
*Versão de envio (de acordo com RM)
*Rota padrão (de acordo com parâmetros)
*Roteamento de mensagens – Apontar Rota e envia – Sim.
*Funcionários
*atenção na versao de envio utilizada.
- Schedule (verificação futura do monitor de comunicação de EAI entre os sistemas.
*clicando na lupa, e possível ver o log de execução das mensagens.
- Emp. Filial Mensagem Única (de para de empresas para referência ao RM)
Cadastrar o de/para de empresas existentes no Protheus com as coligadas existentes no RM.
Será feita a referencia de empresas ao RM.
*empresa/filial – referentes a RM.
*grupo empresa/Filial Protheus - referentes a RM.
*Mais informaçõesno tópico: Transações/Entidades/Mensagens únicas
ÂncoraCheckList RM CheckList RM
CheckList RM | |
CheckList RM |
RM
Utilizado um banco de dados e uma Biblioteca de teste para simulação do Ambiente. (Verificar padrões RM de acordo com Cliente e o administrador responsável do local a ser implementado)
Abrindo RM:
Utilizado um usuário padrão de testes.
Usuário: mestre
Senha: totvs
- Ver permissões:
Menu > Serviços globais > ver permissões em perfis e Usuário
- Acessar guia segurança.
Opção Perfis.
Neste caso, o usuário possui perfis de acesso DBA e DP.
Criar um perfil adicional
Exemplo Perfil mestre:
Clicar em incluir.
Identificação:
Nesta parte e possível delegar acessos a campos e menus.
*Verificar com o Administrador do RM, o acesso as rotinas que serão integradas leitura e gravação e também a opção de Integrações do menu.
No menu Serviços Globais → Segurança → Perfil, alterar o sistema para Integração.
Importante: Alterar o combo "Sistema:" para "Integração" para que todas as permissões sejam exibidas de forma correta.
Devem ser atribuídas ao usuário que irá configurar a integração as seguintes opções:
*permitido acesso a todos serviços para o usuário Mestre.
- Menu Integração
- De/Para Filiais
Cadastramos o de/para por parte do RM, similares ao Protheus, referenciando as Coligadas.
Os passos a seguir devem se repetir para todas as coligadas e filiais.
Efetue o cadastramento do De-Para de Coligadas conforme imagem abaixo, substituindo os valores entre chaves com o valor correspondente pelo código da coligada.
Tabela RM: Fixo valor 'GCOLIGADA'
Chave Primária RM: Fixo valor 'CODCOLIGADA'
Valor Chave Primária RM: Código da coligada referente
Sistema Integrado: Fixo valor 'PROTHEUS'
Valor Chave Integração: Código da coligada referente (mesma do campo Valor Chave Primária RM)
Efetue o cadastramento do De-Para de Filiais conforme imagem abaixo, substituindo os valores entre chaves com o valor correspondente ao descrito internamente a ele.
Tabela RM: Fixo valor 'GFILIAL'
Chave Primária RM: Fixo valor 'CODCOLIGADA|CODFILIAL'
Valor Chave Primária RM: Código da coligada + '|' + Código da filial
Sistema Integrado: Fixo valor 'PROTHEUS'
Valor Chave Integração: Código do grupo de empresa do Protheus + '|' + Código completo da filial no Protheus (composto por Empresa + Filial)
- Gerenciamento de Mensagens (por parte do RM)
Acompanhamento das mensagens de entrada e saída.
Bem como, os dados da Mensagem, Rota e execução.
ÂncoraControle de Versão / Suporte / Escopo Controle de Versão / Suporte / Escopo
Controle de Versão / Suporte / Escopo | |
Controle de Versão / Suporte / Escopo |
Cadastro de integrações
Realizar o cadastro da integração e parâmetros.
Parâmetros da integração:
Devemos criar o parâmetro USAINTEGRACAOFIELDSERVICE e definir o seu valor como Verdadeiro.
Mapeamento das entidades
Antes de incluir os mapeamentos, precisamos importar os layouts.
Acessar : RM| Integração| Ferramentas| Configurar.
Clicar em Avançar.
Informar o Usuário , Senha e clicar em “Testar a Conexão” para liberar o botão Avançar.
Marcar as seguintes opções:
Incluir no mapeamento das entidades os itens relacionados abaixo:
Cada entidade deve ser cadastrada com a versão listada no item Entidade e Eventos, como no exemplo abaixo:
Conferir na entidade FINANCIALNATURE se o campo abaixo está preenchido. Se não estiver acrescentar o conteúdo conforme abaixo:
<?xml version='1.0' ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<BusinessContent>
<RMENTITYNAME>TTBORCAMENTO</RMENTITYNAME>
<CompanyId>
<xsl:value-of select="TOTVSMessage/TTBORCAMENTO/CODCOLIGADA"/>
</CompanyId>
<InternalId>
<xsl:value-of select="concat(TOTVSMessage/TTBORCAMENTO/CODCOLIGADA,'|',TOTVSMessage/TTBORCAMENTO/CODTBORCAMENTO)"/>
</InternalId>
<Code>
<xsl:value-of select="substring(TOTVSMessage/TTBORCAMENTO/CODTBORCAMENTO,1,10)"/>
</Code>
<Description>
<xsl:value-of select="substring(TOTVSMessage/TTBORCAMENTO/DESCRICAO,1,30)"/>
</Description>
<NatureType>
<xsl:choose>
<xsl:when test="TOTVSMessage/TTBORCAMENTO/SINTETICOANALITICO = '0'">Synthetic</xsl:when>
<xsl:when test="TOTVSMessage/TTBORCAMENTO/SINTETICOANALITICO = '1'">Analytical</xsl:when>
</xsl:choose>
</NatureType>
<UseCategory>
<xsl:choose>
<xsl:when test="TOTVSMessage/TTBORCAMENTO/NATUREZA = '1'">Receivable</xsl:when>
<xsl:when test="TOTVSMessage/TTBORCAMENTO/NATUREZA = '2'">Payable</xsl:when>
</xsl:choose>
</UseCategory>
<Blocked>
<xsl:value-of select="TOTVSMessage/TTBORCAMENTO/INATIVO"/>
</Blocked>
</BusinessContent>
</xsl:template>
</xsl:stylesheet>
Fórmulas Visuais
Para que a integração dos dados do RM sejam enviados ao Protheus é necessário importar/criar as fórmulas visuais que atuam com gatilhos para disparar as mensagens de integração.
Menu Gestão/Fórmula visual
Importar as fórmulas listadas abaixo:
Para importar as fórmulas visuais precisamos criar uma categoria para associar as mesmas. Proceder no menu Gestão/Fórmula Visual/Categorias
Para importar uma fórmula visual, utilizar o menu:
Abaixo os arquivos que devem ser importados:
Para importar a fórmula, escolher cada arquivo, marcar a opção de todas as coligadas, escolher a categoria e marcar a opção "Importar gatilhos"
Após a importação das fórmulas, a tela deverá ficar da seguinte forma:
Depois de importar as fórmulas visuais, devemos validar a versão que estão configuradas as mesmas. Para abrir a fórmula em edição, usar duplo clique.
O item Transformação deve estar preenchido com a mesma versão da entidade configurada no passo acima.
Controle de Versão
O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.
Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.
Suporte
O suporte aos recursos da Integração será de responsabilidade de todas as linhas, sendo assim as equipes de suporte dos produtos BackOffice RM, Backoffice Protheus e SigaMNT estarão aptas a fazer a primeira análise e, quando necessário, repassar para a equipe mais adequada em cada caso.
Escopo
O escopo deste projeto se restringe aos processos de integração com o Protheus e os cadastros utilizados por estes.
Todos os processamentos de BackOffice se manterão no RM, sendo eles a geração de escrituração, relatórios, emissão de notas fiscais e outros.
ÂncoraTransações/Entidades/Mensagens Transações/Entidades/Mensagens
Transações/Entidades/Mensagens | |
Transações/Entidades/Mensagens |
Transações/Entidades/Mensagens únicas
Segue abaixo tabela com informações sobre as entidades trafegadas na integração.
Método | ID | Descrição | Origem | Destino | Mensagem Única | Versão da Mensagem | Fórmula Visual de Gatilho | Fórmula Visual de Carga de Dados |
Cadastros | 01 | Cliente/Fornecedor | RM | Protheus | CustomerVendor | 2.002 | MOVWKF0007 - CustomerVendor | MOVWKF0019 - Sincronizacao_Total_SigaMNT |
02 | Moeda | RM | Protheus | Currency | 2.000 | MOVWKF0006 - Currency | MOVWKF0019 - Sincronizacao_Total_SigaMNT | |
04 | Produto | RM | Protheus | Item | 2.000 | MOVWKF0013 - Item | MOVWKF0019 - Sincronizacao_Total_SigaMNT | |
05 | Centro de Custo | RM | Protheus | CostCenter | 2.000 | MOVWKF0005 - CostCenter | MOVWKF0019 - Sincronizacao_Total_SigaMNT | |
18 | Condição de Pagamento | RM | Protheus | PaymentCondition | 2.000 | MOVWKF0015 - PaymentCondition | MOVWKF0019 - Sincronizacao_Total_SigaMNT |
Obs.: As Fórmulas visuais estão disponíveis na pasta de instalação do RM em (...CORPORERM/Objetos Gerenciais/Fórmulas Visuais)
ÂncoraCadastros Cadastros
Cadastros | |
Cadastros |
Cadastros
Para esta integração todos os cadastros possuem sua origem no BackOffice RM, sendo enviados à retaguarda Protheus.
Cadastro de Centro de Custo
Identificador da Mensagem: CostCenter
Versão: 2.000
Mandatário: BackOffice RM
Tipo de Envio: Síncrono
Mapeamento de Campos: http://tdn.totvs.com/x/w9b0E
Notas:
Expandir | ||
---|---|---|
| ||
Os campos “Centro de Custo” e “Código Reduzido do Centro de Custo” no PROTHEUS deve ser alterado para tamanho de 20 caracteres, uma vez que no RM estes campos permitem até 25 caracteres. |
Cadastro de Cliente/Fornecedor
Identificador da Mensagem: CustomerVendor
Versão: 2.002
Mandatário: BackOffice RM
Tipo de Envio: Síncrono
Mapeamento de Campos: http://tdn.totvs.com/x/MYP6E
Notas:
Expandir | ||
---|---|---|
| ||
Ao iniciar uma base zerada do Protheus, para incluir a tabela de Municípios no Protheus é necessário acessar o Protheus no sistema 09 - Livros Fiscais. Se não acessar o sistema Fiscal do Protheus antes de enviar o cadastro do RM irá apresentar mensagem de inconsistência informando que é valor inválido para o campo Município. Uma vez que o Cliente e Fornecedor são tratados na mesma mensagem (CustomerVendor), é responsabilidade do destinatário ao processar a mensagem garantir a consistência dos dados na origem e no destino da melhor forma possível.Ou seja, se o destino implementa uma única tabela, terá que manipular apenas um registro e se implementa mais de uma tabela, terá que manipular quantos registros forem necessários. Para regras de negócio desta mensagem atenção ao seguinte ponto de atenção. Mesmo que a empresa não utilize Cliente/Fornecedor global no RM, deve-se compartilhar a tabela referente no Protheus por empresa. No Protheus o código do cliente/fornecedor será composto pelo código do cliente/fornecedor e da coligada, conforme a mascara “[CODCOLIGADA]|[CODCFO]”. |
Links úteis de Refências
Abaixo, alguns links para visualização sobre a configuração validada em cliente para os mesmos cadastros citados nesta documentação.
Informações | ||
---|---|---|
| ||
Página: Mensagem Única - RH Protheus Página: Como Fazer - Configuração do Protheus para a IntegraçãoMensagens de cadastro Mensagens de Processos Modelos mensagem única - XSD |
Como funciona a camada EAI.
Informações | ||
---|---|---|
| ||
ÂncoraChecklist de suporte da aplicação Checklist de suporte da aplicação
Checklist de suporte da aplicação | |
Checklist de suporte da aplicação |
Checklist de suporte da aplicação
Crie um check-list de verificação de alguns pontos importantes para o funcionamento e atendimento da integração.
Instalação/Configuração
Relacione itens de verificação para garantir que a integração está corretamente instalada e configurada. Isto não pode ser uma cópia do procedimento de instalação/configuração, mas verificações pontuais que podem remeter aos itens da instalação.
Checklist de Verificações:
Relacione itens de verificações para que o atendente possa:
Identificar o funcionamento da integração;
Identificar a ocorrências de problemas;
Coletar evidências do mau funcionamento relatado pelo cliente;
Realizar possíveis ajustes na integração quanto à configuração ou negócio.
Descrição dos sistemas envolvidos no contexto de negócio (e que serão envolvidos na integração).
- Microsiga Protheus através dos seguintes módulos:
- Protheus Framework (SIGACFG): Módulo responsável pelos WebService e Framework de Integração.
- Protheus Padrão Jurídico (SIGAJURI): Módulo Jurídico.
- TOTVS Business Connect: Módulo responsável pelos WebService e Framework de Integração.
- Microsiga Protheus através dos seguintes módulos: