Versões comparadas

Chave

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




Contexto de negócio

Cada vez mais o mercado exige que as operações complexas e manipulação de dados sejam ainda mais ágeis e com custos reduzidos. Com o RH não é diferente, os processos cada vez mais complexos e com muitas variáveis a serem analisadas no que tange a segurança e medicina do trabalho, os profissionais de saúde precisam de agilidade na hora de controlar processos funcionais da empresa.

Com essa necessidade e a importância desta área dentro da empresa, softwares especialistas em medicina e segurança do trabalho estão cada vez mais presentes no mercado e foi neste contexto que surgiu a necessidade da criação de um produto que possibilite automatizar cadastros e rotinas de funcionais dentro do ERP através de uma interface de integração.

QUÍRONS

Software desenvolvido pela NG, empresa com ampla experiência em gestão de medicina e segurança do trabalho, sendo pioneira na administração de processos funcionais e com atuação no mercado a mais de trinta anos tendo vários cases de sucesso.(Dados extraídos do site do próprio parceiro, mais informações).

Pré requisitos, instalação, configuração e configuração REST

(Acesse a documentação aqui)

Integrações Disponíveis


Deck of Cards
startHiddenfalse
idexemplos
Card
defaulttrue
id.f.
labelTipos de Abono
titleTipos de Abono

Relação de Tipos de Abono - allowanceTypes - INTEGRAÇÃO PONA050API

Sistemas Envolvidos

Descrição dos sistemas envolvidos no contexto de negócio (e que serão envolvidos na integração).

  • Protheus (módulo de Ponto Eletrônico): Módulo responsável pela gestão da assiduidade e marcações/apontamentos de horários de trabalho do funcionário, dentre outros cadastros pertinentes aos colaboradores.
  • Quírons - NG

Integração

O objetivo desta integração é permitir que a área do RH ou área responsável pelas marcações/apontamentos de horário, envie os dados do cadastro de tipos de abono para o sistema da NG e assim reduzir o trabalho de inclusão manual de todas as informações dentro do sistema.

  • Benefícios 
    • Normalmente o colaborador responsável inclui as informações de cadastros de tipos de abono através de um arquivo (csv, txt) ou até mesmo manualmente. Com a interface de integração isso será feito de forma  automática.
    • Não terá um investimento alto de tempo para o cadastramento, pois os dados já serão enviados através da integração a cada requisição do sistema especialista.
  • Arquitetura (Tecnologia)
    • Toda integração entre o Protheus e o Quírons é feita por intermédio de comunicação direta com os Web Services (que são fixos)  REST(Representation State Transfer) utilizando o formato JSON (JavaScript  Object Notation) de serialização de dados, onde através da ativação do serviço do REST do Protheus esteja disponível para utilizar o serviço.
  • Premissas e Propriedades
    • O parceiro que será responsável pela requisição e transformação da informação recebida;
    • Cada produto deverá gerar um LOG de inclusão(P6_USERLGI) ou alteração (P6_USERLGA) de registros a fim de controlar os dados a serem integrados;
    • Na requisição, o parceiro deverá informar  através do preenchimento do parâmetro datemodified se desejar uma carga completa(deixar o parâmetro vazio) ou somente os dados que foram atualizados(Informando a data de alteração). Caso seja solicitada a carga, todos os dados serão enviados novamente. Caso seja  solicitado uma atualização, somente os dados com data igual ou posterior a data informada, serão transmitidos;
    • Será implementado um controle de paginação a fim de facilitar o envio da informação para o solicitante. Neste processo o solicitante deverá informar qual é o tamanho da informação solicitada e qual página ele solicita;
    • Cabe a integração informar se existem mais páginas a serem solicitadas;

Ativação/Desativação da integração

Por padrão esta integração estará em repositório, porém demanda realizar a devida configuração conforme abaixo:

Controle de Ambiente

Exige que os seguintes pontos sejam revisados:

  • Protheus com sua arquitetura devidamente estruturada.
  • Módulo Ponto Eletrônico com os dados do cadastro de Tipo de abono devidamente inseridos.

Controle de Versão

O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.

Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.

Suporte

O suporte aos recursos da Integração será de responsabilidade da linha Protheus, onde será analisada pela equipe de suporte da Totvs.

Fluxo das Informações

Esta integração traz a funcionalidade exclusivamente para exportação do cadastro de Tipos de Abono.

Cadastro

Esta integração contempla apenas a consulta e envio dos dados de Tipos de Abono.

Processos

A solicitante realizará o consumo da API com dados básicos que serão utilizados como parâmetros para consultar a base  e retornar um conjunto de informações pertinentes ao cadastro de Tipos de Abono.

Limitações / Restrições Gerais

  • A integração não contemplará inclusão,alteração e exclusão de registros no Protheus, para isso o usuário deverá acessar o ERP e efetuar as devidas ações manualmente.
  • Cada produto deverá gerar um LOG de inclusão e alteração de registros a fim de controlar os dados a serem integrados;
  • A data de alteração do registro deverá ser enviada em cada processo, permitindo que o solicitante possa controlar essa informação;


Como realizar a chamada da API REST

Para realizar a integração com o parceiro TOTVS é necessário as informações básicas de consulta para retorno dos tipos de abono desejados.

  • Preenchimento do EndPoint da API PONA050API;
  • Utilizar a chamada do método Get e do Serviço allowanceTypes;
  • Preenchimento dos parâmetros obrigatórios da API;

Formatos de Data

As Entradas e Saídas de dados tipo data(Date) acompanham o formato padrão YYYY-MM-DDThh:mm

Parâmetros de Entrada:

Parâmetro

Valor de Exemplo

Obrigatório

TipoParâmetro

Valor Default

Descrição
page1Não

Integer

query1Página que está sendo requisitada.
pageSize1Não

Integer

query

2000

Quantidade de tipos de abono por página.
datemodified2001-01-01T18:25:43NãoStringquery
Data que será utilizada como filtro para trazer tipos de abono com data de alteração (P6_USERLGA) ou inclusão (P6_USERLGI).
branchIdD MG 01SimStringquery

companyIdT1SimStringquery

authorization

não será informado pelos parâmetros RESTSimStringheader
Configuração do parâmetro 

Security = 1 no arquivo appserver.ini


Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta SOAP UI e após a configuração do server protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}/rh/v2/allowanceTypes/

Response da API:


Bloco de código
languagecpp
themeConfluence
titleResponse allowanceTypes
{
    "items": [
        {
            "branchId": "D MG    ",
            "code": "009",
            "companyId": "T1",
            "name": "ABONO INTEGRAL",
            "id": "T1|D MG    |009|"
        },
        {
            "branchId": "D MG    ",
            "code": "107",
            "companyId": "T1",
            "name": "ABONO ATRASO",
            "id": "T1|D MG    |107|"
        },
        {
            "branchId": "D MG    ",
            "code": "114",
            "companyId": "T1",
            "name": "ABONO FALTAS",
            "id": "T1|D MG    |114|"
        },
        {
            "branchId": "D MG    ",
            "code": "115",
            "companyId": "T1",
            "name": "ABONO 1/2 FALTA",
            "id": "T1|D MG    |115|"
        }
    ],
    "hasNext": false
}

Situações de Erros Tratados

O envio de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros. Desta forma, foram criados alguns tratamentos de erros listados abaixo, cada um com sua respectiva mensagem e solução.

Tratamento de erros de integração Protheus:

Mensagens de Pré-Validação

Erro

Mensagem

Solução

400

Campo P6_USERLGI / P6_USERLGA não foi encontrado.

Bloco de código
languagecpp
themeConfluence
titleCampos _USERLGA/_USERLGI
{
    "code": 400,
    "detailedMessage": "Campo USERLGA não foi encontrado: Entidade (SP6)",
    "helpUrl": "https://tdn.totvs.com/x/BJuMHw",
    "message": "Campo USERLGA não foi encontrado: Entidade (SP6)"
}
400

A Filial é um parâmetro obrigatório.

Bloco de código
languagecpp
themeConfluence
titleQuando o campo branchId está em branco.
{
   "code": 400,
   "detailedMessage": "Falha ao validar as informações básicas da assinatura. Informação: branchId",
   "helpUrl": "https://tdn.totvs.com/x/BJuMHw",
   "message": "Falha ao validar as informações básicas da assinatura. Informação: branchId"
}
400O Grupo de Empresa é um parâmetro obrigatório 
Bloco de código
languagecpp
themeConfluence
titleErro quando campo companyId está vazio.
{
   "code": 400,
   "detailedMessage": "Falha ao validar as informações básicas da assinatura. Informação: companyId",
   "helpUrl": "https://tdn.totvs.com/x/BJuMHw",
   "message": "Falha ao validar as informações básicas da assinatura. Informação: companyId"
}


Checklist de suporte da aplicação

Itens a serem verificados durante o atendimento:

  • Verificar se os pré-requisitos foram atendidos para a chamada da API;
  • Verificar se na chamada da API o EndPoint, o nome do serviço e todos os campos obrigatórios foram informados;
  • Verificar se o retorno da API apresenta algum erro tratado (códigos e mensagens de erro citados neste documento) e consultar a solução na mesma tabela que descreve o erro;
  • Em caso de Erro não tratado, verificar se possui alguma informação de banco de dados, conexão com o servidor ou algo que possa identificar a origem do problema.


Card
id.t.
labelCentro de Custo
titleCentro de Custo

Relação de Centros de Custos - payrollCostCenter - INTEGRAÇÃO GPEA002API 

