Í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âmetro | Descrição | Exemplo de utilização |
---|
MV_TSREP | Define se haverá integração entre o modulo SIGAPON e o aplicativo Suricato. | .T. |
MV_TSASERV | Endereço IP ou nome do servidor da instalação do aplicativo Suricato. | 10.0.0.90:8080/tsa-ejb |
MV_TSANDIA | Define o Número de dias anteriores a data do sistema para que seja feito o sincronismo dos funcionários demitidos. | 30 |
MV_TSATLOG | Define 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). | 3 |
MV_TSADARQ | Define 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. | \logwsrhtsa\ |
MV_TSAIURB | Habilita a integração do crachá do funcionário com o Suricato. | .T. |
MV_TSAMAIL | Endereço de E-mail para recebimento de mensagens do Log de integração. Caso esteja em branco o e-mail não é enviado. | [email protected] |
Atenção:
Informações |
---|
title | Configuraçã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:
![](/download/attachments/546695095/image2020-4-29_9-56-31.png?version=1&modificationDate=1588164991770&api=v2&effects=drop-shadow)
04. INTEGRAÇÕES REALIZADAS ENTRE OS PRODUTOS
Totvs custom tabs box |
---|
tabs | Empresa,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 |
---|
ids | empresa,funcionario,funcao,turno,feriados,sindicatos,excecoes,afastamentos,centrosdecustos,transferencias,ferias,rescisao,regradeapontamento,leiturademarcacoes,fechamentodoponto |
---|
|
Totvs custom tabs box items |
---|
default | yes |
---|
referencia | empresa |
---|
| 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 |
---|
default | no |
---|
referencia | funcionario |
---|
| Cadastro de Funcionário Ao realizar a admissão de um funcionário ou alteração de seus dados no Cadastro do Funcionários o mesmo será integrado com o Suricato. Para confirmar se a integração foi realizada com sucesso, verifique se o Cadastro de Funcionário no Suricato foi atualizado. Observação: Por meio do parâmetro MV_TSAIURB, é possível definir se será enviado o crachá do funcionário do Protheus para o Cadastro de funcionário do Suricato. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | funcao |
---|
| Cadastro de Cargo/Função Ao realizar a inclusão, alteração ou exclusão de uma uma função no Cadastro de Funções, a função será integrada com o Suricato. Também será integrada a troca de função de um funcionário. Se for realizada a troca de função essa informação será integrada com o Suricato e ele irá manter histórico do função anterior e do atual. Para confirmar se a integração funcionou, verifique no Suricato se o Cadastro de Cargo ou o Cadastro do Funcionário foram atualizados. |
Totvs custom tabs box items |
---|
| Cadastro Turno de Trabalho 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. Caso seja realizada a troca de turno de trabalho do Funcionário a mesma será integrada e o Suricato irá manter histórico do turno anterior e do atual. Para confirmar se a integração funcionou, verifique no Suricato se a Escala, Horário da Escala ou o Cadastro do funcionário foram atualizados. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | feriados |
---|
| Cadastro de Feriados Ao realizar a inclusão, alteração ou exclusão de um feriado no Cadastro de Feriados, ele será integrado com o Suricato. Para confirmar a se a integração funcionou, verifique se o cadastro de Feriados no Suricato foi atualizado. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | sindicatos |
---|
| Cadastro de Sindicato Ao realizar a inclusão, alteração ou exclusão de um sindicato no Cadastro de Sindicatos, ele será integrado com o Suricato. Para confirmar se a integração funcionou verificar se o cadastro de Pessoa Jurídica no Suricato foi atualizado. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | excecoes |
---|
| Cadastro de Exceções Ao realizar a inclusão, alteração ou exclusão de uma exceção por funcionário/período, ela será integrada com o Suricato. Para confirmar se a integração funcionou verificar se o cadastro de Situações no Suricato foi atualizado. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | afastamentos |
---|
| Cadastro de Afastamentos Ao realizar a inclusão, alteração ou exclusão de um afastamento para o Funcionário, ela será integrada com o Suricato. Para confirmar se a integração funcionou verificar se o cadastro de Afastamentos no Suricato foi atualizado. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | centrosdecustos |
---|
| Cadastro de Centros de Custo Ao realizar a inclusão, alteração ou exclusão de um Centro de Custo no Cadastro de Centros de Custos, ele será integrado com o Suricato. Para confirmar se a integração funcionou verificar se o cadastro de Centro de Custo no Suricato foi atualizado. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | transferencias |
---|
| Cadastro de Transferências Ao realizar a transferência de um Centro de Custo de um funcionário, essa informação será integrada, alterando o cadastro do funcionário no Suricato. O Suricato irá manter histórico do centro de custo anterior e do atual. Quando a transferência de um funcionário for entre Empresas/Filiais o cadastro do funcionário no Suricato será atualizado. Observação: O Suricato manterá os dois registros do funcionário (devido mudança na chave externa), onde o registro anterior terá data de demissão com um dia anterior ao da transferência e o registro atual manterá o crachá do usuário. Para confirmar se a integração funcionou verificar se o cadastro de Funcionário no Suricato foi atualizado. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | ferias |
---|
| Cálculo de Férias Ao realizar o cálculo de férias para um funcionário, o cadastro do funcionário no Suricato será atualizado com a informação do afastamento. Para confirmar se a integração funcionou verificar se o cadastro de Funcionário no Suricato foi atualizado. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | rescisao |
---|
| Cálculo de Rescisão Ao realizar o cálculo de rescisão para um funcionário, essa informação será integrada, atualizando a informação sobre o desligamento do funcionário no Suricato. Observação: Serão gerados dois registros do crachá, um com a data final até às 23:59 do dia da demissão. Ao excluir o cálculo de rescisão, a mesma será integrada, atualizando o funcionário no Suricato. Observação: Será incluído um novo histórico do crachá sem data final. Para confirmar se a integração funcionou, verificar se o cadastro do funcionário ou o histórico de crachá foram atualizados. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | regradeapontamento |
---|
| Cadastro de Regra de Apontamento Ao alterar o intervalo móvel de uma regra na rotina de Cadastro de Regras de Apontamento o campo Tipo de Escala no Cadastro de Escala no Suricato será atualizado. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | leiturademarcacoes |
---|
| 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 |
---|
default | no |
---|
referencia | fechamentodoponto |
---|
| 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 |
---|
tabs | Tabelas,Rotinas |
---|
ids | tabelas,rotinas |
---|
|
Totvs custom tabs box items |
---|
default | yes |
---|
referencia | tabelas |
---|
| Segue abaixo as tabelas envolvidas na integração com o Suricato: Tabela | Descriçã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 | SR6 | Turnos 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 |
---|
default | no |
---|
referencia | rotinas |
---|
| Segue abaixo as rotinas envolvidas na integração com o Suricato: Rotina | Descriçã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 |
---|
tabs | Fontes,Web Services |
---|
ids | fontes,webservices |
---|
|
Totvs custom tabs box items |
---|
default | yes |
---|
referencia | fontes |
---|
| Totvs custom tabs box |
---|
tabs | Carga Incial,PTSREPOBJ |
---|
ids | cargainicial,ptsrepobj |
---|
| Totvs custom tabs box items |
---|
default | yes |
---|
referencia | cargainicial |
---|
| Carga Incial - PONM430 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, porém a rotina possui uma ordem de execução que NÃO deve ser alterada, mas não há obrigatoriedade de enviar todos os cadastros de uma vez. É recomendado enviar primeiramente os cadastrados da Empresa, Unidade e Lotação. ![](/download/attachments/546695095/image2020-4-29_15-30-15.png?version=1&modificationDate=1588185015927&api=v2&effects=drop-shadow)
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | ptsrepobj |
---|
| 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á receber as informações da tabela envolvida e enviará elas para o Web Service NaturalPerson, que irá enviar para o Suricato. |
|
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | webservices |
---|
| Totvs custom tabs box |
---|
tabs | AbsenceReason,AllocationUnit,CostCenter,DayNotWorked,Exception,LegalPerson,LocationIntegration,NaturalPerson,PositionLevel,ScaleIntegration,ShiftWork,Unit,UserIntegration |
---|
ids | absencereason,allocationunit,costcenter,daynotworked,exception,legalperson,locationintegration,naturalperson,positionlevel,scaleintegration,shiftwork,unit,userintegration |
---|
| Totvs custom tabs box items |
---|
default | yes |
---|
referencia | absencereason |
---|
| WSClient_WSRHTSAAbsenceReason O AbsenceReason é o Web Service responsável por enviar as informações referentes as ausências. O método que faz a chamada desse Web Service é o WSAbsenceReason, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações da tabela tipo de ausências (RCM), manipulará os dados e enviará para o Suricato. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | allocationunit |
---|
| WSClient_WSRHTSAAllocationUnit O AllocationUnit é o Web Service responsável por enviar as informações referentes as Unidades de Lotações. O método que faz a chamada desse Web Service é o WSAllocation, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações do cadastro de Unidade de Lotação, manipulará os dados e enviará para o Suricato. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | costcenter |
---|
| WSClient_WSRHTSACostCenter O CostCenter é o Web Service responsável por enviar as informações referentes aos Centros de Custos. O método que faz a chamada desse Web Service é o WSCostCenter, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações da tabela dos Centros de Custos (CTT), manipulará os dados e enviará para o Suricato. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | daynotworked |
---|
| WSClient_WSRHTSADayNotWorked O DayNotWorked é o Web Service responsável por enviar as informações referentes aos Feriados. O método que faz a chamada desse Web Service é o WSDayNotWorked, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações dos Feriados cadastrados (SP3), manipulará os dados e enviará para o Suricato. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | exception |
---|
| WSClient_WSRHTSAException O Exception é o Web Service responsável por enviar as informações referentes as Exceções. O método que faz a chamada desse Web Service é o WSException, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações das Exceções cadastradas (SP2), manipulará os dados e enviará para o Suricato. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | legalperson |
---|
| WSClient_WSRHTSALegalPerson O LegalPerson é o Web Service responsável por enviar as informações referentes as Empresas. O método que faz a chamada desse Web Service é o WSLegal, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações das Empresas cadastradas, manipulará os dados e enviará para o Suricato. Observação: O Web Service LegalPerson também é responsável por enviar os Sindicatos cadastrados, através do método WSSindicatoLegal. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | locationintegration |
---|
| WSClient_WSRHTSALocationIntegration O LocationIntegration é o Web Service responsável por enviar as informações referentes as Localizações (Cidades). O método que faz a chamada desse Web Service é o WSLocation, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações das Localizações cadastradas, manipulará os dados e enviará para o Suricato. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | naturalperson |
---|
| WSClient_WSRHTSANaturalPerson O NaturalPerson é o Web Service responsável por enviar as informações referentes aos Funcionário. O método que faz a chamada desse Web Service é o WSNatural, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações dos Funcionário cadastrados (SRA), manipulará os dados e enviará para o Suricato. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | positionlevel |
---|
| WSClient_WSRHTSAPositionLevel O PositionLevel é o Web Service responsável por enviar as informações referentes as Funções do funcionário. O método que faz a chamada desse Web Service é o WSPositionLevel, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações das Funções cadastradas (SRJ), manipulará os dados e enviará para o Suricato. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | scaleintegration |
---|
| WSClient_WSRHTSAScaleIntegration O ScaleIntegration é o Web Service responsável por enviar as informações referentes a Tabela Horário Padrão. O método que faz a chamada desse Web Service é o WSSCale, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações da Tabela de Horário Padrão cadastradas (SPJ), manipulará os dados e enviará para o Suricato. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | shiftwork |
---|
| WSClient_WSRHTSAShiftWork O ShiftWork é o Web Service responsável por enviar as informações referentes ao Turnos. O método que faz a chamada desse Web Service é o WSShiftWork, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações da tabela de Turnos cadastrados (SR6), manipulará os dados e enviará para o Suricato. |
Totvs custom tabs box items |
---|
| WSClient_WSRHTSAUnit O Unit é o Web Service responsável por enviar as informações referentes a Unidade. O método que faz a chamada desse Web Service é o WSUnit, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações da Unidade cadastrada, manipulará os dados e enviará para o Suricato. |
Totvs custom tabs box items |
---|
default | no |
---|
referencia | userintegration |
---|
| WSClient_WSRHTSAUserIntegration O UserIntegration é o Web Service responsável por enviar as informações referentes aos Usuários. O método que faz a chamada desse Web Service é o WSUser, localizado no fonte PTSREPOBJ. Neste método o sistema irá receber as informações dos Usuários, tais como Nome, Centro de Custo, Papéis (Permissões) e etc, manipulará os dados e enviará para o Suricato. Observação: Este Web Service é diferente dos demais, pois ele possui vários métodos para inserir informações diferentes, como por exemplo Centro de Custo e Função, utilizando os métodos insertUserShiftWork e insertUserPositionLevel respectivamente, localizados no Web Service. |
|
|
|
07. RELACIONAMENTO ROTINAS X WEB SERVICES
Seguem abaixo os nomes das rotinas e seus serviços relacionados:
Rotina | Web Services |
---|
Schedule Empresa | LegalPerson |
Schedule Unidade | Unit |
Schedule Unidade de Lotação | AllocationUnit |
Schedule Localidade | LocationIntegration |
Schedule Tabelas 30/31 – Módulo Configurador | AbsenceReason, UnitAbsenceReason |
Cadastro de Aumento Programado (CSAM080) | UserIntegration |
Cadastro de Centro de Custos (CTBA030) | CostCenter |
Cadastro de Funcionário (GPEA010) | UserIntegration, UserShiftWork, UserLocation, UserRoleBadge, UserCostCente, UserAllocationUnit, UserAbsenceReason, RemoveUserAbsenceReason |
Cadastro de Funções (GPEA030) | PositionLevel |
Cadastro de Turno de Trabalho (GPEA080) | ShiftWork |
Cadastro de Transferência de Funcionário (GPEA180) | UserIntegration, NaturalPerson |
Cadastro de Afastamentos (GPEA240) | UserAbsenceReason |
Cadastro de Autônomos (GPEA265) | UserIntegration, UserShiftWork, UserLocation, UserRoleBadge, UserCostCente, UserAllocationUnit, UserAbsenceReason, RemoveUserAbsenceReason |
Cadastro de Sindicato (GPEA340) | SindicatoLegal |
Cadastro de Férias (GPEM030) | UserIntegration, UserAbsenceReason |
Cadastro de Rescisão (GPEM040) | UserIntegration, UserShiftWork, UserLocation, UserRoleBadge, UserCostCente, UserAllocationUnit, UserAbsenceReason |
Férias Coletivas/Programadas (GPEM060) | UserIntegration, UserAbsenceReason |
Cadastro de Feriado (PONA020) | DayNotWorked |
Manutenção da Tabela de Horário Padrão (PONA080) | ShiftWork,Scale |
Cadastro de Exceções por Período (PONA090) | Exception |
Cadastro de Exceções por Funcionário (PONA140) | Exception |
Troca de Turno (PONA160) | UserIntegration, UserShiftWork |
Integração TSA (PONM430) | Todos |
Cadastro de Funcionários (TRMA100) | UserIntegration, UserShiftWork, UserLocation, UserRoleBadge, UserCostCente, UserAllocationUnit, UserAbsenceReason, RemoveUserAbsenceReason |
Cadastro de Funções (TRMA210) | PositionLevel |
08. MONTAGEM DO CONTEÚDO DO XML
Neste tópico iremos abordar como é feita a montagem do conteúdo do XML, na qual será enviado para o Web Service. Lembrando que caso haja a necessidade de pegar o XML completo, com as informações do Cabeçalho e etc, será necessário ativar o parâmetro MV_TSATLOG com o valor 5 e verificar o arquivo gerado na pasta System, conforme descrito anteriormente no tópico de Parâmetros. Neste exemplo iremos realizar a integração do a partir da rotina de Carga Inicial (Integração TSA - PONM430), integrando o Centro de Custo.
- Ao acessar a rotina de integração, quando selecionamos apenas o turno, podemos observar que o valor da opção é 06.
![](/download/attachments/546695095/image2020-4-30_10-18-16.png?version=1&modificationDate=1588252696303&api=v2)
- Sabendo disso, podemos localizar qual função que irá realizar essa integração, no caso é função ProcP08 no fonte da Carga Inicial (PONM430)
![](/download/attachments/546695095/image2020-4-30_10-22-10.png?version=1&modificationDate=1588252930497&api=v2)
- Verificando a função ProcP08, ela está chamando outra função, que neste caso é a WSRHCostCenter.
![](/download/attachments/546695095/image2020-4-30_10-23-49.png?version=1&modificationDate=1588253030037&api=v2)
- Vamos então procurar onde a função WSRHCostCenter está, após a pesquisa, descobrimos que ela está localizada no fonte PONXFUN1.
![](/download/attachments/546695095/image2020-4-30_10-43-11.png?version=1&modificationDate=1588254191723&api=v2)
Nela podemos verificar que ela faz a busca das informações dos Centro de Custos diretamente na tabela.
![](/download/attachments/546695095/image2020-4-30_10-27-40.png?version=1&modificationDate=1588253260173&api=v2)
Após realizar a consulta na tabela CTT, o sistema irá enviar essas informações para o método WSCostCenter.
![](/download/attachments/546695095/image2020-4-30_10-44-7.png?version=1&modificationDate=1588254247987&api=v2)
- O método WSCostCenter, está localizado no fonte PTSREPOBJ.
![](/download/attachments/546695095/image2020-4-30_10-42-4.png?version=1&modificationDate=1588254124840&api=v2)
Antes de enviar as informações para o Web Service, podemos verificar que o sistema está montando as informações do Centro de Custo, como a Descrição e a Chave Externa.
![](/download/attachments/546695095/image2020-4-30_10-45-49.png?version=1&modificationDate=1588254349150&api=v2)
Observação: O método do Web Service chamado, foi o insertOrUpdate.
- O método insertOrUpdate localizado no Web Service WebWSClient_WSRHTSACostCenter, está realizando a integração com o Suricato.
![](/download/attachments/546695095/image2020-4-30_10-50-55.png?version=1&modificationDate=1588254656293&api=v2)
- Antes de enviar as informações da integração, conseguiremos verificar o conteúdo do XML, no caso as informações do Centro de Custo, verificando o conteúdo do objeto oWSarg0.
![](/download/attachments/546695095/image2020-4-30_10-53-22.png?version=1&modificationDate=1588254802960&api=v2)
Após todo esse processo, conseguimos verificar de fato quais informações estão sendo integradas com o Suricato. Este mesmo processo pode ser realizado com as demais integrações, como por exemplo as integração de Funcionários, Funções, Turnos e etc. Para isso só será necessário identificar qual é a opção selecionada e posteriormente a função desta opção. Em outros casos como por exemplo a integração de funcionário realizadas após a inclusão ou alterção do mesmo, precisaremos localizar no fonte de Cadastro de Funcionário, qual função ou método está sendo chamado para a integração. Por exemplo, no cadastro de funcionário os métodos WSNatural e WSUser estão sendo chamados.
![](/download/attachments/546695095/image2020-4-30_11-5-30.png?version=1&modificationDate=1588255530383&api=v2)
09. OCORRÊNCIAS NA INTEGRAÇÃO
Com a utilização do parâmetro MV_TSATLOG, na qual o parâmetro permite que todas as rotinas de integração gerem um log de retorno com as críticas realizadas pelas regras do aplicativo, é possível saber exatamente qual foi o erro gerado durante o processo de integração. No exemplo que iremos mostrar utilizamos o parâmetro com o valor igual a 5, desta maneira iremos ter o XML enviado e o XML de retorno com o código do erro ou sucesso.
- Confirmado que o parâmetro está com o valor 5.
![](/download/attachments/546695095/image2020-4-30_15-27-49.png?version=1&modificationDate=1588271269647&api=v2)
- Após a inclusão do funcionário no Protheus, iremos visualizar o código de retorno informado no log gerado. Para isso basta acessar a pasta System do Protheus e procurar pelo arquivo. O nome do arquivo é composto por um número sequencial, seguido de _RCV.xml para o XML de retorno e _SND.xml para o XML enviado. Em nosso exemplo o nome do arquivo de retorno gerado é 55847972_rcv.xml. Ao abrir o arquivo de retorno devemos procurar pela Tag statusCode, ela que conterá o código do retorno, que poderá ser de sucesso ou erro na integração, em nosso teste o código gerado foi o 00100, isso significa que a integração funcionou corretamente.
![](/download/attachments/546695095/image2020-4-30_15-46-46.png?version=1&modificationDate=1588272406203&api=v2)
Cada Web Service possui códigos e descrições diferentes, por isso para facilitar no entendimento dos códigos de retorno, segue abaixo a tabela de códigos de cada Web Service:
Totvs custom tabs box |
---|
tabs | Empresa,Unidade,Centro de Custo,Unidade de Lotação,Turno,Tabela de Horário Padrão,Funcionários,Localidade,Função,Afastamento,Exceção,Feriados,Usuários,Marcações |
---|
ids | cdempresa,cdunidade,cdcentrocusto,cdunidadelotacao,cdturno,cdtabelapadrao,cdfuncionario,cdlocalidade,cdfuncao,cdafastamento,cdexcecao,cdferiados,cdusuario,cdmarcacoes |
---|
|
Totvs custom tabs box items |
---|
default | yes |
---|
referencia | cdempresa |
---|
| Empresa Código do Retorno | Descrição do código de retorno |
---|
00101 | Inclusão/Alteração da Empresa Jurídica realizada com sucesso. | 00102 | Chave externa da Empresa Jurídica é obrigatória. | 00103 | Deve ser informado pelo menos o CNPJ ou CEI. | 00104 | Exclusão da unidade realizada com sucesso. | 00105 | Deve ser informado apenas um dos campos: CNPJ ou CEI. | 00106 | Nome da pessoa jurídica é obrigatória. | 00107 | Pessoa jurídica está sendo usada, não é possível realizar a exclusão. | 00100 | Erro Técnico (retornar erros ocorridos durante a execução). |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdunidade |
---|
| Unidade Código do Retorno | Descrição do código de retorno | 00201 | Inclusão/Alteração da unidade realizada com sucesso. | 00202 | Chave externa da Unidade é obrigatória. | 00203 | Chave externa de Pessoa Jurídica é obrigatória. | 00204 | Código da unidade é obrigatório. | 00205 | Tipo da unidade é obrigatório. | 00206 | Exclusão da unidade realizada com sucesso. | 00207 | Inclusão de relacionamento realizada com sucesso. | 00208 | Exclusão de relacionamento realizada com sucesso. | 00209 | Inclusão de relacionamento realizada parcialmente. | 00210 | Unidade está sendo usada, não é possível realizar a exclusão. | 00211 | Inclusão de relacionamento não realizada, nenhuma chave externa é existente. | 00212 | Exclusão de relacionamento não realizada, nenhuma chave externa é existente. | 00213 | Usuário ou senha são inválidos. | 00214 | Unidade está sendo usada, não é possível realizar a exclusão. | 00215 | Descrição da Unidade é Obrigatória. | 00216 | Nenhum registro encontrado com a chave externa. | 00200 | Erro Técnico (retornar erros ocorridos durante a execução). |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdcentrocusto |
---|
| Centro de Custo Código do Retorno | Descrição do código de retorno | 00301 | Inclusão/Alteração do Centro de Custo realizada com sucesso. | 00302 | Chave externa do Centro de Custo é obrigatória. | 00303 | Exclusão da unidade realizada com sucesso. | 00304 | Usuário ou senha são inválidos. | 00305 | Descrição do Centro de Custo é obrigatória. | 00306 | Centro de Custo está sendo usado, não é possível realizar a exclusão. | 00300 | Erro Técnico (retornar erros ocorridos durante a execução). |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdunidadelotacao |
---|
| Unidade de Lotação Código do Retorno | Descrição do código de retorno | 00401 | Inclusão/Alteração da Unidade de Lotação realizada com sucesso. | 00402 | Chave externa da Unidade de Lotação é obrigatória. | 00403 | Exclusão da Unidade de Lotação realizada com sucesso. | 00404 | Usuário ou senha são inválidos. | 00405 | Descrição da Unidade de Lotação é obrigatória. | 00406 | Unidade de Lotação está sendo usada, não é possível realizar a exclusão. | 00400 | Erro Técnico (retornar erros ocorridos durante a execução). |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdturno |
---|
| Turno Código do Retorno | Descrição do código de retorno | 00501 | Inclusão/Alteração do Turno realizada com sucesso. | 00502 | Chave externa do Turno é obrigatória. | 00503 | Data de início é obrigatória. | 00504 | Data de início deve ser uma data válida. | 00505 | Exclusão do Turno realizada com sucesso. | 00506 | Pelo menos uma escala deve estar informada e deve conter pelo menos um intervalo de horário do tipo Jornada. | 00507 | Descrição é obrigatória. | 00509 | Turno está sendo usado, não é possível realizar a exclusão. | 00500 | Erro Técnico (retornar erros ocorridos durante a execução). |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdtabelapadrao |
---|
| Tabela de Horário Padrão Código do Retorno | Descrição do código de retorno | 00601 | Inclusão/Alteração da Grade de Trabalho realizada com sucesso. | 00602 | Chave externa da Grade de trabalho é obrigatória. | 00603 | A chave externa do turno é obrigatória. | 00604 | A escala deve conter pelo menos um par de horários do tipo Jornada. | 00605 | Os pares de horários informados estão incorretos. | 00606 | A sequência de inicio é obrigatória. | 00607 | A sequência de término é obrigatória. | 00608 | O tipo é obrigatório. | 00609 | A entrada de jornada é obrigatória. | 00610 | A saída de jornada é obrigatória. | 00611 | A sequência de início não pode ser superior à sequência de término. | 00612 | Exclusão do Turno realizada com sucesso. | 00613 | Usuário ou senha são inválidos. | 00614 | Escala está sendo usada, não é possível realizar a exclusão. | 00600 | Erro Técnico (retornar erros ocorridos durante a execução). |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdfuncionario |
---|
| Funcionários Código do Retorno | Descrição do código de retorno | 00701 | Inclusão/Alteração da Pessoa física realizada com sucesso. | 00702 | Chave externa da Pessoa Física é obrigatória. | 00703 | Pelo menos o CPF ou RG deve ser informado. | 00704 | Exclusão da pessoa física realizada com sucesso. | 00705 | Usuário ou senha são inválidos. | 00706 | Pessoa física está sendo usada, não é possível realizar a exclusão. | 00700 | Erro Técnico (retornar erros ocorridos durante a execução). |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdlocalidade |
---|
| Localidade Código do Retorno | Descrição do código de retorno | 00801 | Inclusão/Alteração da Localidade realizada com sucesso. | 00802 | Chave externa da Localidade é obrigatória. | 00803 | Exclusão da localidade realizada com sucesso. | 00804 | Usuário ou senha são inválidos. | 00805 | Pelo menos País, Estado ou Cidade deve ser informada. | 00806 | Descrição de País deve ser informada. | 00807 | Descrição de Estado deve ser informada. | 00808 | Descrição de Cidade deve ser informada. | 00809 | Localidade está sendo usada, não é possível realizar a exclusão. | 00800 | Erro Técnico (retornar erros ocorridos durante a execução). |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdfuncao |
---|
| Funções Código do Retorno | Descrição do código de retorno | 00901 | Inclusão/Alteração do cargoNivel realizada com sucesso. | 00902 | Chave externa do cargoNivel é obrigatória. | 00903 | Descrição é obrigatória. | 00904 | Exclusão do cargoNivel realizada com sucesso. | 00905 | Usuário ou senha são inválidos. | 00906 | CargoNivel está sendo usado, não é possível realizar a exclusão. | 00900 | Erro Técnico (retornar erros ocorridos durante a execução). |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdafastamento |
---|
| Afastamento Código do Retorno | Descrição do código de retorno | 01001 | Inclusão/Alteração da situação de afastamento realizada com sucesso. | 01002 | Chave externa da situação de afastamento é obrigatória. | 01003 | Tipo da situação de afastamento é obrigatório. | 01004 | Exclusão da situação de afastamento realizada com sucesso. | 01005 | Data início e Data término são obrigatórias. | 01006 | Exclusão do relacionamento realizado com sucesso. | 01007 | Usuário ou senha estão inválidos. | 01008 | Descrição da situação de afastamento é obrigatória. | 01009 | Situação de Afastamento está sendo usada, não é possível realizar a exclusão. | 01010 | Inclusão do relacionamento realizado com sucesso. | 01000 | Erro Técnico (retornar erros ocorridos durante a execução). |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdexcecao |
---|
| Exceção Código do Retorno | Descrição do código de retorno | 01101 | Inclusão/Alteração da exceção realizada com sucesso. | 01102 | Chave externa da exceção é obrigatória. | 01103 | Tipo da exceção é obrigatório. | 01104 | Origem é obrigatório. | 01105 | Data início é obrigatória. | 01106 | Data Término é obrigatória. | 01112 | Exclusão da exceção realizada com sucesso. | 01113 | Pelo menos um período deve ser informado. | 01114 | Usuário ou senha inválidos. | 01115 | Os pares de horários informados estão incorretos. | 01106 | Direção é obrigatória. | 01100 | Erro Técnico (retornar erros ocorridos durante a execução). |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdferiados |
---|
| Feriados Código do Retorno | Descrição do código de retorno | 01201 | Inclusão/Alteração do dia não trabalhado realizado com sucesso. | 01202 | Chave externa do dia não trabalhado é obrigatória. | 01203 | Recorrente é obrigatório. | 01204 | Data é obrigatória. | 01205 | Exclusão do dia não trabalhado realizada com sucesso. | 01206 | O turno deve ser informado. | 01207 | A localidade deve ser informada. | 01208 | Usuário ou senha Inválidos. | 01209 | Dia não Trabalhado está sendo usado, não é possível realizar a exclusão. | 01200 | Erro Técnico (retornar erros ocorridos durante a execução). | 01210 | Inclusão do relacionamento Dia Não Trabalhado/Localidade/Turno realizado com sucesso. | 01211 | Exclusão do relacionamento Dia Não Trabalhado/Localidade/Turno realizado com sucesso. |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdusuario |
---|
| Usuários Código do Retorno | Descrição do código de retorno | 01301 | Inclusão/Alteração do usuário realizado com sucesso. | 01302 | Chave externa do usuário não foi informada. | 01303 | Chave externa de pessoa física não foi informada. | 01304 | O tipo papel não foi informado. | 01305 | Data início de validade do turno deve ser informada. | 01306 | Data término de validade do turno deve ser informada. | 01307 | Data início de validade do Centro de custo deve ser informada. | 01308 | Data término de validade do Centro de Custo deve ser informada. | 01309 | Data início de validade do CargoNivel deve ser informada. | 01310 | Data término de validade do CargoNivel deve ser informada. | 01311 | Data início de validade da Unidade de Lotação deve ser informada. | 01312 | Data término de validade da Unidade de Lotação deve ser informada. | 01313 | Data início de validade da Localidade deve ser informada. | 01314 | Data término de validade da Localidade deve ser informada. | 01315 | Chave externa de pessoa Física não existe. | 01316 | Chave externa de turno não existe. | 01317 | Chave externa de centro de custo não existe. | 01318 | Chave externa de cargonivel não existe. | 01319 | Chave externa de unidade de lotação não existe. | 01320 | Chave externa de localidade não existe. | 01321 | Chave externa de usuário não existe. | 01322 | Relacionamento incluído/alterado com sucesso. | 01323 | Usuário ou senha Inválidos. | 01324 | Usuário está sendo usado, não é possível realizar a exclusão. | 01325 | Exclusão do usuário realizada com sucesso. | 01326 | Exclusão do relacionamento de usuário com nome do relacionamento, realizada com sucesso. | 01327 | Exclusão do relacionamento de usuário com nome do relacionamento, não realizada. | 01301 | Inclusão/Alteração do usuário realizado com sucesso. | 01302 | Chave externa do usuário não foi informada. | 01303 | Chave externa de pessoa física não foi informada. | 01300 | Erro Técnico (retornar erros ocorridos durante a execução) |
|
Totvs custom tabs box items |
---|
default | no |
---|
referencia | cdmarcacoes |
---|
| Marcações Código do Retorno | Descrição do código de retorno | 01401 | Importação da batida realizada no REP: número do rep e NSR: número do nsr foi importada com sucesso. | 01402 | Importação da batida realizada no REP: número do rep e NSR: número do nsr não foi importada. | 01400 | Erro Técnico (retornar erros ocorridos durante a execução) |
|
|
10. LINKS
Integração Suricato
Instalação Suricato (SQL)
Instalação Suricato (Oracle)
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>
|