01. DADOS GERAIS
Produto: | TOTVS RH Solucoes_totvs_parceirosexptotvs |
---|
|
|
---|
Linha de Produto: | |
---|
Segmento: | |
---|
Módulo: | GESTÃO DE PESSOAS (SIGAGPE) |
---|
Função: | POR FUNCIONÁRIO (GPEA090) |
---|
Ticket: |
|
---|
Requisito/Story/Issue (informe o requisito relacionado) : | DRHCALCPRT-13991 |
---|
02. SITUAÇÃO/REQUISITO
Criação de API para integração dos resultados do ponto originados do sistema Ahgora para o Protheus.
03. SOLUÇÃO
Foi criado a API 'results', para receber os resultados originados do sistema de ponto da Ahgora, para integração nos lançamentos do funcionário no Protheus.
Este método é responsável por importar os resultados do sistema Ahgora, nos lançamentos do funcionário no Protheus.
- Endpoint:api/rh/v1/ahgora/results
- Método: POST
- Autenticação: Basic
Cadastros Básicos para integração
Antes da integração dos resultados para o Protheus, é necessário que existam cadastros básicos no sistema da Ahgora, para os resultados, devem ser cadastradas as verbas:
Os códigos deverão ser enviados concatenados com empresa/filial(Quando for exclusiva) e código do registro.
Nota |
---|
|
Os cadastros básicos serão realizados pela equipe de implantação. Quem estiver responsável pela implantação deverá extrair os dados do Protheus e concatenar os códigos correspondentes de cada empresa/filial antes de importá-los no sistema Ahgora. |
Para essa extração no protheus, pode ser usada a consulta genérica.
Documentação: RH - Linha Protheus - GPE - Consulta de informações em arquivos por Consulta Genérica
Informações |
---|
|
Autenticação Basic: Enviar usuário e senha do protheus no header da requisição. |
Body da requisição
Deck of Cards |
---|
|
Card |
---|
default | true |
---|
id | body1 |
---|
label | Definição das propriedades |
---|
title | Definição das propriedades |
---|
| Campos Protheus | Propriedades API | Descrição |
---|
RGB_MAT | matricula | Matrícula do funcionário - Matrícula deve ser enviada concatenada sem o pipe: Empresa + Filial + Matricula | RGB_PERIOD | anocom | Ano do período do resultado | RGB_PERIOD | mescom | Mês do período do resultado | RGB_SEMANA | campoAdicional | Para o protheus será tratado para verificar a semana do período |
| codfuncionario | Código do funcionário separado por pipe contendo Empresa + Filial + Matrícula | RGB_PD | rubrica | Código da verba do funcionário | RGB_HORAS | referencia | Referência em horas ou dia da verba | RGB_DTREF | datafalta | Data da falta |
Informações |
---|
| - Envio do atributo 'datafalta' vazio, será assumido o primeiro dia do período que está sendo processado, todas as verbas serão gravadas com referência.
- Para o atributo 'campoAdicional', para o protheus será usado para enviar a semana do período, caso seja enviado vazio, será assumido a semana aberta do período em questão.
- Caso ocorra um segundo envio do resultado para o funcionário no mesmo período, o primeiro envio do resultado será deletado da tabela RGB, e será gravado apenas o último envio.
|
|
Card |
---|
id | body2 |
---|
label | Body |
---|
title | Body |
---|
| Bloco de código |
---|
language | cpp |
---|
theme | Confluence |
---|
title | Body |
---|
| {
"items": [
{
"matricula": "0101000001",
"anocom": "2024",
"mescom": "08",
"campoAdicional": "1",
"codfuncionario": "01|01|000001",
"resultados": [
{
"rubrica": "114",
"referencia": "1,30",
"datafalta": ""
}
]
}
]
} |
|
|
Retorno
Deck of Cards |
---|
startHidden | false |
---|
id | retorno |
---|
|
Card |
---|
default | true |
---|
id | 200ok |
---|
label | 200 - OK |
---|
title | Sucesso |
---|
| Propriedades API | Descrição |
---|
matricula | Matrícula do funcionário concatenada por Empresa + Filial + Matricula | rubrica | Verba processada | status | Status 'S'(Sucesso) ou 'E'(Erro) | mensagem | Detalhe da mensagem | referencia | Referência da rubrica | datafalta | Data da falta quando houver |
Retorno status 'S' Bloco de código |
---|
language | cpp |
---|
theme | Confluence |
---|
title | Operação realizada com sucesso! |
---|
| {
"response": [
{
"resultados": [
{
"matricula": "0101000001",
"rubrica": "114",
"status": "S",
"mensagem": "Operação realizada com sucesso!",
"referencia": "1",
"datafalta": "20240722"
}
]
}
]
} |
Retorno status 'E' Bloco de código |
---|
language | cpp |
---|
theme | Confluence |
---|
title | Verba não encontrada na base de dados |
---|
| {
"response": [
{
"resultados": [
{
"matricula": "0101000001",
"rubrica": "ASD",
"status": "E",
"mensagem": "Verba não encontrada na base de dados.",
"referencia": "1",
"datafalta": ""
}
]
}
]
}
|
Bloco de código |
---|
language | cpp |
---|
theme | Confluence |
---|
title | Retorno funcionário não encontrada na base de dados |
---|
| {
"response": [
{
"resultados": [
{
"matricula": "0101XXXXXX",
"rubrica": "001",
"status": "E",
"mensagem": "Funcionário não localizado na base de dados.",
"referencia": "1",
"datafalta": "20240722"
},
{
"matricula": "0101XXXXXX",
"rubrica": "001",
"status": "E",
"mensagem": "Funcionário não localizado na base de dados.",
"referencia": "1",
"datafalta": "20240723"
}
]
}
]
} |
Bloco de código |
---|
language | cpp |
---|
theme | Confluence |
---|
title | Retorno de usuário sem permissão de acesso |
---|
| {
"response": [
{
"resultados": [
{
"matricula": "0101000001",
"rubrica": "Z52",
"status": "E",
"mensagem": "Usuário sem permissão de acesso na Empresa/Filial.",
"referencia": "1",
"datafalta": ""
},
{
"matricula": "0101000001",
"rubrica": "Z53",
"status": "E",
"mensagem": "Usuário sem permissão de acesso na Empresa/Filial.",
"referencia": "1",
"datafalta": ""
}
]
}
]
} |
Bloco de código |
---|
language | cpp |
---|
theme | Confluence |
---|
title | Retorno de empresa/filial inexistente na base de dados |
---|
| {
"response": [
{
"resultados": [
{
"matricula": "0101000001",
"rubrica": "Z52",
"status": "E",
"mensagem": "Empresa/Filial não encontradas na base de dados.",
"referencia": "1",
"datafalta": ""
}
]
}
]
} |
Bloco de código |
---|
language | cpp |
---|
theme | Confluence |
---|
title | Retorno de período do processamento não encontrado ou fechado |
---|
| {
"response": [
{
"resultados": [
{
"matricula": "0101000001",
"rubrica": "202",
"status": "E",
"mensagem": "Período/Semana não encontrados na base de dados ou o período está fechado. Necessário verificar o cadastro de períodos!",
"referencia": "1",
"datafalta": "20240722"
},
{
"matricula": "0101000002",
"rubrica": "203",
"status": "E",
"mensagem": "Período/Semana não encontrados na base de dados ou o período está fechado. Necessário verificar o cadastro de períodos!"
"referencia": "1",
"datafalta": ""
}
]
}
]
} |
Bloco de código |
---|
language | cpp |
---|
theme | Confluence |
---|
title | Retorno de limite de lançamentos diários para a mesma verba |
---|
| {
"response": [
{
"resultados": [
{
"matricula": "T2D MG 02 600528",
"rubrica": "003",
"status": "S",
"mensagem": "Operação realizada com sucesso!",
"referencia": "1,30",
"datafalta": ""
},
{
"matricula": "T2D MG 02 600528",
"rubrica": "003",
"status": "E",
"mensagem": "Verba ultrapassou o limite de lançamentos diários, verificar o cadastro da verba.",
"referencia": "1,30",
"datafalta": "20220102"
},
{
"matricula": "T2D MG 02 600528",
"rubrica": "003",
"status": "E",
"mensagem": "Verba ultrapassou o limite de lançamentos diários, verificar o cadastro da verba.",
"referencia": "1,30",
"datafalta": "20220103"
}
]
}
]
} |
|
Card |
---|
id | 400bas |
---|
label | 400 - Solicitação inválida |
---|
title | Body |
---|
| Bloco de código |
---|
language | cpp |
---|
theme | Confluence |
---|
| {
"code": 400,
"message": "Não foi enviado nenhum registro na requisição para ser gravado."
} |
|
|
04. DEMAIS INFORMAÇÕES
Não se aplica
05. ASSUNTOS RELACIONADOS
Não se aplica Configuração REST