Sistemas Envolvidos

Descrição dos sistemas envolvidos no contexto de negócio (e que serão envolvidos na integração).

  • Protheus (módulo de Gestão de Pessoal): Módulo responsável pela gestão do funcionário.
  • Quírons - NG

Integração

O objetivo desta integração é permitir que a área do RH ou área responsável pelo controle de centros de custos, envie os dados do cadastro de centro de custo para o sistema da NG e assim reduzir o trabalho de inclusão manual de todas as informações dentro do sistema.

  • Benefícios 
    • Normalmente o colaborador responsável inclui as informações de cadastros de centro de custo através de um arquivo (csv, txt) ou até mesmo manualmente. Com a interface de integração isso será feito de forma  automática.
    • Não terá um investimento alto de tempo para o cadastramento, pois os dados já serão enviados através da integração a cada requisição do sistema especialista.
  • Arquitetura (Tecnologia)
    • Toda integração entre o Protheus e o Quírons é feita por intermédio de comunicação direta com os Web Services (que são fixos)  REST(Representation State Transfer) utilizando o formato JSON (JavaScript  Object Notation) de serialização de dados, onde através da ativação do serviço do REST do Protheus esteja disponível para utilizar o serviço.
  • Premissas e Propriedades
    • O parceiro que será responsável pela requisição e transformação da informação recebida;
    • Cada produto deverá gerar um LOG de inclusão(CTT_USERGI) ou alteração (CTT_USERGA) de registros a fim de controlar os dados a serem integrados;
    • Na requisição, o parceiro deverá informar  através do preenchimento do parâmetro datemodified se desejar uma carga completa(deixar o parâmetro vazio) ou somente os dados que foram atualizados(Informando a data de alteração). Caso seja solicitada a carga, todos os dados serão enviados novamente. Caso seja  solicitado uma atualização, somente os dados com data igual ou posterior a data informada, serão transmitidos;
    • Será implementado um controle de paginação a fim de facilitar o envio da informação para o solicitante. Neste processo o solicitante deverá informar qual é o tamanho da informação solicitada e qual página ele solicita;
    • Cabe a integração informar se existem mais páginas a serem solicitadas;

Ativação/Desativação da integração

Por padrão esta integração estará em repositório, porém demanda realizar a devida configuração conforme abaixo:

Controle de Ambiente

Exige que os seguintes pontos sejam revisados:

  • Protheus com sua arquitetura devidamente estruturada.
  • Módulo Gestão de Pessoal com os dados de Centro de Custo devidamente inseridos.

Controle de Versão

O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.

Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.

Suporte

O suporte aos recursos da Integração será de responsabilidade da linha Protheus, onde será analisada pela equipe de suporte da Totvs.

Fluxo das Informações

Esta integração traz a funcionalidade exclusivamente para exportação do cadastro de centro de custo.

Cadastro

Esta integração contempla apenas a consulta e envio dos dados de cadastro de centro de custo.

Processos

A solicitante realizará o consumo da API com dados básicos que serão utilizados como parâmetros para consultar a base  e retornar um conjunto de informações pertinentes ao cadastro de centro de custo.

Limitações / Restrições Gerais

  • A integração não contemplará inclusão,alteração e exclusão de registros no Protheus, para isso o usuário deverá acessar o ERP e efetuar as devidas ações manualmente.
  • Cada produto deverá gerar um LOG de inclusão e alteração de registros a fim de controlar os dados a serem integrados;
  • A data de alteração do registro deverá ser enviada em cada processo, permitindo que o solicitante possa controlar essa informação;


Como realizar a chamada da API REST

Para realizar a integração com o parceiro TOTVS é necessário as informações básicas de consulta para retorno dos centros de custos desejados.

  • Preenchimento do EndPoint da API GPEA002API;
  • Utilizar a chamada do método Get e do Serviço payrollcostcenter;
  • Preenchimento dos parâmetros obrigatórios da API;

Formatos de Data

As Entradas e Saídas de dados tipo data(Date) acompanham o formato padrão YYYY-MM-DDThh:mm

Parâmetros de Entrada:

Parâmetro

Valor de Exemplo

Obrigatório

TipoParâmetro

Valor Default

Descrição
page1Não

Integer

query
Página que está sendo requisitada.
pageSize1Não

Integer

query

2000

Quantidade de centros de custo por página.
datemodified2001-01-01T18:25:43NãoStringquery
Data que será utilizada como filtro para trazer funcionários com data de alteração (CTT_USERGA) ou inclusão (CTT_USERGI).
branchIdD MG 01SimStringquery

companyIdT1SimStringquery

authorization

não será informado pelos parâmetros RESTSimStringheader
Configuração do parâmetro 

Security = 1 no arquivo appserver.ini


Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta SOAP UI e após a configuração do server protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}//rh/v1/payrollcostcenter/

Response da API:


Response PayrollCostCenter

{
    "items": [
        {
            "code": "000000009",
            "companyId": "T1",
            "name": "DEPARTAMENTO DE PESSOAL",
            "id": "T1|D MG 01 |000000009",
            "branch": "D MG 01 "
        },
        {
            "code": "000000013",
            "companyId": "T1",
            "name": "MEURH",
            "id": "T1|D MG 01 |000000013",
            "branch": "D MG 01 "
        }
    ],
    "hasNext": false
}

Situações de Erros Tratados

O envio de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros. Desta forma, foram criados alguns tratamentos de erros listados abaixo, cada um com sua respectiva mensagem e solução.

Tratamento de erros de integração Protheus:

Mensagens de Pré-Validação

Erro

Mensagem

Solução

400

Campo CTT_USERGA / CTT_USERGA não foi encontrado.

Quando o campo branchId está em branco.

{
    "code": 400,
    "detailedMessage""Campo USERLGA não foi encontrado: Entidade (CTT)",
    "helpUrl""https://tdn.totvs.com/x/BJuMHw",
    "message""Campo USERGA não foi encontrado: Entidade (CTT)"
}

400

A Filial é um parâmetro obrigatório.

Quando o campo branchId está em branco.

{
   "code": 400,
   "detailedMessage": "Falha ao validar as informações básicas da assinatura. Informação: branchId",
   "helpUrl": https://tdn.totvs.com/x/BJuMHw,
   "message": "Falha ao validar as informações básicas da assinatura. Informação: branchId"
}

400O Grupo de Empresa é um parâmetro obrigatório 

Erro quando campo companyId está vazio.

{
   "code": 400,
   "detailedMessage": "Falha ao validar as informações básicas da assinatura. Informação: companyId",
   "helpUrl": "https://tdn.totvs.com/x/BJuMHw",
   "message": "Falha ao validar as informações básicas da assinatura. Informação: companyId"
}

Checklist de suporte da aplicação

Itens a serem verificados durante o atendimento:

  • Verificar se os pré-requisitos foram atendidos para a chamada da API;
  • Verificar se na chamada da API o EndPoint, o nome do serviço e todos os campos obrigatórios foram informados;
  • Verificar se o retorno da API apresenta algum erro tratado (códigos e mensagens de erro citados neste documento) e consultar a solução na mesma tabela que descreve o erro;
  • Em caso de Erro não tratado, verificar se possui alguma informação de banco de dados, conexão com o servidor ou algo que possa identificar a origem do problema.



Card
id.t.
labelTipos de Estabilidade
titleTipos de Estabilidade


Relação de Tipos de Estabilidade stabilityType - INTEGRAÇÃO GPES053API

Sistemas Envolvidos

Descrição dos sistemas envolvidos no contexto de negócio (e que serão envolvidos na integração).

  • Protheus (módulo de Gestão de Pessoal): Módulo responsável pela gestão do funcionário.
  • Quírons - NG

Integração

O objetivo desta integração é permitir que a área do RH ou área responsável pelos períodos de estabilidade dos funcionários, envie os dados do cadastro de tipos de estabilidade para o sistema da NG e assim reduzir o trabalho de inclusão manual de todas as informações dentro do sistema.

  • Benefícios 
    • Normalmente o colaborador responsável inclui as informações de cadastros de tipos de estabilidade através de um arquivo (csv, txt) ou até mesmo manualmente. Com a interface de integração isso será feito de forma  automática.
    • Não terá um investimento alto de tempo para o cadastramento, pois os dados já serão enviados através da integração a cada requisição do sistema especialista.
  • Arquitetura (Tecnologia)
    • Toda integração entre o Protheus e o Quírons é feita por intermédio de comunicação direta com os Web Services (que são fixos)  REST(Representation State Transfer) utilizando o formato JSON (JavaScript  Object Notation) de serialização de dados, onde através da ativação do serviço do REST do Protheus esteja disponível para utilizar o serviço.
  • Premissas e Propriedades
    • O parceiro que será responsável pela requisição e transformação da informação recebida;
    • Cada produto deverá gerar um LOG de inclusão(RCC_USERGI) ou alteração (RCC_USERGA) de registros a fim de controlar os dados a serem integrados;
    • Na requisição, o parceiro deverá informar  através do preenchimento do parâmetro datemodified se desejar uma carga completa(deixar o parâmetro vazio) ou somente os dados que foram atualizados(Informando a data de alteração). Caso seja solicitada a carga, todos os dados serão enviados novamente. Caso seja  solicitado uma atualização, somente os dados com data igual ou posterior a data informada, serão transmitidos;
    • Será implementado um controle de paginação a fim de facilitar o envio da informação para o solicitante. Neste processo o solicitante deverá informar qual é o tamanho da informação solicitada e qual página ele solicita;
    • Cabe a integração informar se existem mais páginas a serem solicitadas;

Ativação/Desativação da integração

Por padrão esta integração estará em repositório, porém demanda realizar a devida configuração conforme abaixo:

Controle de Ambiente

Exige que os seguintes pontos sejam revisados:

  • Protheus com sua arquitetura devidamente estruturada.
  • Módulo Gestão de Pessoal com os dados do cadastro de estabilidade devidamente inseridos.

Controle de Versão

O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.

Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.

Suporte

O suporte aos recursos da Integração será de responsabilidade da linha Protheus, onde será analisada pela equipe de suporte da Totvs.

Fluxo das Informações

Esta integração traz a funcionalidade exclusivamente para exportação do cadastro de Tipos de Estabilidade

Cadastro

Esta integração contempla apenas a consulta e envio dos dados de Tipos de Estabilidade.

Processos

A solicitante realizará o consumo da API com dados básicos que serão utilizados como parâmetros para consultar a base  e retornar um conjunto de informações pertinentes ao cadastro de Tipos de Estabilidade.

Limitações / Restrições Gerais

  • A integração não contemplará inclusão,alteração e exclusão de registros no Protheus, para isso o usuário deverá acessar o ERP e efetuar as devidas ações manualmente.
  • Cada produto deverá gerar um LOG de inclusão e alteração de registros a fim de controlar os dados a serem integrados;
  • A data de alteração do registro deverá ser enviada em cada processo, permitindo que o solicitante possa controlar essa informação;


Atenção

Importante: Devido à característica da rotina de Manutenção de Tabelas (GPEA320) em que a cada alteração os registros são regravados, o campo RCC_USERGA de todos os registros daquela filial serão renovado a cada manutenção efetuada.

Como realizar a chamada da API REST

Para realizar a integração com o parceiro TOTVS é necessário as informações básicas de consulta para retorno dos tipos de estabilidade desejados.

  • Preenchimento do EndPoint da API GPES053API;
  • Utilizar a chamada do método Get e do Serviço stabilityTypes;
  • Preenchimento dos parâmetros obrigatórios da API;

Formatos de Data

As Entradas e Saídas de dados tipo data(Date) acompanham o formato padrão YYYY-MM-DDThh:mm

Parâmetros de Entrada:

Parâmetro

Valor de Exemplo

Obrigatório

TipoParâmetro

Valor Default

Descrição
page1Não

Integer

query1Página que está sendo requisitada.
pageSize1Não

Integer

query

2000

Quantidade de tipos de estabilidade por página.
datemodified2001-01-01T18:25:43NãoStringquery
Data que será utilizada como filtro para trazer tipos de estabilidade com data de alteração (RCC_USERGA) ou inclusão (RCC_USERGI).
branchIdD MG 01SimStringquery

companyIdT1SimStringquery

authorization

não será informado pelos parâmetros RESTSimStringheader
Configuração do parâmetro 

Security = 1 no arquivo appserver.ini



Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta SOAP UI e após a configuração do server protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}//rh/v1/stabilityType/

Response da API:


Response StabilityTypes

{
    "items": [
        {
            "branchId": "D MG    ",
            "stabilityCode": "S01",
            "companyId": "T1",
            "name": "MEMBRO DA CIPA",
            "id": "T1|D MG    |S01"
        },
        {
            "branchId": "D MG    ",
            "stabilityCode": "S04",
            "companyId": "T1",
            "name": "NAO OPTANTES PELO FGTS(ESTABILIDADE DECENAL)",
            "id": "T1|D MG    |S04"
        },
        {
            "branchId": "D MG    ",
            "stabilityCode": "S05",
            "companyId": "T1",
            "name": "ACIDENTE DE TRABALHO",
            "id": "T1|D MG    |S05"
        }
    ],
    "hasNext": true
}

Situações de Erros Tratados

O envio de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros. Desta forma, foram criados alguns tratamentos de erros listados abaixo, cada um com sua respectiva mensagem e solução.

Tratamento de erros de integração Protheus:

Mensagens de Pré-Validação

Erro

Mensagem

Solução

400

Campo RCC_USERGI / RCC_USERGA não foi encontrado.

Campos _USERLGA/_USERLGI

{
    "code": 400,
    "detailedMessage": "Campo USERGA não foi encontrado: Entidade (RCC)",
    "helpUrl": "https://tdn.totvs.com/x/BJuMHw",
    "message": "Campo USERGA não foi encontrado: Entidade (RCC)"
}

400

A Filial é um parâmetro obrigatório.

Quando o campo branchId está em branco.

{
   "code": 400,
   "detailedMessage": "Falha ao validar as informações básicas da assinatura. Informação: branchId",
   "helpUrl": "https://tdn.totvs.com/x/BJuMHw",
   "message": "Falha ao validar as informações básicas da assinatura. Informação: branchId"
}

400O Grupo de Empresa é um parâmetro obrigatório 

Erro quando campo companyId está vazio.

{
   "code": 400,
   "detailedMessage": "Falha ao validar as informações básicas da assinatura. Informação: companyId",
   "helpUrl": "https://tdn.totvs.com/x/BJuMHw",
   "message": "Falha ao validar as informações básicas da assinatura. Informação: companyId"
}

Checklist de suporte da aplicação

Itens a serem verificados durante o atendimento:

  • Verificar se os pré-requisitos foram atendidos para a chamada da API;
  • Verificar se na chamada da API o EndPoint, o nome do serviço e todos os campos obrigatórios foram informados;
  • Verificar se o retorno da API apresenta algum erro tratado (códigos e mensagens de erro citados neste documento) e consultar a solução na mesma tabela que descreve o erro;
  • Em caso de Erro não tratado, verificar se possui alguma informação de banco de dados, conexão com o servidor ou algo que possa identificar a origem do problema.
Card
defaulttrue
id.f.
labelTipos de Treinamentos
titleTipos de Treinamentos


Relação de Treinamentos - classes - INTEGRAÇÃO TRMA050API 


Sistemas Envolvidos

Descrição dos sistemas envolvidos no contexto de negócio (e que serão envolvidos na integração).

  • Protheus (módulo Treinamentos): Módulo responsável pela gestão dos cursos, treinamentos dentre outros cadastros pertinentes aos colaboradores.
  • Quírons - NG

Integração

O objetivo desta integração é permitir que a área do RH ou área responsável pelos agendamentos de treinamento, envie os dados do cadastro de treinamento para o sistema da NG e assim reduzir o trabalho de inclusão manual de todas as informações dentro do sistema.

  • Benefícios 
    • Normalmente o colaborador responsável inclui as informações de cadastros de treinamentos através de um arquivo (csv, txt) ou até mesmo manualmente. Com a interface de integração isso será feito de forma  automática.
    • Não terá um investimento alto de tempo para o cadastramento, pois os dados já serão enviados através da integração a cada requisição do sistema especialista.
  • Arquitetura (Tecnologia)
    • Toda integração entre o Protheus e o Quírons é feita por intermédio de comunicação direta com os Web Services (que são fixos)  REST(Representation State Transfer) utilizando o formato JSON (JavaScript  Object Notation) de serialização de dados, onde através da ativação do serviço do REST do Protheus esteja disponível para utilizar o serviço.
  • Premissas e Propriedades
    • O parceiro que será responsável pela requisição e transformação da informação recebida;
    • Cada produto deverá gerar um LOG de inclusão(RA2_USERGI) ou alteração (RA2_USERGA) de registros a fim de controlar os dados a serem integrados;
    • Na requisição, o parceiro deverá informar  através do preenchimento do parâmetro datemodified se desejar uma carga completa(deixar o parâmetro vazio) ou somente os dados que foram atualizados(Informando a data de alteração). Caso seja solicitada a carga, todos os dados serão enviados novamente. Caso seja  solicitado uma atualização, somente os dados com data igual ou posterior a data informada, serão transmitidos;
    • Será implementado um controle de paginação a fim de facilitar o envio da informação para o solicitante. Neste processo o solicitante deverá informar qual é o tamanho da informação solicitada e qual página ele solicita;
    • Cabe a integração informar se existem mais páginas a serem solicitadas;

Ativação/Desativação da integração

Por padrão esta integração estará em repositório, porém demanda realizar a devida configuração conforme abaixo:

Controle de Ambiente

Exige que os seguintes pontos sejam revisados:

  • Protheus com sua arquitetura devidamente estruturada.
  • Módulo Gestão de Pessoal com os dados do cadastro de treinamentos devidamente inseridos.

Controle de Versão

O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.

Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.

Suporte

O suporte aos recursos da Integração será de responsabilidade da linha Protheus, onde será analisada pela equipe de suporte da Totvs.

Fluxo das Informações

Esta integração traz a funcionalidade exclusivamente para exportação do cadastro de treinamentos.

Cadastro

Esta integração contempla apenas a consulta e envio dos dados de treinamentos.

Processos

A solicitante realizará o consumo da API com dados básicos que serão utilizados como parâmetros para consultar a base  e retornar um conjunto de informações pertinentes ao cadastro de treinamentos.

Limitações / Restrições Gerais

  • A integração não contemplará inclusão, alteração e exclusão de registros no Protheus, para isso o usuário deverá acessar o ERP e efetuar as devidas ações manualmente.
  • Cada produto deverá gerar um LOG de inclusão e alteração de registros a fim de controlar os dados a serem integrados;
  • A data de alteração do registro deverá ser enviada em cada processo, permitindo que o solicitante possa controlar essa informação;

Como realizar a chamada da API REST

Para realizar a integração com o parceiro TOTVS é necessário as informações básicas de consulta para retorno dos treinamentos desejados.

  • Preenchimento do EndPoint da API TRMA050API;
  • Utilizar a chamada do método Get e do Serviço classes;
  • Preenchimento dos parâmetros obrigatórios da API;

Formatos de Data

As Entradas e Saídas de dados tipo data(Date) acompanham o formato padrão YYYY-MM-DDThh:mm

Parâmetros de Entrada:

Parâmetro

Valor de Exemplo

Obrigatório

TipoParâmetro

Valor Default

Descrição
page1Não

Integer

query1Página que está sendo requisitada.
pageSize1Não

Integer

query

2000

Quantidade de treinamentos por página.
datemodified2001-01-01T18:25:43NãoStringquery
Data que será utilizada como filtro para trazer treinamentos com data de alteração (RA2_USERGA) ou inclusão (RA2_USERGI).
branchIdD MG 01SimStringquery

companyIdT1SimStringquery

authorization

não será informado pelos parâmetros RESTSimStringheader
Configuração do parâmetro 

Security = 1 no arquivo appserver.ini



Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta SOAP UI e após a configuração do server protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}//rh/v2/classes/

Response da API:


Response classes

{
    "items": [
        {
            "branchId": "D MG    ",
            "classCode": "0001",
            "esocialTrainingCode": "0097",
            "companyId": "T1",
            "name": "CURSO 001",
            "id": "T1|D MG    |0001|"
        },
        {
            "branchId": "D MG    ",
            "classCode": "0002",
            "esocialTrainingCode": "0101",
            "companyId": "T1",
            "name": "CURSO 002",
            "id": "T1|D MG    |0002|"
        },
        {
            "branchId": "D MG    ",
            "classCode": "0001",
            "esocialTrainingCode": "0502",
            "companyId": "T1",
            "name": "CURSO 001",
            "id": "T1|D MG    |0001|"
        }
    ],
    "hasNext": true
}

Situações de Erros Tratados

O envio de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros. Desta forma, foram criados alguns tratamentos de erros listados abaixo, cada um com sua respectiva mensagem e solução.

Tratamento de erros de integração Protheus:

Mensagens de Pré-Validação

Erro

Mensagem

Solução

400

Campo RA2_USERGI / RA2_USERGA não foi encontrado.

Campos _USERLGA/_USERLGI

{
    "code": 400,
    "detailedMessage": "Campo USERGA não foi encontrado: Entidade (RA2)",
    "helpUrl": "https://tdn.totvs.com/x/BJuMHw",
    "message": "Campo USERGA não foi encontrado: Entidade (RA2)"
}

400

A Filial é um parâmetro obrigatório.

Quando o campo branchId está em branco.

{
   "code": 400,
   "detailedMessage": "Falha ao validar as informações básicas da assinatura. Informação: branchId",
   "helpUrl": "https://tdn.totvs.com/x/BJuMHw",
   "message": "Falha ao validar as informações básicas da assinatura. Informação: branchId"
}

400O Grupo de Empresa é um parâmetro obrigatório 

Erro quando campo companyId está vazio.

{
   "code": 400,
   "detailedMessage": "Falha ao validar as informações básicas da assinatura. Informação: companyId",
   "helpUrl": "https://tdn.totvs.com/x/BJuMHw",
   "message": "Falha ao validar as informações básicas da assinatura. Informação: companyId"
}

Checklist de suporte da aplicação

Itens a serem verificados durante o atendimento:

  • Verificar se os pré-requisitos foram atendidos para a chamada da API;
  • Verificar se na chamada da API o EndPoint, o nome do serviço e todos os campos obrigatórios foram informados;
  • Verificar se o retorno da API apresenta algum erro tratado (códigos e mensagens de erro citados neste documento) e consultar a solução na mesma tabela que descreve o erro;
  • Em caso de Erro não tratado, verificar se possui alguma informação de banco de dados, conexão com o servidor ou algo que possa identificar a origem do problema.



Card
defaulttrue
id.f.
labelInsalub. e Pericul.
titleInsalubridade e Periculosidade


Controle de Adicionais - additional -  INTEGRAÇÃO GPEAADIAPI  

Sistemas Envolvidos

  • Protheus (módulo  Gestão de Pessoal): Módulo responsável pela gestão dos dados dos funcionários, folha de pagamento e dentre outros cadastros pertinentes aos colaboradores.

  • Quírons - NG

Integração

O objetivo desta integração é permitir que o RH ou área responsável pelo Gestão de Pessoal do Protheus, receba os dados do Controle de Adicionais dos funcionários de outros sistemas especializados, reduzindo assim o trabalho de inclusão/alteração/exclusão manual dessas informações dentro do sistema;

  • Benefícios
    • Não terá um investimento alto de tempo para o cadastramento, pois os dados já serão enviados, editados ou excluídos através da integração a cada requisição do sistema especialista através da API de Adicional.
    • A informação será atualizada de forma automática, facilitando que conferência e confiabilidade dos dados recebidos.
  • Arquitetura (Tecnologia)

Toda integração entre o Protheus e o Sistema é feita por intermédio de comunicação direta com os Web Services(que são fixos) REST(Representation State Transfer) utilizando o formato JSON(JavaScript  Object Notation) de serialização de dados, onde através da ativação do serviço do REST do Protheus esteja disponível para utilizar o serviço.

Escopo

Por intermédio desta integração será disponibilizada a seguinte funcionalidade:

  • Atualização dos Adicionais de Periculosidade e Insalubridade do funcionário no módulo SIGAGPE;

Fora do escopo

  • Automatização de consultas dos adicionais do funcionário
  • Importação de base cadastral - dados do Funcionário,

Pré-requisitos instalação/implantação/utilização

  • Versões mínimas do Protheus: 12.1.23
  • Possuir acesso à Internet, caso o sistema que venha a utilizar a integração com a aplicação Protheus.
  • Estrutura de rede estável, para que haja tráfego de dados sem interrupção.
  • Protheus devidamente configurado e serviço Rest habilitado em seu server.

Instalação/Atualização

Este tópico tem por objetivo orientar a instalação da integração, visando o seu funcionamento completo.

Instalação de produtos ou ferramentas necessárias podem referenciar outros documentos existentes, desde que estejam disponíveis no repositório de documentação da TOTVS ou sejam enviados junto com o documento da integração em si.

As informações mínimas necessárias para este tópico são:

Ativação/Desativação da integração

Por padrão esta integração estará em repositório, porém demanda realizar a devida configuração conforme abaixo:

Controle de Ambiente

Exige que os seguintes pontos sejam revisados:

  • Protheus com sua arquitetura devidamente estruturada.
  • Módulo de Gestão de Pessoal (SIGAGPE) com suas entidades base, devidamente populadas por dados que no momento da integração serão utilizados na criação do registro de adicional. (Para melhor compreensão, analise o cadastro disponível dentro do sistema e verifique os campos que possuem consultas em outras tabelas se as mesmas estão com os seus dados devidamente cadastrados).

Controle de Versão

O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.

Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.

Suporte

O suporte aos recursos da Integração será de responsabilidade da linha Protheus, onde será analisada pela equipe de suporte da Totvs.

Fluxo das Informações

Esta integração traz a funcionalidade exclusivamente à área de Gestão de Pessoal, no processo de alteração dos adicionais do funcionario.

Processos

O Sistema requisitante enviará as informações via json para a interface de integração, desta forma serão atualizados os dados de periculosidade e insalubridade dentro do cadastro do funcionário no Protheus, caso tenha êxito na geração do registro, será retornada a mesma estrutura json recebida, acompanhada de uma nova tag chamada id, que será uma chave única composta de informações da entidade dentro do sistema.  Desta forma será confirmada sua gravação, caso contrário enviará as informações de inconsistências que serão citadas nos próximos tópicos.

Limitações / Restrições Gerais

  • Com o objetivo de manter a estrutura e a agilidade da estrutura Rest, o Web Service Rest receberá o registro individual de cada funcionário.

Como realizar a chamada da API REST

Para realizar a integração com o parceiro TOTVS são necessárias as informações básicas de consulta para retorno do funcionário desejado.

  • Preenchimento do EndPoint da API GPEAADIPI;
  • Utilizar a chamada do método Put  e do Serviço additional;
  • Preenchimento dos parâmetros obrigatórios da API.



Totvs custom tabs box
tabsPUT
idsPUT
Totvs custom tabs box items
defaultno
referenciaPUT

Parâmetros de Entrada PUT:

Parâmetro

Valor de Exemplo

Obrigatório

Tipo

Valor Default

Descrição
authorization usuario:senhaSim

header


autenticação é requerida para o funcionamento correto da API em casos de ambientes com autenticação Http Basic.
additionalId

T1; D MG 01 ; T1|D MG 01 |000001

SimURL Parameters

Composição da string a ser enviada, deve ser ser composta por "GRUPO DE EMPRESA;FILIAL;CHAVE FUNCIONARIO".

content{
"companyId":"T1",
"branchId": "D MG 01 ",
"employeeId":"T1|D MG 01 |160001",
"unhealthyDegree1": "1",
"dangerousness1": "2"
}
simbody

Estrutura json com informações de periculosidade e insalubridade do funcionário:

  • dangerousness:
  • unhealthyDegree

Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta POSTMAN e após a configuração do server protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}/rh/v1/additional/{additionalId}

Exemplo: http://localhost:5192/api/rh/v1/additional/T1;M SP 01 ;T1|M SP 01 |600001


