Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
  1. Versões
  2. Visão Geral
  3. Exemplo de utilizaçãoFluxoFluxo
  4. Documentação

01. VERSÕES

Informações
iconfalse

A partir dos patches:

  • 12.1.24112503.31
  • 12.1.24072411.96
  • 12.1.24032407.1512
  • ou superiores.

02. VISÃO GERAL

Proporcionar uma integração nativa entre o sistema

...

Ahgora PontoWeb by TOTVS e o RH TOTVS Datasul. Essa integração

...

permite a sincronização dos resultados apurados por meio do Integrator Ahgora. A execução ocorre manualmente, iniciada pelo usuário através da interface do Integrador 2.0 no PontoWeb, consolidando os dados filtrados na tela e enviando-os ao Datasul via API.

03. FLUXO

 

Deck of Cards
id1
Card
defaulttrue
id2
labelAPI - Envio Resultados Ponto

Objetivo: Realizar o envio, por parte da Ahgora, dos resultados apurados do ponto, permitindo a transferência de dados para vários funcionários simultaneamente.

  • Tipo de requisição: POST
  • Endpoint: api/rh/ahgora/v1/results
  • Autenticação: Basic Authentication
    • Para autenticação com o RH Datasul, basta ter um usuário com permissões da acesso as informações do funcionário, e utilizar o Basic Authentication usuário e senha.
    • Sugestão que seja um usuário genérico, para evitar recadastro caso ocorra alteração de permissões de usuário.


Body:

Nome

Descrição

Tipo

Obrigatório

Exemplo

items

Array de objetos funcionário

objeto

Sim



Objeto funcionário

Nome

Descrição

Tipo

Obrigatório

Exemplo

matricula

Matrícula do funcionário (campo exclusivo da Ahgora).

string

Sim

"10100000001"

anocomp

Ano competência.

string

Sim

"2024"

mescomp

Mês competência.

string

Sim

"12"

campoAdicional

Número do Pagamento

string

Sim

"01"

codfuncionario

Campo usado para identificar estabelecimento e matricula do funcionário. É composto por Empresa|Estabelecimento|Matricula.

string

Sim

"10|1|00000001"

resultados

Array de objetos rubrica, representa os resultados de ponto do funcionário.

objeto

Sim



Objeto evento

Nome

Descrição

Tipo

Obrigatório

Exemplo

rubrica

Composto pelo código do Evento.

string

Sim

"206"

referencia

Valor de referência, dado tipo da verba, será considerado como hora, valor.

Informações

Quando enviado como horas, deve ser considerado o formato centesimal.

Exemplo: o funcionário teve uma situação de jornada incompleta totalizando 1 hora e 30 min. Neste caso, deve ser enviado ao Datasul o valor de 1,50.

string

Sim

"1,50"

datafalta

Será retornado a data da falta.

string

Não

"20240802"
Expandir
titleExemplo Body

{
    "items":[
        {
            "matricula":"1019445",
            "anocom":"2023",
            "mescom":"11",
            "campoAdicional":"",
            "codfuncionario":"10|1|9445",
            "resultados":[                
                {
                    "rubrica":"103",
                    "referencia":"15,30",
                    "datafalta":""
                }
            ]
        }
    ]
}


Estrutura de Retorno:

O retorno é por rubrica processada, se foram enviados 6 funcionários, cada um com 2 rubricas. A api vai retornar 12 rubricas, cada uma com seu 'status' e 'mensagem'.

Nome

Descrição

Tipo

Obrigatório

Exemplo

response

Array de objetos resultado

objeto

Sim



Objeto resultado:

Nome

Descrição

Tipo

Obrigatório

Exemplo

resultados

Array de objetos rubrica, representa os resultados de ponto do funcionário.

objeto

Sim



Objeto rubrica:

Nome

Descrição

Tipo

Obrigatório

Exemplo

matricula

Matricula enviada na requisição

string

Sim

"1019445"

rubrica

Rubrica enviada na requisição.

string

Não

"103"

status

Informa se foi concluído ou não. Entende-se 'E'  como erro e 'S' como sucesso.

string

Sim

"E" ou "S"

mensagem

Mensagem com descrição do status.

string

Sim

"Operação realizada com sucesso!"

referencia

Referencia enviada na requisição.

string

Não

"1,50"

datafalta

Data falta enviada na requisição.

string

Não

"20231101"
Expandir
titleExemplo de retorno

{
    "response":[
      {
        "resultados":[
          {
            "matricula":"1019445",
            "rubrica":"103",
            "status":"S",
            "mensagem":"Operação realizada com sucesso!",
            "referencia":"15,30",
            "datafalta":""
          }
        ]
      }
    ]
  }

...

03. EXEMPLO DE UTILIZAÇÃO

