Á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 Email para recebimento de mensagens do Log de integração. Caso esteja em branco o email não é enviado. Exemplo: [email protected]

ATENÇÃO:

Informações
titleConfiguração necessária para envio de email

MV_RELACNT - Conta utilizada para envio do email
MV_RELSERV - Endereço do servidor de email
MV_RELPSW - Senha da conta utilizada para envio do email
MV_RELAUSR - usuario de autenticação de email
MV_RELAPSW - senha do usuario de autenticação de email
MV_RELFROM - endereço de email que ira disparar o email
MV_RELAUTH - Faz autenticação no servidor de email

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. PRINCIPAIS FONTES

FonteDescrição
PONM430Rotina 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.


06. 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>