Dados utilizados da API

Por ser uma estrutura única para todas as linhas, cada linha utilizará os campos pertinentes aos seus ambientes.

Propriedade API RESTCAMPO PROTHEUSDESCRIÇÃOFormato
companyIdM0_CODIGOInformações de acesso ao sistema, campo contém informação do grupo de empresa
branchIdRA_FILIALInformações de acesso ao sistema, campo compõe Empresa+Unidade de Negócio+ Filial
employeeIdRA_MATChave do Funcionário.Empresa|Filial|Matrícula
dangerousnessRA_ADCPERIPericulosidade"1"
unhealthyDegreeRA_ADCINSInsalubridade Grau"2"

Situações Tratadas

O envio de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros.
Desta forma, foram criados alguns tratamentos de erros, listados abaixo, cada um com sua respectiva mensagem e solução.


Mensagens Validação

Erro

Mensagem

Solução

API RESPONSE

200

Atualizado com sucesso.

Registro alterado com sucesso.

{
"companyId":"T1",
"branchId": "D MG 01 ",
"employeeId":"T1|D MG 01 |160001",
"unhealthyDegree1": "1",
"dangerousness1": "2",

"id": "T1;D MG 01 ; T1|D MG 01 | 160001"

}





400

Erro na validação do recebimento da mensagem.

Verificar se as propriedade URL Parameters additionalId está preenchida e com dados válidos no pacote enviado.

  1. Dados de Empresa e Filial,
  2. Dados de Filial e Matrícula,
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 400,
    "detailedMessage": "Informação addionalId ausente ou inválida",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": "Erro na validação do recebimento da mensagem."
}
500

Ocorreu uma falha no retorno da informação.

É necessário avaliar se o servidor está funcionando corretamente.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
   "errorCode": 500,
   "errorMessage": "Ocorreu uma falha no retorno da informação."
}


OBS: Estas mensagens de validações serão retornadas sempre que algum campo passado que seja obrigatório ou que algum campo enviado tenha sua origem de dados em outra tabela e não seja localizado na mesma, vale lembrar que são apenas exemplos de mensagens de erros e podendo variar o nome da propriedade enviada.

Checklist de suporte da aplicação

Itens a serem verificados durante o atendimento:

  • Verificar se os pré-requisitos foram atendidos para a chamada da API;
  • Verificar se na chamada da API o EndPoint, o nome do serviço e todos os campos obrigatórios foram informados;
  • Verificar se o retorno da API apresenta algum erro tratado (códigos e mensagens de erro citados neste documento) e consultar a solução na mesma tabela que descreve o erro;
  • Em caso de erro não tratado, verificar se possui alguma informação de banco de dados, conexão com o servidor ou algo que possa identificar a origem do problema.



Anexos


Card
defaulttrue
id.f.
labelEstabilidade Funcional
titleEstabilidade Funcional


Controle de Estabilidade - stabilityControl - INTEGRAÇÃO GPEA923API -


Sistemas Envolvidos

  • Descrição dos sistemas envolvidos no contexto de negócio (e que serão envolvidos na integração).

    • Protheus (módulo de Gestão de Pessoal): Módulo responsável pela gestão do funcionário.
    • Quírons - NG

Integração

O objetivo desta integração é permitir que o RH ou área responsável pelo Gestão de Pessoal do Protheus, receba os dados do Controle de Estabilidade dos funcionários de outros sistemas especializados, reduzindo assim o trabalho de inclusão/alteração/exclusão manual dessas informações dentro do sistema;

  • Benefícios
    • Não terá um investimento alto de tempo para o cadastramento, pois os dados já serão enviados, editados ou excluídos através da integração a cada requisição do sistema especialista através da API de Estabilidade.
    • A informação será atualizada de forma automática, facilitando que conferência e confiabilidade dos dados recebidos.
  • Arquitetura (Tecnologia)

Toda integração entre o Protheus e o Sistema é feita por intermédio de comunicação direta com os Web Services(que são fixos) REST(Representation State Transfer) utilizando o formato JSON(JavaScript  Object Notation) de serialização de dados, onde através da ativação do serviço do REST do Protheus esteja disponível para utilizar o serviço.

Escopo

Por intermédio desta integração será disponibilizada a seguinte funcionalidade:

  • Manutenção do Período de Estabilidade do funcionário no módulo SIGAGPE;

Fora do escopo

  • Automatização de consultas de Período de Estabilidade,
  • Importação de base cadastral - dados do Funcionário,
  • Informações do Período de Estabilidade que não se enquadram dentro da tabela de Período de Estabilidade


Pré-requisitos instalação/implantação/utilização

  • Versões mínimas do Protheus: 12.1.23
  • Possuir acesso à Internet, caso o sistema que venha a utilizar a integração com a aplicação Protheus.
  • Estrutura de rede estável, para que haja tráfego de dados sem interrupção.
  • Protheus devidamente configurado e serviço Rest habilitado em seu server.


Instalação/Atualização

Este tópico tem por objetivo orientar a instalação da integração, visando o seu funcionamento completo.

Instalação de produtos ou ferramentas necessárias podem referenciar outros documentos existentes, desde que estejam disponíveis no repositório de documentação da TOTVS ou sejam enviados junto com o documento da integração em si.

As informações mínimas necessárias para este tópico são:

Ativação/Desativação da integração

Por padrão esta integração estará em repositório, porém demanda realizar a devida configuração conforme abaixo:

Controle de Ambiente

Exige que os seguintes pontos sejam revisados:

  • Protheus com sua arquitetura devidamente estruturada.
  • Módulo de Gestão de Pessoal (SIGAGPE) com suas entidades base, devidamente populadas por dados que no momento da integração serão utilizados na criação do registro de estabilidade. (Para melhor compreensão, analise o cadastro disponível dentro do sistema e verifique os campos que possuem consultas em outras tabelas se as mesmas estão com os seus dados devidamente cadastrados).

Controle de Versão

O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.

Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.

Suporte

O suporte aos recursos da Integração será de responsabilidade da linha Protheus, onde será analisada pela equipe de suporte da Totvs.

Fluxo das Informações

Esta integração traz a funcionalidade exclusivamente à área de Gestão de Pessoal, no processo de cadastramento (inclusão/alteração/exclusão) de Período de Estabilidade.

Cadastro

Esta integração contempla apenas o cadastramento(inclusão/alteração/exclusão) do Período de Estabilidade dentro do módulo SIGAGPE.

Processos

O Sistema requisitante enviará as informações via json para a interface de integração, desta forma será gerado um novo registro na tabela de Período de Estabilidade no Protheus, caso tenha êxito na geração do registro, será retornada a mesma estrutura de json recebida, acompanhada de uma nova tag chamada id, acompanhada de uma nova tag chamada id, que será uma chave única composta de informações da entidade dentro do sistema.  Desta forma será confirmada sua gravação, caso contrário enviará as informações de inconsistências que serão citadas nos próximos tópicos.


Limitações / Restrições Gerais

  • Com o objetivo de manter a estrutura e a agilidade da estrutura Rest, o Web Service Rest receberá o registro individual de cada Período de Estabilidade.


Como realizar a chamada da API REST

Para realizar a integração com o parceiro TOTVS são necessárias as informações básicas de consulta para retorno do funcionário desejado.

  • Preenchimento do EndPoint da API GPEA923API;
  • Utilizar a chamada do método Post, Put e Delete e do Serviço stabilityControl;
  • Preenchimento dos parâmetros obrigatórios da API.
Totvs custom tabs box
tabsPOST,PUT,DELETE
idsPOST,PUT,DELETE
Totvs custom tabs box items
defaultno
referenciaPOST

Parâmetros de Entrada POST:

Parâmetro

Valor de Exemplo

Obrigatório

Tipo

Valor Default

Descrição
authorization usuario:senhaSim

header


autenticação é requerida para o funcionamento correto da API em casos de ambientes com autenticação Http Basic.
content{
"companyId":"T1",
"branchId": "D MG 01 ",
"employeeId":"T1|D MG 01 |160001",
"startDate": "2020-06-02T10:10:10",
"stabilityCode": "T1|D MG |S01"
}
Simbody

Estrutura json com informações do período de estabilidade do funcionário:

Dados de preparação de ambiente:

  • companyId: Grupo de empresa
  • branchId: Empresa+Unidade de negócio+Filial

Dados de Período de Estabilidade:

  • employeeId: Informação pertinente ao funcionário.
  • startDate: Data do Início do Período de Estabilidade.
  • endDate: Data do Final do Período de Estabilidade.
  • stabilityCode: Tipo de Estabilidade registrado.

Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta POSTMAN e após a configuração do server protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}/api/rh/v1/stabilityControl


Dados utilizados da API

Por ser uma estrutura única para todas as linhas, cada linha utilizará os campos pertinentes aos seus ambientes.

Propriedade API RESTCAMPO PROTHEUSDESCRIÇÃOFormato
companyId
Informações de acesso ao sistema, campo contém informação do grupo de empresa
branchIdRFX_FILIALInformações de acesso ao sistema, campo compõe Empresa+Unidade de Negócio+ Filial"D MG 01 "
employeeIdRFX_MATChave do Funcionário"T1|D MG 01 |000001"
startDateRFX_DATAIData de Início do Período"2020-01-01T18:25:43"
endDateRFX_DATAFData de término do Período"2020-01-01T18:25:43"
stabilityCode

RFX_TPESTB

Chave do Tipo de Estabilidade"T1|D MG |S01"

Situações Tratadas

O envio de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros.
Desta forma, foram criados alguns tratamentos de erros, listados abaixo, cada um com sua respectiva mensagem e solução.


Mensagens Validação

Erro

Mensagem

Solução

API RESPONSE
201Registro criado.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "companyId": "T1",
    "branchId": "D MG 01 ",
    "startDate": "2020-01-01T18:25:43",
    "employeeId": "T1|D MG 01 |000001",
    "stabilityCode": "T1|D MG    |S01",
    "id": "T1;D MG 01 ;T1|D MG 01 |000001;2020-01-01T18:25:43;T1|D MG    |S01"
}
400Erro na validação do recebimento da mensagem.Verificar se as propriedades json obrigatórias (companyID , branchId , employeeIdstartDate, stabilityCode) estão preenchidas.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 400,
    "detailedMessage": "Verifique o conteúdo da TAG (employeeId) pois ela é obrigatória para a manipulação deste processo.\r\n\r\n",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": "Erro na validação do recebimento da mensagem."
}
500

Ocorreu uma falha no retorno da informação.

É necessário avaliar se o servidor está funcionando corretamente.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 500,
    "detailedMessage": "Ocorreu uma falha no retorno da informação.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": Descrição do erro.
}

OBS: Estas mensagens de validações serão retornadas sempre que algum campo passado que seja obrigatório ou que algum campo enviado tenha sua origem de dados em outra tabela e não seja localizado na mesma, vale lembrar que são apenas exemplos de mensagens de erros e podendo variar o nome da propriedade enviada.


Totvs custom tabs box items
defaultno
referenciaPUT

Parâmetros de Entrada PUT:

Parâmetro

Valor de Exemplo

Obrigatório

Tipo

Valor Default

Descrição
authorization usuario:senhaSim

header


autenticação é requerida para o funcionamento correto da API em casos de ambientes com autenticação Http Basic.
stabilityId

T1;D MG 01 ;T1|D MG 01 |160001;2020-06-18T10:10:10;T1|D MG |S01

Simrequest

Composição da string a ser enviada, deve ser ser composta por "GRUPO DE EMPRESA;FILIAL;CHAVEFUNCIONARIO;DATA DE INÍCIO; CHAVE TIPODEESTABILIDADE".

content

{
"companyId":"T1",
"branchId": "D MG 01 ",
"employeeId":"T1|D MG 01 |160001",
"startDate": "2020-06-02T10:10:10",

"endDate": "2020-06-02T10:10:10",
"stabilityCode": "T1|D MG |S01"
}

simbody

Estrutura json com informações do período de estabilidade:

Dados de preparação de ambiente:

  • companyId: Grupo de empresa
  • branchId: Empresa+Unidade de negócio+Filial

Dados de Período de Estabilidade:

  • employeeId: Informação pertinente ao funcionário.
  • startDate: Data do Início do Período de Estabilidade.
  • stabilityCode: Tipo de Estabilidade registrado.

Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta POSTMAN e após a configuração do server Protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}/api/rh/v1/stabilityControl{stabilityId}



Dados utilizados da API

Por ser uma estrutura única para todas as linhas, cada linha utilizará os campos pertinentes aos seus ambientes.

Propriedade API RESTCAMPO PROTHEUSDESCRIÇÃOFormato
companyId
Informações de acesso ao sistema, campo contém informação do grupo de empresa
branchIdRFX_FILIALInformações de acesso ao sistema, campo compõe Empresa+Unidade de Negócio+ Filial"D MG 01"
employeeIdRFX_MATChave do Funcionário."T1|D MG 01 |000001"
startDateRFX_DATAIData do Início do Período"2020-01-01T18:25:43"
startDateRFX_DATAFData do final do Período"2020-01-01T18:25:43"
stabilityCodeRFX_TPESTBChave do Tipo de Estabilidade"T1|D MG |S01"

Situações Tratadas

O envio de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros.
Desta forma, foram criados alguns tratamentos de erros, listados abaixo, cada um com sua respectiva mensagem e solução.


Mensagens Validação

Erro

Mensagem

Solução

API RESPONSE

200

Atualizado com sucesso.

Registro alterado com sucesso.

Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
"companyId":"T1",
"branchId": "D MG 01 ",
"employeeId":"T1|D MG 01 |160001",
"startDate": "2020-06-02T10:10:10",
"endDate": "2020-06-03T10:10:10",
"stabilityCode": "T1|D MG |S01",
"id": "T1;D MG 01 ;2020-06-02T10:10:10;10:10;T1|D MG 01 |160001"
}

400

Erro na validação do recebimento da mensagem.

Verificar se as propriedade json stabilityId está preenchida e com dados válidos no pacote enviado.

  1. Dados de Empresa e Filial,
  2. Dados de Filial e Matrícula,
  3. Formato da Data de Início,
  4. Tipo de Estabilidade.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 400,
    "detailedMessage": "Informação stabilityId ausente ou inválida.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": "Erro na validação do recebimento da mensagem."
}
500

Ocorreu uma falha no retorno da informação.

É necessário avaliar se o servidor está funcionando corretamente.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 500,
    "detailedMessage": "Ocorreu uma falha no retorno da informação.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": Descrição do erro.
}


OBS: Estas mensagens de validações serão retornadas sempre que algum campo passado que seja obrigatório ou que algum campo enviado tenha sua origem de dados em outra tabela e não seja localizado na mesma, vale lembrar que são apenas exemplos de mensagens de erros e podendo variar o nome da propriedade enviada.



Totvs custom tabs box items
defaultno
referenciaDELETE

Parâmetros de Entrada DELETE:

Parâmetro

Valor de Exemplo

Obrigatório

Tipo

Valor Default

Descrição
authorization usuario: senhaSim

header


autenticação é importante para o funcionamento correto da API em casos de ambientes com autenticação Http Basic.
stabilityId

T1;D MG 01 ;T1|D MG 01 |160001;2020-06-18T10:10:10;T1|D MG |S01

Simquery

Composição da string a ser enviada, deve ser ser composta por "GRUPODEEMPRESA;FILIAL;CHAVEFUNCIONARIO;DATAINICIO;CHAVETIPODEESTABILIDADE".

Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta POSTMAN e após a configuração do server protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}/api/rh/v1/stabilityControl{stabilityId}

Situações Tratadas

O envio de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros.
Desta forma, foram criados alguns tratamentos de erros, listados abaixo, cada um com sua respectiva mensagem e solução.


Mensagens Validação

Erro

Mensagem

Solução

API RESPONSE
200Operação realizada com sucesso.Registro foi deletado com sucesso.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": "200",
    "description": "Operação realizada com sucesso!"
}

400

Erro na validação do recebimento da mensagem.

Verificar se as propriedade json stabilityId está preenchida e com dados válidos no pacote enviado.

  1. Dados de Empresa e Filial,
  2. Dados de Filial e Matrícula,
  3. Formato da Data de Início,
  4. Tipo de Estabilidade.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 400,
    "detailedMessage": "Informação stabilityId ausente ou inválida.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": "Erro na validação do recebimento da mensagem."
}
500

Erro no acesso ao Endpoint.

É necessário avaliar se o servidor está funcionando corretamente.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 500,
    "detailedMessage": "Ocorreu uma falha no retorno da informação.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": Descrição do erro.
}


OBS: Estas mensagens de validações serão retornadas sempre que algum campo passado que seja obrigatório ou que algum campo enviado tenha sua origem de dados em outra tabela e não seja localizado na mesma, vale lembrar que são apenas exemplos de mensagens de erros e podendo variar o nome da propriedade enviada.

Checklist de suporte da aplicação

Itens a serem verificados durante o atendimento:

  • Verificar se os pré-requisitos foram atendidos para a chamada da API;
  • Verificar se na chamada da API o EndPoint, o nome do serviço e todos os campos obrigatórios foram informados;
  • Verificar se o retorno da API apresenta algum erro tratado (códigos e mensagens de erro citados neste documento) e consultar a solução na mesma tabela que descreve o erro;
  • Em caso de erro não tratado, verificar se possui alguma informação de banco de dados, conexão com o servidor ou algo que possa identificar a origem do problema.


Anexos


Card
defaulttrue
id.f.
labelMarcação de horas
titleMarcação de horas


Controle de Abonos - AllowanceControl - INTEGRAÇÃO PONA350API 


Sistemas Envolvidos

  • Protheus (módulo de Ponto Eletrônico): Módulo responsável pela gestão da assiduidade e marcações/apontamentos de horários de trabalho do funcionário, dentre outros cadastros pertinentes aos colaboradores.

  • Quírons - NG

Integração

O objetivo desta integração é permitir que o RH ou área responsável pelo Gestão de Pessoal do Protheus, receba os dados do Controle de Abono de marcações de ponto dos funcionários de outros sistemas especializados, reduzindo assim o trabalho de inclusão/alteração/exclusão manual dessas informações dentro do sistema;

  • Benefícios
    • Não terá um investimento alto de tempo para o cadastramento, pois os dados já serão enviados, editados ou excluídos através da integração a cada requisição do sistema especialista através da API de Abono.
    • A informação será atualizada de forma automática, facilitando que conferência e confiabilidade dos dados recebidos.
  • Arquitetura (Tecnologia)

Toda integração entre o Protheus e o Sistema é feita por intermédio de comunicação direta com os Web Services(que são fixos) REST(Representation State Transfer) utilizando o formato JSON(JavaScript  Object Notation) de serialização de dados, onde através da ativação do serviço do REST do Protheus esteja disponível para utilizar o serviço.

Escopo

Por intermédio desta integração será disponibilizada a seguinte funcionalidade:

  • Manutenção de Lançamentos de Pré-Abono do funcionário no módulo SIGAPON;

Fora do escopo

  • Automatização de consultas de Abono,
  • Importação de base cadastral - dados do Funcionário,
  • Informações do Abono que não se enquadram dentro da tabela de Abono


Pré-requisitos instalação/implantação/utilização

  • Versões mínimas do Protheus: 12.1.23
  • Possuir acesso à Internet, caso o sistema que venha a utilizar a integração com a aplicação Protheus.
  • Estrutura de rede estável, para que haja tráfego de dados sem interrupção.
  • Protheus devidamente configurado e serviço Rest habilitado em seu server.


Instalação/Atualização

Este tópico tem por objetivo orientar a instalação da integração, visando o seu funcionamento completo.

Instalação de produtos ou ferramentas necessárias podem referenciar outros documentos existentes, desde que estejam disponíveis no repositório de documentação da TOTVS ou sejam enviados junto com o documento da integração em si.

As informações mínimas necessárias para este tópico são:

Ativação/Desativação da integração

Por padrão esta integração estará em repositório, porém demanda realizar a devida configuração conforme abaixo:

Controle de Ambiente

Exige que os seguintes pontos sejam revisados:

  • Protheus com sua arquitetura devidamente estruturada.
  • Módulo de Ponto Eletrônico (SIGAPON) com suas entidades base, devidamente populadas por dados que no momento da integração serão utilizados na criação do registro de abono. (Para melhor compreensão, analise o cadastro disponível dentro do sistema e verifique os campos que possuem consultas em outras tabelas se as mesmas estão com os seus dados devidamente cadastrados).

Controle de Versão

O grupo TOTVS, representado por suas marcas, irá administrar as demandas de evolução dos layouts e demais ajustes, acordando junto aos solicitantes o prazo de liberação de release.

Todas as evoluções programadas deverão ser discutidas e aprovadas pelas marcas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das marcas e alinhamento com as diretivas definidas pelo Comitê de Integração TOTVS.

Suporte

O suporte aos recursos da Integração será de responsabilidade da linha Protheus, onde será analisada pela equipe de suporte da Totvs.

Fluxo das Informações

Esta integração traz a funcionalidade exclusivamente à área de Ponto Eletrônico, no processo de cadastramento (inclusão/alteração/exclusão) de abonos de marcações de horário de ponto.

Cadastro

Esta integração contempla apenas o cadastramento(inclusão/alteração/exclusão) do Abono dentro do módulo SIGAPON.

Processos

O Sistema requisitante enviará as informações via json para a interface de integração, desta forma serão atualizados os dados de abono de marcações dentro do cadastro de pré abono no Protheus, caso tenha êxito na geração do registro, será retornada a mesma estrutura json recebida, acompanhada de uma nova tag chamada id, que será uma chave única composta de informações da entidade dentro do sistema.  Desta forma será confirmada sua gravação, caso contrário enviará as informações de inconsistências que serão citadas nos próximos tópicos.


Limitações / Restrições Gerais

  • Com o objetivo de manter a estrutura e a agilidade da estrutura Rest, o Web Service Rest receberá o registro individual de cada registro de Abono.


Como realizar a chamada da API REST

Para realizar a integração com o parceiro TOTVS são necessárias as informações básicas de consulta para retorno do funcionário desejado.

  • Preenchimento do EndPoint da API PONA350API;
  • Utilizar a chamada do método Post, Put e Delete e do Serviço AllowanceControl;
  • Preenchimento dos parâmetros obrigatórios da API.


Totvs custom tabs box
tabsPOST,PUT,DELETE
idsPOST,PUT,DELETE
Totvs custom tabs box items
defaultyes
referenciaPOST

Parâmetros de Entrada POST:

Parâmetro

Valor de Exemplo

Obrigatório

Tipo

Valor Default

Descrição
authorization usuario:senhaSim

header


autenticação é requerida para o funcionamento correto da API em casos de ambientes com autenticação Http Basic.
content{
"companyId":"T1",
"branchId": "D MG 01 ",
"employeeId":"T1|D MG 01 |160001",
"code": "T1|D MG |114",
"startDate": "2020-06-02T10:10:10",
"endDate": "2020-06-10T10:10:10",
"startTime": "10:10",
"endTime": "19:10"
}
simbody

Estrutura json com informações do abono de marcações do funcionário:

Dados de preparação de ambiente:

  • companyId: Grupo de empresa
  • branchId: Empresa+Unidade de negócio+Filial

Dados de Abono:

  • employeeId: Informação pertinente ao funcionário.
  • startDate: Data do Início do abono.
  • endDate: Data do Final do abono.
  • startTime: Hora do Início do abono.
  • endTime: Hora do Final do abono.
  • code: Tipo de Abono registrado.

Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta POSTMAN e após a configuração do server protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}/rh/v1/allowanceControl


Dados utilizados da API

Por ser uma estrutura única para todas as linhas, cada linha utilizará os campos pertinentes aos seus ambientes.

Propriedade API RESTCAMPO PROTHEUSDESCRIÇÃOFormato
companyId
Informações de acesso ao sistema, campo contém informação do grupo de empresa"T1"
branchIdRF0_FILIALInformações de acesso ao sistema, campo compõe Empresa+Unidade de Negócio+ Filial"D MG 01 "
employeeIdRF0_MATchave do Funcionário"T1|D MG 01 |000001""
startDateRF0_DTPREIData inicial do abono"2020-01-01T18:25:43"
endDateRF0_DTPREFData final do abono"2020-01-01T18:25:43"
startTimeRF0_HORINIhora inicial do abono"10:00"
endTimeRF0_HORFIMhora final do abono"15:00"
code

P6_CODIGO

chave do tipo de abono"T1| D MG   | 107"

Situações Tratadas

O envio de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros.
Desta forma, foram criados alguns tratamentos de erros, listados abaixo, cada um com sua respectiva mensagem e solução.


Mensagens Validação

Erro

Mensagem

Solução

API RESPONSE
201Created.Registro incluído com sucesso.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
"companyId":"T1",
"branchId": "D MG 01 ",
"employeeId":"T1|D MG 01 |160001",
"code": "T1|D MG |114",
"startDate": "2020-06-02T10:10:10",
"endDate": "2020-06-10T10:10:10",
"startTime": "10:10",
"endTime": "19:10",
"id": "T1;D MG 01 ;T1|D MG 01 |160001;2020-06-03T13:00:00.000Z;10:10;T1|D MG|107"

400

Erro no momento da listagem do registro.

Verificar se as propriedade json startDate está preenchida e com dados válidos no pacote enviado .

Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 400,
    "detailedMessage": "Verifique o conteúdo da TAG (startDate) pois a data não está no formato correto: 'YYYY-MM-DDTHH:MM:SS'\r\n",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": "Erro na validação do recebimento da mensagem."
}
500

Erro no acesso ao Endpoint.

É necessário avaliar se o servidor está funcionando corretamente.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 500,
    "detailedMessage": "Ocorreu uma falha no retorno da informação.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": Descrição do erro.
}


OBS: Estas mensagens de validações serão retornadas sempre que algum campo passado que seja obrigatório ou que algum campo enviado tenha sua origem de dados em outra tabela e não seja localizado na mesma, vale lembrar que são apenas exemplos de mensagens de erros e podendo variar o nome da propriedade enviada.


Totvs custom tabs box items
defaultyesno
referenciaPUT

Parâmetros de Entrada PUT:

Parâmetro

Valor de Exemplo

Obrigatório

Tipo

Valor Default

Descrição
authorization usuario:senhaSim

header


autenticação é importante para o funcionamento correto da API em casos de ambientes com autenticação Http Basic.
allowanceId

T1;D MG 01 ;T1|D MG 01 |160001;2020-06-03T13:00:00.000Z;10:10;T1|D MG|107

Simrequest

Composição da string a ser enviada, deve ser ser composta por "GRUPO DE EMPRESA;FILIAL;CHAVEFUNCIONARIO;DATADEINÍCIO;HORADEINICIO;CHAVE TIPODEABONO".

contentlayout jsonsimbody

Estrutura json com informações do abono de marcação de ponto:

Dados de preparação de ambiente:

  • companyId: Grupo de empresa
  • branchId: Empresa+Unidade de negócio+Filial

Dados de solicitação de abono:

  • employeeId: Informação pertinente ao funcionário.
  • startDate: Data inicial do abono.
  • endDate: Data final do abono.
  • startTime: Horário do Início do abono.
  • endTime: Horário do final do abono.
  • code: Tipo de abono registrado.

Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta POSTMAN e após a configuração do server protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}/rh/v1/allowanceControl{allowanceId}


Dados utilizados da API

Por ser uma estrutura única para todas as linhas, cada linha utilizará os campos pertinentes aos seus ambientes.

Propriedade API RESTCAMPO PROTHEUSDESCRIÇÃOFormato
companyId
Informações de acesso ao sistema, campo contém informação do grupo de empresa"T1"
branchId
Informações de acesso ao sistema, campo compõe Empresa+Unidade de Negócio+ Filial" D MG 01 "
employeeIdRF0_MATchave do Funcionário."T1|D MG 01 |000001"
startDateRF0_DTPREIData de Início do abono"2020-01-01T18:25:43"
endDateRF0_DTPREFData do Final do abono"2020-01-01T18:25:43"
startTimeRF0_HORINIHora inicial do abono"10:00"
endTimeRF0_HORFIMHora final do abono"15:00"
codeP6_CODIGOchave do tipo de abono"T1|D MG   |107"

Situações Tratadas

O envio de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros.
Desta forma, foram criados alguns tratamentos de erros, listados abaixo, cada um com sua respectiva mensagem e solução.


Mensagens Validação

Erro

Mensagem

Solução

API RESPONSE
200Atualizado com sucesso.Registro alterado com sucesso.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
"companyId":"T1",
"branchId": "D MG 01 ",
"employeeId":"T1|D MG 01 |160001",
"code": "T1|D MG |114",
"startDate": "2020-06-02T10:10:10",
"endDate": "2020-06-10T10:10:10",
"startTime": "10:10",
"endTime": "19:10",
"id": "T1;D MG 01 ;T1|D MG 01 |160001;2020-06-03T13:00:00.000Z;10:10;T1|D MG|107"

400

Erro no momento da listagem do registro.

Verificar se as propriedade json allowanceId está preenchida e com dados válidos no pacote enviado .

Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 400,
    "detailedMessage": "Informação allowanceId ausente ou inválida.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": "Erro na validação do recebimento da mensagem."
}
500

Erro no acesso ao Endpoint.

É necessário avaliar se o servidor está funcionando corretamente.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 500,
    "detailedMessage": "Ocorreu uma falha no retorno da informação.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": Descrição do erro.
}


OBS: Estas mensagens de validações serão retornadas sempre que algum campo passado que seja obrigatório ou que algum campo enviado tenha sua origem de dados em outra tabela e não seja localizado na mesma, vale lembrar que são apenas exemplos de mensagens de erros e podendo variar o nome da propriedade enviada.




yesDELETE
Totvs custom tabs box items
default
no
referencia
PUT

Parâmetros de Entrada

DELETE

PUT:

Parâmetro

Valor de Exemplo

Obrigatório

Tipo

Valor Default

Descrição
authorization usuario:senhaSim

header


autenticação é importante para o funcionamento correto da API em casos de ambientes com autenticação Http Basic.
allowanceId
"

T1;D MG 01 ;T1|D MG 01 |160001;2020-06-03T13:00:00.000Z;10:10;T1|D MG|107

"

Sim
query
request

Composição da string a ser enviada, deve ser ser composta por "GRUPO DE EMPRESA;FILIAL;CHAVEFUNCIONARIO;DATADEINÍCIO;HORADEINICIO;CHAVE TIPODEABONO".

contentlayout jsonsimbody

Estrutura json com informações do abono de marcação de ponto:

Dados de preparação de ambiente:

  • companyId: Grupo de empresa
  • branchId: Empresa+Unidade de negócio+Filial

Dados de solicitação de abono:

  • employeeId: Informação pertinente ao funcionário.
  • startDate: Data inicial do abono.
  • endDate: Data final do abono.
  • startTime: Horário do Início do abono.
  • endTime: Horário do final do abono.
  • code: Tipo de abono registrado.

Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta POSTMAN e após a configuração do server protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}/rh/v1/allowanceControl{allowanceId}

Image Removed

Situações Tratadas

Image Added


Dados utilizados da API

Por ser uma estrutura única para todas as linhas, cada linha utilizará os campos pertinentes aos seus ambientes.

Propriedade API RESTCAMPO PROTHEUSDESCRIÇÃOFormato
companyId
Informações de acesso ao sistema, campo contém informação do grupo de empresa"T1"
branchId
Informações de acesso ao sistema, campo compõe Empresa+Unidade de Negócio+ Filial" D MG 01 "
employeeIdRF0_MATchave do Funcionário."T1|D MG 01 |000001"
startDateRF0_DTPREIData de Início do abono"2020-01-01T18:25:43"
endDateRF0_DTPREFData do Final do abono"2020-01-01T18:25:43"
startTimeRF0_HORINIHora inicial do abono"10:00"
endTimeRF0_HORFIMHora final do abono"15:00"
codeP6_CODIGOchave do tipo de abono"T1|D MG   |107"

Situações Tratadas

O envio de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros.
Desta forma, foram criados alguns tratamentos de erros, listados abaixo, cada um com sua respectiva mensagem e solução.


Mensagens Validação

Erro

Mensagem

Solução

API RESPONSE
200Atualizado com sucesso.Registro alterado com sucesso.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
"companyId":"T1",
"branchId": "D MG 01 ",
"employeeId":"T1|D MG 01 |160001",
"code": "T1|D MG |114",
"startDate": "2020-06-02T10:10:10",
"endDate": "2020-06-10T10:10:10",
"startTime": "10:10",
"endTime": "19:10",
"id": "T1;D MG 01 ;T1|D MG 01 |160001;2020-06-03T13:00:00.000Z;10:10;T1|D MG|107"

400

Erro no momento da listagem do registro.

Verificar se as propriedade json allowanceId está preenchida e com dados válidos no pacote enviado .

Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 400,
    "detailedMessage": "Informação allowanceId ausente ou inválida.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": "Erro na validação do recebimento da mensagem."
}
500

Erro no acesso ao Endpoint.

É necessário avaliar se o servidor está funcionando corretamente.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 500,
    "detailedMessage": "Ocorreu uma falha no retorno da informação.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": Descrição do erro.
}




OBS: Estas mensagens de validações serão retornadas sempre que algum campo passado que seja obrigatório ou que algum campo enviado tenha sua origem de dados em outra tabela e não seja localizado na mesma, vale lembrar que são apenas exemplos de mensagens de erros e podendo variar o nome da propriedade enviada.

Totvs custom tabs box items
defaultno
referenciaDELETE

Parâmetros de Entrada DELETE:

Parâmetro

Valor de Exemplo

Obrigatório

Tipo

Valor Default

Descrição
authorization usuario:senhaSim

header


autenticação é importante para o funcionamento correto da API em casos de ambientes com autenticação Http Basic.
allowanceId

"T1;D MG 01 ;T1|D MG 01 |160001;2020-06-03T13:00:00.000Z;10:10;T1|D MG|107"

Simquery

Composição da string a ser enviada, deve ser ser composta por "GRUPO DE EMPRESA;FILIAL;CHAVEFUNCIONARIO;DATADEINÍCIO;HORADEINICIO;CHAVE TIPODEABONO".

Parâmetros e Chamada do Método:

Para a realização de testes foi utilizado a ferramenta POSTMAN e após a configuração do server protheus a API Rest, a  requisição deverá ser semelhante a imagem abaixo:

{protocolo}://{host}/{api}/rh/v1/allowanceControl{allowanceId}

Image Added

Situações Tratadas

O envio

O envio

de dados inesperados nos parâmetros de entrada da API REST pode ocasionar alguns erros.
Desta forma, foram criados alguns tratamentos de erros, listados abaixo, cada um com sua respectiva mensagem e solução.


Mensagens Validação

Erro

Mensagem

Solução

API RESPONSE
200Atualizado com sucesso.Registro foi deletado com sucesso.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": "200",
    "description": "Opera��o realizada com sucesso!"
}

400

Erro no momento da listagem do registro.

Verificar se a propriedade json allowanceId está preenchida e com dados válidos no pacote enviado .

Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 400,
    "detailedMessage": "Informação allowanceId ausente ou inválida.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": "Erro na validação do recebimento da mensagem."
}
500

Erro no acesso ao Endpoint.

É necessário avaliar se o servidor está funcionando corretamente.
Bloco de código
themeEclipse
linenumberstrue
collapsetrue
{
    "code": 500,
    "detailedMessage": "Ocorreu uma falha no retorno da informação.",
    "helpUrl": "https://tdn.totvs.com/x/ZYNvI",
    "message": Descrição do erro.
}


OBS: Estas mensagens de validações serão retornadas sempre que algum campo passado que seja obrigatório ou que algum campo enviado tenha sua origem de dados em outra tabela e não seja localizado na mesma, vale lembrar que são apenas exemplos de mensagens de erros e podendo variar o nome da propriedade enviada.

Checklist de suporte da aplicação

Itens a serem verificados durante o atendimento:

  • Verificar se os pré-requisitos foram atendidos para a chamada da API;
  • Verificar se na chamada da API o EndPoint, o nome do serviço e todos os campos obrigatórios foram informados;
  • Verificar se o retorno da API apresenta algum erro tratado (códigos e mensagens de erro citados neste documento) e consultar a solução na mesma tabela que descreve o erro;
  • Em caso de erro não tratado, verificar se possui alguma informação de banco de dados, conexão com o servidor ou algo que possa identificar a origem do problema.


Card
defaulttrue
id.f.
labelNecessidade de Treinamento
titleNecessidade de Treinamento

Este é o valor padrão, nessa opção, se o Cálculo de Férias for excluído, os documentos que porventura foram enviados para o TAE não irão sofrer qualquer alteração.

Card
defaulttrue
id.f.
labelAfastamentos / Ausências
titleTipos de Abono

Este é o valor padrão, nessa opção, se o Cálculo de Férias for excluído, os documentos que porventura foram enviados para o TAE não irão sofrer qualquer alteração.

Card
defaulttrue
id.f.
labelCarga de Dados
titleCarga de Dados

Este é o valor padrão, nessa opção, se o Cálculo de Férias for excluído, os documentos que porventura foram enviados para o TAE não irão sofrer qualquer alteração.

DI Protheus X NG - Integração de Movimentos - Medicina e Segurança - RH.