Os dados contratuais e movimentações dos funcionários armazenados no ERP poderão ser carregados e integrados à plataforma Ahgora de forma online.

Os dados abrangidos na integração incluem:

    • Estabelecimento;
    • Empresa
    • Matricula do funcionário;
    • Cargo;
    • Unidade de Lotação;
    • Gestor direto e Colaborador;
    • Nome Social/Nome;
    • CPF;
    • E-mail;
    • Data de admissão;
    • Data de nascimento;
    • Data de demissão;
    • Tipo/Motivo de demissão.

04. FLUXO

 

Deck of Cards
id1
Card
id1
labelParametrização
titleParametrização
Informações
titleImportante

Se ocorrer o erro 'Secure Socket Layer (SSL) - Erro 54: unable to get local issuer certificate: for 4032bcee.0' durante o envio de um processo, será necessário parametrizar o certificado

Card
defaulttrue
id2
labelIntegração TOTVS Feedz
titleSincronização

Ao acessar o programa Integração TOTVS Feedz - FP7800 no menu, você tem a opção de realizar integrações mais específicas, utilizando filtros conforme necessário. Isso pode ser feito aplicando seleção, parâmetros e impressão, conforme demonstrado na tela abaixo:

Informações
titleImportante

Segue abaixo alguns pontos importantes para integração do ERP Datasul TOTVS com a Plataforma Feedz.

  • E-mail: cadastrado na pessoa física - FP1440, é informação única por funcionário.
  • Nome Social: caso o nome social esteja informado campo Nome Social, no botão complemento do eSocial, no FP1440, a Feedz assume essa informação.
  • Múltiplos Vínculos: na plataforma Feedz, é permitido apenas um registro por pessoa. Portanto, ao integrar vários funcionários com o mesmo código de pessoa ou e-mail, a Feedz sobrescreverá e adotará o último cadastro integrado para o mesmo código de pessoa ou e-mail. Na Folha de Pagamento, a ordem de envio é baseada na data de admissão para o mesmo código de pessoa. Se a data de admissão for igual, a prioridade será determinada pela ordem no banco de dados.
  • Cargo, Unidade de Lotação e Estabelecimento:  essas informações sempre serão enviadas baseada na seleção do funcionário, ou seja essas informações só serão enviadas caso haja funcionários vinculadas a ela. Para consultar essas informações da Feedz, é preciso consultar os detalhes do funcionário.
  • Funcionário Transferido: Para funcionário com transferência no período. Não são enviadas as informações de desligamento da empresa origem, é somente atualizados as informações do funcionário com os dados atuais.
  • Geração do Lote de Envio : O envio é realizado por geração de lotes de 100 registros. 
    • Obs: Caso ocorra erro em algum registro do lote, este registro fica com erro, e os demais registro do lote serão processados. Caso seja gerado a consulta sem a marcação do campo "Imprimir Entidades" o lote em questão será apresentado com erro. Se marcado o campo "Imprimir Entidade" será demostrado o detalhamento do Lote com os registros processados e com erro.
  • Pasta Seleção:

Nesta tela o usuário informa a faixa de seleção para a consulta e ou sincronização.

Image Removed

  • Pasta Parâmetros:

Nesta tela o usuário informa os parâmetros para processar a consulta e ou sincronização.

    • Ambiente:
      • Produção/Sandbox: Indica qual ambiente as informações estão sendo integradas.
      • Chave de Integração: A chave é gerada para plataforma da Feedz. A utilização é pelo usuário, uma vez informado, não precisa ser informar novamente.

        Informações
        titleImportante

        Configuração Feedz para para geração do Token

        • Na tela Feedz, ir em Configurações / Integrações;
        • No campo Chave de Integração (API 2.0);
          • Clicar em Gerar Token;
        • No campo Ativar Integração ERP;
          • Em Sistema selecionar Datasul;
        • No campo Chave de Integração (API 2.0), copiar a chave gerada e colocar na tela de parâmetro do FP7800.
    • Ação:
      • Criar Processos: Indica que irá integrar as informações com base na pasta de seleção. É utilizado somente para a integração do funcionário.
      • Consultar Processos: Indica que irá fazer a consulta dos dados que tiveram o processo criado em "Criar Processos". Esse campo informado irá habilitar o campo de seleção em Consultar Processos/Data Inicio, inicial e final.

        Informações
        titleImportante

        Na tela Seleção pode ser informado o horário de inicio e término  do envio, desta forma o sistema é mais assertivo nos dados filtrados.

    • Relatórios:
      • Imprimir Entidades: Indica que na geração do arquivo .CSV, será gerado as informações dos registros processados e dos que tiveram erro durante a consulta do processamento.

Image Removed

  • Pasta Impressão:

Nesta tela o usuário informa os parâmetros para impressão em desktop ou em RPW.

Image Removed

Informações
titleInformações Técnicas

Para analisar do log, incluímos o localizador "PM_Feedz", isso facilitará a analise das informações, quais e por onde a integração passou pelos programas.

Image Removed

Informações
titleImportante

ATENÇÃO: Para evitar impacto na performance, recomenda-se que o agendamento seja programado para, no máximo, duas vezes ao dia.

Card
id3
labelDe/Para
titleDe/Para

FP0060 - Manutenção Situação

Irá gravar o campo conforme regra abaixo:

  • Quando o campo Iniciativa for igual a "Funcionário", grava 1
  • Quando o campo Justa Causa, estiver desmarcado, grava 2
  • Quando o campo Justa Causa, estiver marcado, grava 3
    Card
    id3
    labelDe/Para
    titleDe/Para
    Tipo Informação
    Informações
    titleMovimento Parcelado
    • As informações integradas entre o PontoWeb e o RH Datasul são exibidas no programa FP2040 - Manutenção Movimento c/ Controle Parcela.
    • Com base nos dados enviados, são geradas as informações necessárias para o cálculo do funcionário, permitindo a criação de vencimentos ou descontos apurados pelo PontoWeb.
    Tipo InformaçãoRegra
    Matricula (Empresa + Estab e Matricula)

    FP1500 - Manutenção do Funcionário

    Ano / Mês CompetenciaFP3000 - Manutenção de Habitação de Cálculo
    codFuncionario (Empresa + |+ Estab + |+ Matricula)FP1500 - Manutenção do Funcionário
    Rubrica

    FP0020 - Manutenção Eventos

    Regra
    Cargos / Nível (Feedz - Cargos)

    FP0720 - Manutenção de Cargo

    Unidade de Lotação (Feedz - Departamento)FP0780 - Manutenção de Unidade de Lotação
    Estabelecimentos (Feedz - Unidades)FP0560 - Manutenção Estabelecimentos
    Funcionários (Feedz - Pessoas)FP1500 - Funcionários / FP1510 - Funcionários Contratos Especiais
    Pessoa Física (Feedz - Pessoas)FP1440 - Manutenção Pessoa Física
    Campo - Tipo de Desligamento (Feedz - dismissalType)

    Card
    id4
    labelErros de Validação e seus Códigos

    Lista de erros

    de validação e seus códigos

    Alguns erros podem acontecer durante o processamento do lote enviado ou durante a validação dos itens do lote enviado, sendo eles:

    que podem ocorrer durante a integração.


    Código

    Mensagem

    Detalhes

    4998

    Id do processo não encontrado

    Significa que o processId informado na requisição de consulta de lotes está incorreto.

    4999

    Ocorreu um erro inesperado!

    Representa erros genéricos ou inesperados que podem acontecer no servidor ou que podem ser gerados por algum aspecto incorreto não previsto do lote enviado.

    5000

    Token inválido ou expirado! / Bearer token não informado.

    Isso indica que o token não foi informado na requisição ou informado não é válido. É necessário conferir se o token informado é igual à chave API na plataforma Feedz. Em caso afirmativo, é necessário gerar outra chave.

    5000

    Body vazio

    Significa que foi enviada uma requisição para gravar um lote, mas sem nenhum dado.

    5001

    O total de itens enviados no corpo da requisição excede o limite de 100 registros. Todos os registros foram ignorados no processamento.

    Ocorre ao enviar um lote com mais de 100 registros.

    5003

    A pessoa NPE (IntegrationId = IDN) está referenciando um gestor que não existe. Essa pessoa não será importada.

    Esse erro ocorre ao tentar cadastrar um colaborador, vinculando a um gestor que ainda não foi cadastrado.

    5004

    A pessoa NPE (IntegrationId = IDN) está referenciando ela mesmo como chefe. Essa pessoa não será importada.

    Esse erro ocorre ao tentar cadastrar um colaborador, vinculando ela mesma como gestora (integrationId = managerIntegrationId).

    5005

    A pessoa NPE (IntegrationId = IDN) está referenciando um departamento que não existe. Essa pessoa não será importada.

    Esse erro ocorre ao tentar cadastrar um colaborador, vinculando a um departamento que ainda não foi cadastrado.

    5006

    A pessoa NPE (IntegrationId = IDN) está referenciando uma unidade que não existe. Essa pessoa não será importada.

    Esse erro ocorre ao tentar cadastrar um colaborador, vinculando a uma unidade que ainda não foi cadastrada.

    5008

    A pessoa NPE (IntegrationId = IDN) está referenciando um cargo que não existe. Essa pessoa não será importada.

    Esse erro ocorre ao tentar cadastrar um colaborador, vinculando a um cargo que ainda não foi cadastrado.

    5009

    O ID de integração (IntegrationId) é obrigatório e não foi informado para a Pessoa NPE. Essa pessoa não será importada.

    Ocorre ao enviar uma pessoa e não informar se id de integração.

    5011

    O nome (Name) é obrigatório e não foi informado para a Pessoa (IntegrationId = IDN). Essa pessoa não será importada.

    Ocorre ao enviar uma pessoa e não informar seu nome.

    512

    O e-mail (Email) é obrigatório e não foi informado para a Pessoa 'NPE' (IntegrationId = IDN). Essa pessoa não será importada.

    Ocorre ao enviar uma pessoa e não informar seu e-mail.

    5013

    A pessoa 'NPE' (IntegrationId = IDN) possui o mesmo e-mail de outra pessoa da lista de pessoas enviadas ou da base. Essa pessoa não será importada.

    Essa validação existe para evitar cadastrar pessoas duplicadas na base. Assim não é possível cadastrar dois e-mails iguais para integrationIds diferentes e vice versa.

    5014

    A pessoa 'NPE' (IntegrationId = IDN) deve ter o nome digitado somente com caracteres com nome, sobrenome e apenas 1(um) espaço entre eles.

    Esse erro ocorre ao informar um nome inválido.

    5015

    A pessoa 'NPE' (IntegrationId = IDN) não pode ter o apelido igual ao nome.

    Ocorre quando o name é igual ao socialName.

    5016

    O email fornecido 'EML' para a pessoa 'NPE' (IntegrationId = IDN) não está em um formato válido.

    Ocorre ao enviar uma pessoa com o e-mail em formato inválido.

    5017

    O registro com o nome 'NRA' não foi salvo durante o processamento porque o campo 'IntegrationId' não foi informado."

    Ocorre ao enviar qualquer registro auxiliar e não informar o integrationId.

    5018

    O registro com o código 'IDN' não foi salvo durante o processamento porque o campo 'Name' não foi informado.

    Ocorre ao enviar qualquer registro auxiliar e não informar o nome.

    5030

    Quando informado a data de demissão deve ser também informado o motivo (dismissalType).

    Ocorre ao enviar data de demissão e não informar o motivo.

    5031

    Deve ser informado o motivo da demissão (dismissalType) apenas quando for informado a data de demissão.

    Ocorre ao enviar motivo da demissão e não informar a data de demissão.

    5032

    A data de admissão não pode ser maior que a data de demissão.

    Ocorre ao enviar uma data de admissão posterior à data de demissão.

    5048

    O ID de integração do líder (managerIntegrationId = MII) informado para a pessoa (personIntegrationId = IDN) não existe.

    Ocorre ao tentar vincular pessoa e líder pela rota persons-bind e não ter esse líder cadastrado previamente na plataforma.

    5049

    O ID de integração da pessoa (personIntegrationId = IDN) informada não existe.

    Ocorre ao tentar vincular pessoa e líder pela rota persons-bind e não ter esse colaborador cadastrado previamente na plataforma.

    5050

    Uma pessoa (personIntegrationId = IDN) não pode ser líder de sí próprio

    Ocorre ao tentar vincular uma pessoa a ela mesma como líder (personIntegrationId = managerIntegrationId) através da rota persons-bind.

    Folha Normal já calculada.

    • Isso significa que a Folha de Pagamento já foi iniciada para o funcionário.

      • Para corrigir, é necessário eliminar o cálculo do funcionário em questão e realizar novamente a integração entre o Integrador do PontoWeb e o RH Datasul.

    Quantidade deve ser maior ou igual a 0 (zero).

    • Isso significa que o valor ou horas, são menores que zero.

    Evento inexistente.

    • Isso significa que o evento não foi encontrado na base do RH Datasul.

    Funcionário inexistente.

    • Isso significa que o funcionário não foi encontrado na base do RH Datasul.

    Ano/Mês competência incorreto(s).

    • Isso significa que a Folha de Pagamento já esta concluída para o funcionário.
      • Período dos envios é anterior à habilitação do cálculo. Nesse caso, é importante verificar se a competência informada está correta.

    Já existe ocorrência Situação Afastamento informada.

    • Isso significa que já exista uma situação de afastamento informado para a mesma da datafalta.

    Evento não está relacionado a uma falta injustificada.


    • Isso significa que o evento não está informado no FP0060. Quando a datafalta é informada no envio dos resultados, o programa verifica as situações de afastamento do tipo 'falta injustificada' que contenham o evento informado na aba Ponto, nos campos 'Afastamento Diurno' e 'Afastamento Noturno', tanto para horistas quanto para mensalistas.

     

    04.  DOCUMENTAÇÃO