Apresentar ao usuário final que faça uso da plataforma da Carol para marcações de ponto de seus colaboradores, como configurar o Protheus para habilitar a integração automática de marcações.
ESTE DOCUMENTO SOMENTE TERÁ UTILIDADE PARA CLIENTES QUE JÁ UTILIZAM A PLATAFORMA CAROL, CASO CONTRÁRIO NÃO SERÁ POSSÍVEL A REALIZAÇÃO DESTA CONFIGURAÇÃO. |
A configuração da integração entre a Carol e Protheus se baseia na configuração de um Schedule que será executado em intervalos previamente definidos, acionando assim as API's da Carol abaixo:
O cliente utiliza a Carol para as marcações de ponto dentro da empresa, esta empresa possui diversos dispositivos espalhados pela organização.
O Protheus será o responsável por acionar a plataforma Carol e buscar as informações contidas em cada dispositivo e gerar os registros dentro do módulo SIGAPON, nos próximos tópicos detalharemos melhor os passos a seguir.
Para que haja a devida integração entre os dois sistemas, se faz necessário preencher os parâmetros abaixo:
Parâmetro | Descrição do Parâmetro | Exemplo de utilização |
---|---|---|
MV_APICLO1 | CLockin da Carol - Endereço de Acesso ao EndPoint | |
MV_APICLO2 | Clockin da Carol - Patch de Acesso ao EndPoint. | api/v2/oauth2/token |
MV_APICLO3 | Clockin da Carol - ID de Conexão de Acesso. | 0a0829171432c9bb26460c31b78f1 |
MV_APICLO4 | Clockin da Carol - Username de Acesso ao EndPoint. | username@totvs.com.br |
MV_APICLO5 | Clockin da Carol - Password de Acesso ao EndPoint. | senha1 |
MV_APICLO6 | Clockin da Carol - Domain Name de Acesso EndPoint. | domínioCliente |
MV_APICLO7 | Path do EndPoint DeviceList -ClockIn Carol. | api/v2/queries/named/deviceList |
MV_APICLO8 | Path EndPoint clockinrecordsList - Clockin Carol. | api/v2/queries/named/clockinrecordsList |
A criação destes parâmetros estará disponível apenas na 12.1.27 e caso o cliente possua a plataforma Carol e versão inferior a citada e deseja integrar com o módulo SIGAPON no Protheus, deverá criar manualmente os parâmetros. |
Após preencher a parametrização correta nos parâmetros citados acima, se faz necessário realizar o cadastro de Schedule ou no cadastro de menus do Protheus dentro do módulo SIGACFG.
A rotina desenvolvida para a realização de todo o fluxo de requisição para a Carol foi nomeada de PONAPI01, esta rotina não estará disponibilizada em Menu ou pré carregada no Schedule.
O Processo de Cadastramento será o mesmo utilizado por outras rotinas:
Desenvolvido o processo conforme estudo realizado. Este processo buscará todas as marcações de todos os períodos de todos os dispositivos conforme os parâmetros existentes, sendo eles:
Parâmetro | Observação | Obrigatório | Tipo | Exemplo |
---|---|---|---|---|
lWork | Informa se a rotina está sendo executada via processo em segundo plano. | Não | Lógico | .F. |
dInicio | Data de inicio para buscar as marcações de ponto | Não | Data | STOD("20000101") |
dFinal | Data Final para buscar as marcações de ponto | Não | Data | dDatabase |
cCoDisp | Código específico do dispositivo para buscar as marcações. | Não | String | 38b0dc89a20aaf49 |
nCodNSR | Código do NSR a ser utilizado para buscar as marcações. | Não | Inteiro | 00 |
Obs.: O parâmetro nCodNSR somente deverá ser utilizado quando for necessário realizar buscar uma marcação especifica, pois o Protheus já busca todas as marcações atuais.
Cadastro de Rotina
Preenchimento da periodicidade dos acionamentos:
Interface de Agents.
Gerenciamento da fila e execução dos agents.
Tela de listagem de menus.
Tela de configuração do menu escolhido.
Para possibilitar o acompanhamento da integração do Protheus com a Carol, será apresentado algumas mensagens em tela caso o acionamento seja manual pelo menu ou no console.log quando a rotina for acionada via Schedule.
<!-- esconder o menu --> <style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } </style> |