Esta documentação é interna e foi criada para auxiliar o Suporte Técnico nos testes

Produto:

Microsiga Protheus®

Ambiente:Gestão de Pessoal (SIGAGPE)

Ocorrência:

Como realizar a integração Protheus x Feedz?

Passo a passo:


A integração entre o Protheus e Feedz ocorre para envio dos dados abaixo:
- Filiais (SM0)
- Funcionários (SRA)
- Participantes (também conhecido como Pessoas - RD0 e RDZ)
- Cargos (SQ3)
- Departamentos (SQB)
- Grupos de Contrato (SX5 - Tabela 1C)
- Líder dos Funcionários (utilizado quando o cliente tem controle de Hierarquia por uso do App MEU RH ou Portal GCH - SRA + RD0 + RDZ)

As informações enviadas do Protheus para a Feedz, estarão presentes em uma tabela chamada REF, e os dados integrados (com falha ou sucesso) via rotina de Carga Inicial ou Schedule, podem ser visualizados na rotina de Consulta de Lotes.

Para que a integração aconteça, é necessário que exista um ambiente criado na plataforma Feedz + token de acesso. O cliente conseguirá esses dados através do seu Agente de Sucesso Feedz, ou seja, no momento de configurar a implantação no Protheus, ele já terá estes dados em mãos.

Para os testes do time de Suporte, serão utilizados os dados do ambiente TESTE abaixo:
> URL da Plataforma: https://integrations.feedz.dev/protheus-feedz-etl/
> Token: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwcm9maWxlX2lkIjo3MjM2MiwiY29tcGFueV9pZCI6MTAyLCJ0aW1lc3RhbXAiOjE3MTA3ODc3MjZ9.8Pb8BM_t2hQ9fNPdL-BUnAgMTMnAqbh8xj3vStEGRg0

Os parâmetros que devem ser preenchidos com estes dados são:
→ MV_APIFEE1:



→ MV_APIFEE2:

                                                                                                                                                                   

É necessária a criação dos campos de Log de Auditoria chamados _USERLGI e _USERLGA nas tabelas abaixo, para que no momento que o Quirons for fazer o consumo de novos dados ou registros alterados, seja possível que ele valide o que de fato deve ou não ser consumido:
• SP6 - Tipos de Abono
• CTT - Centro de Custo
• SR6 - Turno de Trabalho
• SRJ - Funções
• RCM - Tipos de Ausência
• RCC - Tipos de Estabilidade
• RA2 - Tipos de Treinamento

É possível fazer o processo seguindo a documentação oficial do Framework: https://tdn.totvs.com/display/public/framework/Rotinas+de+Logs+e+Auditoria

Para isso, acesse o Configurador - Base de Dados - Dicionário - Base de Dados - busque pela primeira tabela, neste exemplo, vamos usar a SRJ.
Clique em Editar - no menu à esquerda, escolha a opção Campos e na sequência, clique na opção Campos Reservados e selecione as opções Log de Inclusão e Log de Alteração e confirme os ajustes.

Importante que você esteja em acesso exclusivo no momento da criação dos campos.

Caso não consiga fazer a inclusão dos campos, veja este vídeo: Como incluir os campos de Log de Auditoria

Para que seja possível a integração de dados do Protheus para o Quirons, bem como cadastro de usuário, senha e acesso à rotina de Monitor de Integração que possibilita que o usuário confira se o dado foi ou não integrado corretamente, será necessária a inclusão de três rotinas no menu do SIGAGPE através do Configurador, que são:
• Carga Inicial - GPEM925
• Parâmetros - GPEM926
• Monitor - GPEM924

Para inclusão das rotinas no menu, é necessário acesso em modo exclusivo. Com isso, acesse o Configurador - Ambiente - Cadastro - Menus - selecione o módulo Gestão de Pessoal e Confirme:

Posicione na primeira opção com o nome do módulo SIGAGPE e clique na opção Adicionar para que todos os menus existentes fiquem no painel à direita da nossa tela conforme exemplo:

Os três novos menus podem ser adicionados em qualquer menu que já existe, mas também é possível criar um novo sub menu.
No exemplo abaixo, decidi incluir um novo sub menu dentro do menu Atualizações. Para isso, posiciono no menu Atualizações e clico na opção Novo Grupo.
Inseri como exemplo, o nome Quirons e com isso, o sub menu já fica visível para que consigamos incluir as rotinas.

As rotinas devem ser incluídas com o nome de sua preferência, sendo importante apenas se atentar ao informar o nome do Programa (o fonte da rotina que está sendo incluída), Módulo que será o Gestão de Pessoal e Tipo que será Função Protheus, conforme este exemplo.

Após finalizar as três inclusões, elas deverão aparecer no novo sub menu. Para confirmar os ajustes, basta clicar em Gerar - informar SIGAGPE e Gerar novamente.

Caso não tenha conseguido incluir os menus, veja este vídeo: Incluindo Menus

Para habilitar a integração no Protheus, é necessário configurarmos o parâmetro MV_RHNG com conteúdo .T.

Como não temos um ambiente Quirons para receber os dados, vamos utilizar a ferramenta Webhook para simular o Quirons, através do endereço https://webhook.site/#!/view

Ao acessar o Webhook, será gerada uma URL única, e ela será usada nos cadastros do Protheus.

No SIGAGPE, vamos acessar a rotina de Parâmetros que criamos no passo 3, e faremos o preenchimento desta forma:
• URI = nossa URL única gerada no Webhook
• Usuário e Senha = você pode informar seu email e qualquer senha, pois como estamos usando o Webhook, estes dados não serão validados efetivamente.

A última etapa cadastral, se trata do Schedule da rotina GPEM923, para que os dados enviados através da nossa rotina de Carga Inicial, sejam gravados na tabela RJP, e com isso, o Schedule envie os dados da RJP para o Quirons através do nosso arquivo JSON.

Para cadastrar o Schedule, será necessário acessar o Configurador - Ambiente - Schedule - Schedule.
Devemos inicialmente cadastrar um Agent na opção de mesmo nome, levando em consideração:
• IP = como faremos apenas testes em ambiente interno, podemos informar localhost
• Porta = se trata da nossa porta TCP, contida no arquivo appserver.ini do nosso ambiente

Após o cadastro, nosso Agent deve ficar com status Habilitado para o correto funcionamento.
OBS: cadastre o Agent vinculado ao Grupo de Empresas em que a integração foi toda configurada.

Por fim, vamos cadastrar o Job da rotina GPEM923, que será a responsável pelo envio dos dados da tabela RJP para o Quirons.
• Para isso, vamos na opção Agendamentos e faremos a inclusão com a rotina GPEM923
• Na primeira parte do cadastro, informaremos a recorrência, ou seja, de quanto em quanto tempo queremos que o Job seja executado. Neste exemplo, estamos deixando como Sempre Ativo, ou seja, o Job sempre fará buscas na tabela por qualquer dado novo gravado, para que o envio ao Quirons seja feito em tempo real, porém, o cliente pode definir isso da melhor forma pra ele
• Na segunda parte do cadastro, informaremos os dados do Grupo de Empresa, Filial e Módulo
• Por fim, vamos conferir nosso cadastro para Concluir.

Após o cadastro, o Job aparecerá com status Habilitado.

Caso tenha dificuldade no cadastro de Agent e Job, veja este vídeo: Configuração do Schedule

Com todos os cadastros necessários, estamos prontos para fazer nossa integração funcionar \õ/

No Protheus, vamos acessar a rotina de Carga Inicial e vamos selecionar os dados que queremos integrar para o Quirons.

Após a confirmação de execução da rotina, ao consultar nossa tabela RJP, teremos o dado gravado corretamente, o que significa que podemos conferir o status do envio através da rotina de Monitor de Integração - GPEM924. Para isso, basta buscar o registro que tentamos integrar e clicar em Visualizar.

No Webhook, assim que o Job do Schedule processar o envio, podemos conferir a estrutura do arquivo JSON com os dados integrados.

Caso tenha dúvidas sobre o processo, veja este vídeo: Integrando Protheus x Quirons

O Postman é uma ferramenta de mercado, onde conseguimos simular o envio de arquivos XML/JSON na integração via Mensagem Única (EAI), simulando integrações com o Protheus, ou seja, ao invés de termos que instalar o outro sistema e aprender como fazer o processo nele, usamos o Postman para simular os testes e validações necessárias.

Link para baixar o Postman: https://www.postman.com/downloads/

Cabe ressaltar que usaremos o Postman apenas nos casos onde precisamos simular o consumo de dados no Quirons, por exemplo, se precisamos consumir os dados de um novo Centro de Custo cadastrado.

  • A API RESTful é uma interface que dois sistemas usam para trocar informações de forma segura pela internet.
  • Os Métodos existentes em uma API são como as ações que esta API permite que sejam realizadas através dela:
    • DELETE: Método específico para remoção de dados, ou seja, permite deletar dados através da API;
    • GET: Método para uma requisição que busca dados, ou seja, ele é usado para consultar dados através da API, não altera informações, apenas as carrega;
    • POST: Método para uma requisição que envia dados, ou seja, é usado para inserir informações através da API;
    • PUT: Método para atualização de dados, pode ser utilizado quando se deseja atualizar uma informação já existente. 

Neste teste, usaremos o Postman para simular o consumo de dados no Quirons, por exemplo: nos casos onde foi cadastrado um novo Centro de Custo no Protheus, o usuário precisa acessar o Quirons, e através dele fazer o consumo deste dado, para que ele também exista no Quirons.
Para isso, usaremos o método GET no Postman e também usaremos esta documentação para sabermos quais parâmetros são chave para que seja feita a requisição dos dados na nossa API.

Simulando o consumo dos dados de um Centro de Custo:
• devemos buscar na documentação os parâmetros que serão usados no nosso GET
• acessar nosso REST, e procurar pela API informada na documentação, neste caso, a de nome payrollcostcenter. Ao localizá-la, clicar na opção For More Details. Aqui, vamos guardar os dados contidos no GET para usarmos na sequência no Postman
• com o Postman aberto, criaremos um novo File e vamos iniciar o preenchimento do nosso GET. Primeiro, vamos informar o endereço do nosso REST + os dados copiados do GET do nosso REST
• agora, vamos preencher os parâmetros conforme nossa documentação, informando manualmente um a um e contendo os dados do código de Filial e Grupo de Empresas. Com isso, poderemos ver que a barrinha do nosso GET ficará com todos estes parâmetros também
• por fim, vamos clicar na opção Body - deixar marcada a opção None e clicar no Send

Protinho, agora conseguimos visualizar o arquivo JSON contendo os dados do Centro de Custo de código 01, de nome Suporte. Seu teste funcionou certinho =D

Se tiver dúvidas, você pode assistir esse vídeo com o processo: Simulação via Postman x Protheus

Pode lhe Interessar: