Cada vez mais o mercado exige que as operações complexas e manipulação de dados sejam ainda mais ágeis e intuitivas. Neste contexto, surgiu a necessidade da criação de uma interface que possibilite automatizar o envio dos dados das empresas para o governo,de forma rápida, clara e sem que o cliente necessite adquirir outro módulo do sistema. Desta forma, o desenvolvimento de um Monitor de Eventos foi necessário e todas as informações que trafegam entre ele e o governo são realizadas através de uma interface de integração.
O objetivo desta integração é permitir que o TAF, através do Monitor THF, consiga listar as filiais cadastradas pelo usuário no Protheus.
Por intermédio desta integração será disponibilizada a seguinte funcionalidade:

Fora do escopo
Por padrão esta integração estará em repositório, porém demanda realizar a devida configuração conforme abaixo:
Exige que os seguintes pontos sejam revisados:
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 áreas antes do início do desenvolvimento e somente serão desenvolvidas em caso de concordância das áreas e alinhamento com as diretivas definidas pelo contrato de Integração.
O suporte aos recursos da Integração será de responsabilidade da linha MicroSiga Protheus, onde será analisada pela equipe de suporte da TOTVS.
Esta integração traz a funcionalidade exclusivamente de cadastro de Filiais.
Esta integração contempla apenas a consulta e envio dos dados de cadastro de Filiais.
O TAF, através do Monitor THF, realizará o consumo da API com dados básicos que serão utilizados como parâmetros para consultar a base de filiais e retornar um conjunto de informações pertinentes ao Cadastro de Filiais(SM0) e retornar os dados para o requisitante.
Para realizar a integração com o parceiro TOTVS é necessário as informações básicas de consulta para retorno dos funcionários desejados.
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 | Tipo | Parâmetro | Valor Default | Descrição |
| page | 1 | Sim | Integer | query | 1 | Página que está sendo requisitada. |
| pageSize | 10 | Sim | Integer | query | 15 | Quantidade de registros por página. |
| companyId | T2|L MG 01 | Sim | String | query | Grupo | Empresa e Filial que o ambiente será iniciado. |
Parâmetros e Chamada do Método:

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 com o serviço API Rest, a requisição deverá ser semelhante a imagem abaixo:
Estrutura: { protocolo } : // { endereço servidor Rest } : { Porta Rest } / rest / api / rh / { versão } / EsocialBranches /
Exemplo: http://localhost:8060/rest/api/rh/esocial/v1/EsocialBranches/
Response da API:
{
"items": [
{
"branchCode": "L MG 01",
"branchDescription": "UNIDADE BELO HORIZONTE"
},
{
"branchCode": "L MG 02",
"branchDescription": "UNIDADE UBERABA"
},
{
"branchCode": "R SP 01",
"branchDescription": "UNIDADE SÃO PAULO"
},
{
"branchCode": "R SP 02",
"branchDescription": "UNIDADE CAMPINAS"
}
],
"hasNext": false
} |
Dados utilizados da API
Por ser uma estrutura única para todos os produtos, há dados que existem em um produto (RM) e não existe no Protheus, desta forma, cada produto utilizará os campos pertinentes aos seus ambientes.
| PROPRIEDADES API REST | DESCRIÇÃO |
|---|---|
branchCode | Empresa, Unidade de negócio e Filial |
branchDescription | Descrição da Filial |
Nos 2 retornos as informações são obtidas da tabela SM0.
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
CÓDIGO DO ERRO | MENSAGEM | SOLUÇÃO | RETORNO DA API | |
400 | Grupo, Empresa e Filial logada não foram informados no parâmetro 'companyId'. | Realizar o preenchimento do parâmetro companyId. |
| |
| 400 | Falha na preparação do ambiente para a Empresa 'T2' e Filial 'D MG 01'. | Rever os valores preenchidos no parâmetro companyId. |
|
Itens a serem verificados durante o atendimento: