Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

ÍNDICE

Índice

01. VISÃO GERAL

Este documento de referência tem como objetivo explicar o funcionamento da integração do Protheus com o Suricato, desde a configuração dos parâmetros necessários e os WebServices envolvidos na integração, basicamente eles são os mesmos utilizado pelo TSA.

02. PARÂMETROS

Antes da configuração dos parâmetros, será necessário já possuir o Suricato instalado e configurado, pois existe um parâmetro que deve ser preenchido com o endereço do servidor onde se encontra o Suricato. Informações sobre o Suricato podem ser obtidas através de contato com a parceira mantenedora do produto, através de abertura de ticket.

ParâmetroDescrição
MV_TSREPDefine se haverá integração entre o modulo SIGAPON e o aplicativo Suricato . Conteúdo: .T.
MV_TSASERVEndereço IP ou nome do servidor da instalação do aplicativo Suricato.  Exemplo: 10.0.0.90:8080/tsa-ejb
MV_TSANDIADefine o Número de dias anteriores a data do sistema para que seja feito o sincronismo dos funcionários demitidos. Exemplo: 30
MV_TSATLOGDefine qual será o tipo de envio do Log de erros da integração do módulo Ponto Eletronico X Aplic. Suricato (0=Não Gera, 1=E-mail, 2=Arquivo, 3=Ambos, 5=SaveXML). Exemplo: 3
MV_TSADARQDefine o nome do diretório onde serão gravados os arquivos de Log de erros gerados da integração do módulo Ponto Eletrônico X Aplicativo TSA. Exemplo: \logwsrhtsa\
MV_TSAIURBHabilita a integração do crachá do funcionário com o Suricato. Exemplo: .T.
MV_TSAMAILEndereço de E-mail para recebimento de mensagens do Log de integração. Caso esteja em branco o e-mail não é enviado. Exemplo: [email protected]

ATENÇÃO:

Informações
titleConfiguração necessária para envio de e-mail

MV_RELACNT - Conta utilizada para envio do e-mail
MV_RELSERV - Endereço do servidor de e-mail
MV_RELPSW - Senha da conta utilizada para envio do e-mail
MV_RELAUSR - Usuário de autenticação de e-mail
MV_RELAPSW - Senha do usuário de autenticação de e-mail
MV_RELFROM - Endereço de e-mail que ira disparar o e-mail
MV_RELAUTH - Faz autenticação no servidor de e-mail

Informações
title Log XML - MV_TSATLOG = 5

A opção 5 gera o xml de envio e retorno na pasta system,essa opção é útil para analisar erros porém consome muito espaço em disco, por isso é importante ativá-lo para realizar o teste necessário e logo depois desativá-lo.

Nome dos arquivos :
"Numero Sequencial"_SND.XML → XML enviado ao Suricato
"Numero Sequencial"_RCV.XML → XML recebido do suricato como retorno do XML SND

03. CADASTRO DO RELÓGIO

Para efetuar a leitura de marcações a partir do Suricato, deve-se alterar o cadastro do relógio e informar o conteúdo “R” no campo Tipo Arquivo (P0_TIPOARQ). Ao iniciar o processo de leitura de marcações, a rotina irá buscar os registros da tabela MSA_CONTROL_MARCAC de determinada data de/até que contém o campo LOG_IMPORT_PRODUT = 0.

Atenção: a leitura de marcações somente irá funcionar se a tabela MSA_CONTROL_MARCAC estiver cadastrada no mesmo banco de dados do Protheus.

Observação: quando o Suricato coleta as marcações do relógio REP e grava os registros na tabela MSA_CONTROL_MARCAC, o número do REP gravado no campo COD_REP não possui os “0” (zeros) a esquerda. Por exemplo, caso o número do REP seja “00005001030033938”, o Suricato irá gravar no campo COD_REP somente “5001030033938”; dessa forma, é necessário alterar o conteúdo do campo P0_REP do Cadastro de Relógio para “5001030033938” também. Se esse processo não for efetuado, o processo de leitura não conseguirá buscar os registros de marcação da tabela MSA_CONTROL_MARCAC.

Exemplo de configuração dos campos no Cadastro de Relógios para integração de marcações no Suricato:

04. INTEGRAÇÕES REALIZADAS ENTRE OS PRODUTOS

Totvs custom tabs box
tabsEmpresa,Funcionário,Função,Turno,Feriádos,Sindicatos,Exceções,Afastamentos,Centro de Custo,Transferências,Cálculo de Férias,Cálculo de Rescisão,Regra de Apontamento,Leitura de Marcações,Fechamento do Ponto
idsempresa,funcionario,funcao,turno,feriados,sindicatos,excecoes,afastamentos,centrosdecustos,transferencias,ferias,rescisao,regradeapontamento,leiturademarcacoes,fechamentodoponto
Totvs custom tabs box items
defaultyes
referenciaempresa

Cadastro de Novas Empresas/Filiais

Ao incluir uma empresa/filial no Cadastro de Empresa, deve-se executar novamente o processo de Carga Inicial de Empresa, Unidade e Lotação para atualização da informação da empresa/filial no Suricato.

Totvs custom tabs box items
defaultno
referenciafuncionario

Cadastro de Funcionário

Efetue a admissão de um funcionário no Cadastro do Funcionários e verifique se o Cadastro do Usuário no Suricato foi atualizado. Realize a alteração no Cadastro do Funcionários e verifique se o Cadastro do Usuário no Suricato foi atualizado. Por meio do parâmetro MV_TSAIURB, é possível definir se será enviado o crachá do funcionário do Protheus para o Cadastro de Usuário do Suricato.

Totvs custom tabs box items
defaultno
referenciafuncao

Cadastro de Cargo/Função

Inclua uma função no Cadastro de Funções e verifique se o cadastro de Cargo no Suricato foi atualizado. Exclua a função e verifique se o cadastro de Cargo no Suricato foi atualizado. Realize a troca da função no Cadastro do Funcionário e verifique se o cadastro do Usuário no Suricato foi atualizado. O Suricato irá manter histórico do Cargo anterior e do atual.

Totvs custom tabs box items
defaultno
referenciaturno

Cadastro Turno de Trabalho

Realize troca de turno de trabalho do Funcionário e verifique se o cadastro do Usuário no Suricato foi atualizado. O Suricato irá manter histórico do turno anterior e do atual. Ao incluir um turno de trabalho no Cadastro de Turnos de Trabalho, não haverá integração do turno com o Suricato pois é necessário o preenchimento da tabela de horário padrão.


Totvs custom tabs box items
defaultno
referenciaferiados

Cadastro de Feriados

Inclua um feriado no Cadastro de Feriados e verifique se o cadastro de Dia Não Trabalhado no Suricato foi atualizado. Exclua o feriado e verificar se o cadastro de Dia Não Trabalhado no Suricato foi atualizado.

Totvs custom tabs box items
defaultno
referenciasindicatos

Cadastro de Sindicato

Inclua um sindicato no Cadastro de Sindicatos e verificar se o cadastro de Pessoa Jurídica no Suricato foi atualizado. Exclua o sindicato e verifique se o cadastro de Pessoa Jurídica no Suricato foi atualizado.

Totvs custom tabs box items
defaultno
referenciaexcecoes

Cadastro de Exceções

Inclua uma exceção por funcionário/período e verifique se o cadastro de Exceção no Suricato foi atualizado. Exclua a exceção cadastrada e verifique se o cadastro de Exceção no Suricato foi atualizado.

Totvs custom tabs box items
defaultno
referenciaafastamentos

Cadastro de Afastamentos

Inclua um afastamento para o Funcionário e verifique se o cadastro do Usuário no Suricato foi atualizado. Exclua o afastamento e verifique se o cadastro do Usuário no Suricato foi atualizado.

Totvs custom tabs box items
defaultno
referenciacentrosdecustos

Cadastro de Centros de Custo

Inclua um centro de custo no Cadastro de Centros de Custo e verifique se o cadastro de Centro de Custo no Suricato foi atualizado. Exclua o centro de custo e verifique se o cadastro de Centro de Custo no Suricato foi atualizado.

Totvs custom tabs box items
defaultno
referenciatransferencias

Cadastro de Transferências

Realize transferência de Centro de Custo e verificar se o cadastro do Usuário no Suricato foi atualizado. O Suricato irá manter histórico do centro de custo anterior e do atual.

Realize transferência de Filial/Empresa e verifique se o cadastro do Usuário no Suricato foi atualizado. O TSA irá manter 2 registros do Usuário (devido mudança na chave externa). Observe que o registro anterior terá data de demissão com 1 dia anterior ao da transferência e o registro atual manterá o crachá do usuário.

Totvs custom tabs box items
defaultno
referenciaferias

Cálculo de Férias

Realize o cálculo de férias para um funcionário e verifique se o cadastro do Usuário no Suricato foi atualizado com a informação do afastamento. Exclua o cálculo de férias e verifique se o cadastro do Usuário no Suricato foi atualizado.

Totvs custom tabs box items
defaultno
referenciarescisao

Cálculo de Rescisão

Realize o cálculo de rescisão para um funcionário e verifique se o cadastro do Usuário no Suricato foi atualizado com a informação do desligamento. Observe que serão gerados dois registros do crachá, um com a data final até às 23:59 do dia da demissão.

Exclua o cálculo de rescisão e verifique se o cadastro do Usuário no Suricato foi atualizado. Observe que será incluído um novo histórico do crachá sem data final.

Totvs custom tabs box items
defaultno
referenciaregradeapontamento

Cadastro de Regra de Apontamento

Altere o intervalo móvel de uma regra na rotina de Cadastro de Regras de Apontamento e verifique se o campo Intervalo Flexível do cadastro do Usuário no Suricato foi atualizado.

Totvs custom tabs box items
defaultno
referencialeiturademarcacoes

Cadastro de Relógios e Leitura de Marcações

Para efetuar a leitura de marcações a partir do Suricato, deve-se alterar o cadastro do relógio e informar o conteúdo R no campo Tipo Arquivo (P0_TIPOARQ). Ao iniciar o processo de leitura de marcações, a rotina irá buscar os registros da tabela MSA_CONTROL_MARCAC de determinada data de/até que contém o campo LOG_IMPORT_PRODUT = 0.

Atenção: A leitura de marcações somente irá funcionar se a tabela MSA_CONTROL_MARCAC estiver cadastrada no mesmo banco de dados do Protheus.

Observação: Quando o Suricato coleta as marcações do relógio REP e grava os registros na tabela MSA_CONTROL_MARCAC, o número do REP gravado no campo COD_REP não possui os “0” (zeros) à esquerda.

Por exemplo, caso o número do REP seja 00005001030033938, o Suricato irá gravar no campo COD_REP somente 5001030033938; desta forma é necessário alterar o conteúdo do campo P0_REP do Cadastro de Relógio para 5001030033938 também. E quando o relógio for REP, é obrigatório que o campo P0_NOVO do Cadastro de Relógio esteja cadastrado com conteúdo 1 = Sim. Se este processo não for efetuado, o processo de leitura não conseguirá buscar os registros de marcação da tabela MSA_CONTROL_MARCAC.

Observação: O Suricato não grava o horário da marcação em horas e minutos no campo NUM_HORAR_MARCAC_ACES da tabela MSA_CONTROL_MARCAC. É necessário converter o conteúdo para horas e minutos efetuando a seguinte conta:

NUM_HORAR_MARCAC_ACES / 3600 (para encontrar as horas);
Resto da divisão X 60 (para encontrar os minutos);
Resto da divisão X 60 (para encontar os segundos).
Exemplo: NUM_HORAR_MARCAC_ACES = 59730:

59730 / 3600 = 16,59166666666667;
0,59166666666667 X 60 = 35,5;
0,5 X 60 = 30.
Resultado: 16:35:30.

Totvs custom tabs box items
defaultno
referenciafechamentodoponto

Fechamento do Ponto

Realize o fechamento do ponto.

Caso haja alteração na sequencia inicial do turno de trabalho, haverá atualização do cadastro de Usuário no Suricato.

Este processo somente será executado caso a nova sequencia inicial do turno seja diferente da anterior.


05. TABELAS E ROTINAS ENVOLVIDAS NA INTEGRAÇÃO

Totvs custom tabs box
tabsTabelas,Rotinas
idstabelas,rotinas
Totvs custom tabs box items
defaultyes
referenciatabelas

Segue abaixo as tabelas envolvidas na integração com o Suricato:

TabelaDescrição
CTT Centro de Custo
RCE Sindicatos
SPA Regra de Apontamento
SPJ Tabela de Horário Padrão
SP2 Exceções
SP3 Feriados
SPF Transferência de Turno
SPJ Horário Padrão
SR6Turnos de Trabalho
SR8 Controle de Ausências
SRA Funcionários
SRG Rescisões
SRH Férias e SRJ – Funções
Totvs custom tabs box items
defaultno
referenciarotinas

Segue abaixo as rotinas envolvidas na integração com o Suricato:

RotinaDescrição
CSAM080 Cadastro de Aumento programado
CTBA030 Cadastro de Centro de Custos
GPEA010 Cadastro de Funcionários
GPEA030 Cadastro de Funções
GPEA080 Cadastro de Turno de Trabalho
GPEA180 Cadastro de Transferência de Funcionários
GPEA240 Cadastro de Afastamentos
GPEA265 Cadastro de Autônomos
GPEA340 Cadastro de Sindicatos
GPEM030 Cadastro de Férias
GPEM040 Cadastro de Rescisão
GPEM060 Férias Coletivas/Programadas
GPEXFUN1 Biblioteca de Funções do SIGAGPE
PONA020 Cadastro de Feriado
PONA080 Manutenção da Tabela de Horário Padrão
PONA090 Cadastro de Exceções por Período
PONA140 Cadastro de Exceções por Funcionário
PONA160 Troca de Turno
PONM430 Integração TSA
PONXFUN Biblioteca de Funções do SIGAPON
PONXFUN1 Biblioteca de Funções do SIGAPON
PTSREPOBJ Biblioteca de Funções do SIGAPON
RHUPDPON Atualizador do Ponto Eletrônico
TRMA100 Cadastro de Funcionários
TRMA210 Cadastro de Funções

06. PRINCIPAIS FONTES E WEB SERVICES

Totvs custom tabs box
tabsFontes,Web Services
idsfontes,webservices
Totvs custom tabs box items
defaultyes
referenciafontes
Totvs custom tabs box
tabsCarga Incial,PTSREPOBJ
idscargainicial,ptsrepobj
Totvs custom tabs box items
defaultyes
referenciacargainicial

Carga Incial - POMM430

Para a primeira integração com o Suricato, será necessário realizar a carga inicial. A rotina de Carga Inicial (POMM430 - Miscelânea → S.r.e.p. → Integração Tsa), será responsável por enviar todas as informações necessárias para a utilização do Suricato. Nela é possível selecionar quais informações serão enviadas inicialmente, que vão desde o cadastro da empresa até Férias/Afastamentos dos funcionários. É recomendado enviar primeiramente os cadastrados da Empresa, Unidade e Lotação.

Totvs custom tabs box items
defaultno
referenciaptsrepobj

PTSREPOBJ

Este fonte possui todos os métodos que irá fazer a chamada de um Web Service para realizar a integração com o Suricato. Como por exemplo o método WSNatural, este método irá realizar a inclusão/alteração de um funcionário no Suricato. O método irá buscar as informações da tabela envolvida e enviará elas para o Web Service, que irá enviar para o Suricato.

Totvs custom tabs box items
defaultno
referenciawebservices
Totvs custom tabs box
tabsAbsenceReason,AllocationUnit,CostCenter,DayNotWorked,Exception,LegalPerson,LocationIntegration,NaturalPerson,PositionLevel,ScaleIntegration,ShiftWork,Unit,UserIntegration
idsabsencereason,allocationunit,costcenter,daynotworked,exception,legalperson,locationintegration,naturalperson,positionlevel,scaleintegration,shiftwork,unit,userintegration
Totvs custom tabs box items
defaultyes
referenciaabsencereason

WSClient_WSRHTSAAbsenceReason

Totvs custom tabs box items
defaultno
referenciaallocationunit

WSClient_WSRHTSAAllocationUnit

Totvs custom tabs box items
defaultno
referenciacostcenter

WSClient_WSRHTSACostCenter

Totvs custom tabs box items
defaultno
referenciadaynotworked

WSClient_WSRHTSADayNotWorked

Totvs custom tabs box items
defaultno
referenciaexception

WSClient_WSRHTSAException

Totvs custom tabs box items
defaultno
referencialegalperson

WSClient_WSRHTSALegalPerson

Totvs custom tabs box items
defaultno
referencialocationintegration

WSClient_WSRHTSALocationIntegration

Totvs custom tabs box items
defaultno
referencianaturalperson

WSClient_WSRHTSANaturalPerson

Totvs custom tabs box items
defaultno
referenciapositionlevel

WSClient_WSRHTSAPositionLevel

Totvs custom tabs box items
defaultno
referenciascaleintegration

WSClient_WSRHTSAScaleIntegration

Totvs custom tabs box items
defaultno
referenciashiftwork

WSClient_WSRHTSAShiftWork

Totvs custom tabs box items
defaultno
referenciaunit

WSClient_WSRHTSAUnit

Totvs custom tabs box items
defaultno
referenciauserintegration

WSClient_WSRHTSAUserIntegration

FonteDescriçãoPONM430Rotina de Carga Inicial (Integração Tsa)PTSREPOBJFonte com os métodos de integração do Suricato.WSClient_WSRHTSAUserIntegrationOnde é possível capturar o Xml do método de integração.WSClient_WSRHTSA...Demais fontes dos métodos onde podemos pegar o xml enviado ao Suricato para os demais métodos.

07. MÉTODOS

Totvs custom tabs box
tabsIntegração Tsa
idsintegracaotsa

A rotina de Integração TSA, geralmente é utilizada para a realização da carga inicial da integração. Ao executar a rotina, ela irá processar todos os métodos que enviam informações para o TSA/Suricato, que são:

IntegraçãoWeb Services
Empresa, Unidade e Lotação
Cargos e Funções
Sindicatos
Turnos de Trabalho e Escala
Controle de Ausências
Centros de Custo
Situação de Afastamento
Funcionários
Cadastro de Afastamento
Exceções
Ferias Afastamentos



HTML
<!-- 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>