Histórico da Página
INTEGRAÇÃO
Contexto de Negócio (Introdução)
Cada vez mais o mercado exige que as operações complexas e manipulação de dados ainda mais ágeis e com custos reduzidos. Com o RH não é diferente, por isso os pagamentos pertinentes aos autônomos que foram cadastrados no EMS, precisam ser enviados para o eSocial de forma transparente para o usuário.
Frente a esta necessidade, foi criada uma interface que possibilite automatizar o envio do arquivo S-1250 para o eSocial, através de uma interface de integração.
Sistemas Envolvidos
HCM (módulo Folha de Pagamento): O módulo Folha de Pagamento visa efetuar os cálculos da folha de pagamento para os funcionários, mantendo o controle sobre os valores referentes aos eventos relativos a estes funcionários.
- EMS (módulo Recebimento): O módulo Recebimento visa agilizar e assegurar o recebimento dos materiais da empresa, possibilitando todos os controles necessários dos materiais.
Integração
O objetivo desta integração é permitir que a área do RH, recebam os arquivos S-1250 de outros sistemas especializados na área, reduzindo assim o trabalho de inclusão manual de todas as informações dentro do sistema;
- Arquitetura (Tecnologia)
- Esta integração é feita por intermédio de comunicação direta com os Web Services REST (Representation State Transfer) utilizando o formato JSON (JavaScript Object Notation) de serialização de dados.
Escopo
Por intermédio desta integração será disponibilizada a seguinte funcionalidade:
- O HCM irá receber os eventos S-1250 e o evento ficará disponível no monitor FP9850 para transmissão ao Governo.
Fora do escopo
- Eliminação de S-1250 via integração.
Pré-requisitos instalação/implantação/utilização
- Versões mínima do TOTVS/Datasul: 12.1.27
- Estrutura de rede estável, para que haja trafego de dados sem interrupção
- Datasul devidamente configurado e serviço Rest habilitado em seu server, com acesso à internet.
Processos
O Sistema requisitante enviará as informações via Json para a interface de integração, desta forma será validado as informações contidas no Json, e caso necessário, irá cadastrar o autônomo no HCM. Caso tenha êxito na geração do registro, será retornado a mesma estrutura de Json confirmando sua gravação, caso contrário enviará as informações de inconsistências 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á registro individual de cada S-1250.
- A integração não contemplará exclusão de registros no HCM, para isso o usuário deverá acessar o HCM e excluir manualmente o mesmo e seus devidos relacionamentos.
Como realizar a chamada da API REST
Para realizar a integração, é necessário as informações básicas para cadastramento do processo.
- Preenchimento do EndPoint da API ruralProductionAcquisitions;
- Utilizar a chamada do método Post e do Serviço ruralProductionAcquisitions;
- Preenchimento dos parâmetros obrigatórios da API;
Parâmetros de Entrada:
Parâmetro | Valor de Exemplo | Obrigatório | Tipo | Valor Default | Descrição |
authorization | usuario:senha | Sim | header | autenticação é importante para o funcionamento correto da API em casos de ambientes com autenticação Http Basic. | |
content | request da api | sim | body | Estrutura json com informações de cadastro do processo: Propriedades Obrigatórias: Dados do S-1250:
|
Parâmetros e Chamada do Método:
Autenticação do tipo básica.
Método POST.
{protocolo}://{host}/api/rh/v1/ruralProductionAcquisitions
Request da API
Dados utilizados da API
Propriedade API REST | CAMPO HCM | DESCRIÇÃO | Formato / Exemplo |
---|---|---|---|
companyId | cod_id_feder | CNPJ da empresa | "52045697000110" |
companyCode | cdn_empresa | Empresa para o qual pertence o S-1250 | "123" |
branchCode | cod_estab | Estabelecimento para o qual pertence o S-1250 | "1" |
perApur | Não se aplica | Período de apuração do valores contidos nos arquivos. | "201906" |
tmAmb | idi_tip_ambien | Identificação do Ambiente, informado no FP0560 | Valores Válidos: 1, 2. |
XMLMessage | Não se aplica | Xml do evento S-1250 em base 64 | "PGVTb2NpYWw+CjxldnRBcVByb2QgSUQgPSAiSUQ1NDY1NDY1NDU2NDU2NDU2NTQiPgo8aWRlRXZlbnRvPgo8aW5kUmV0aWY+MTwvaW5kUmV0aWY+CjxpbmRBcHVyYWNhbz4xPC9pbmRBcHVyYWNhbz4KPHBlckFwdXI+MjAxOS0wODwvcGVyQXB1cj4KPHRwQW1wPjE8L3RwQW1wPgo8cHJvY0VtaT4xPC9wcm9jRW1pPgo8L2lkZUV2ZW50bz4KPGlkZUVtcHJlZ2Fkb3I+Cjx0cEluc2M+MTwvdHBJbnNjPgo8bnJJbnNjPjUzMjU1Nzg3ODwvbnJJbnNjPgo8L2lkZUVtcHJlZ2Fkb3I+CjxpbmZvQXF1aXNQcm9kPgo8aWRlRXN0YWJBcXVpcj4KPHRwSW5zY0FkcT4xPC90cEluc2NBZHE+Cjxuckluc2NBZHE+NTEyMTE0NTQ1PC9uckluc2NBZHE+Cjx0cEFxdWlzPgo8aW5kQXF1aXM+MTwvaW5kQXF1aXM+Cjx2bHJUb3RBcXVpcz4yMTAwLjAwPC92bHJUb3RBcXVpcz4KPGlkZVByb2R1dG9yPgo8dHBJbnNjUHJvZD4yPC90cEluc2NQcm9kPgo8bnJJbnNjUHJvZD42NDg3ODU0NTU1PC9uckluc2NQcm9kPgo8dmxyQnJ1dG8+MTA1MC4wMDwvdmxyQnJ1dG8+Cjx2ckNQRGVzY1BSPjAuMDA8L3ZyQ1BEZXNjUFI+Cjx2clJhdERlc2NQUj4wLjAwPC92clJhdERlc2NQUj4KPHZyU2VuYXJEZXNjPjAuMDA8L3ZyU2VuYXJEZXNjPgo8L2lkZVByb2R1dG9yPgo8aWRlUHJvZHV0b3I+Cjx0cEluc2NQcm9kPjI8L3RwSW5zY1Byb2Q+Cjxuckluc2NQcm9kPjg5Nzg5NzMyMTQ0PC9uckluc2NQcm9kPgo8dmxyQnJ1dG8+MTA1MC4wMDwvdmxyQnJ1dG8+Cjx2ckNQRGVzY1BSPjAuMDA8L3ZyQ1BEZXNjUFI+Cjx2clJhdERlc2NQUj4yMS4wMDwvdnJSYXREZXNjUFI+Cjx2clNlbmFyRGVzYz4xMC41MDwvdnJTZW5hckRlc2M+CjwvaWRlUHJvZHV0b3I+CjwvdHcz4KPC9pZGVFc3RhYkFxdZm9BcXVpc1Byb2Q+CQcm9kPgo8L2VTb2NpYWw=" |
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 Datasul HCM:
Mensagens de Pré-Validação
Erro | Mensagem | Solução | API RESPONSE | |||||||||
1 | Parâmetro 'companyCode' não informado | Verificar se a propriedade json companyCode está preenchida no pacote enviado . |
| |||||||||
1 | Parâmetro 'companyCode' não é valido | Verificar se a empresa existe no HCM |
| |||||||||
1 | Parâmetro 'branchCode' não informado. | Verificar se a propriedade json 'branchCode' está preenchida |
| |||||||||
1 | Parâmetro 'branchCode' não é valido | Verificar se a propriedade do json 'branchCode' está preenchido com o valor correto. |
| |||||||||
1 | Parâmetro XMLMessage não informado | Verificar se foi informado o xml em Base 64 na propriedade XMLMessage do json |
|
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 ou não estejam de acordo com o leiaute do eSocial. 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, clientlog, log do appServer ou algo que possa identificar a origem do problema.
EMS2:
- Verificar se os parâmetros de conexão foram cadastrados corretamente no CD0387: URL, Porta, Usuário e Senha.
- Verificar se os registros referentes a aquisição da produção rural foram gerados corretamente no programa CD2020 conforme o período desejado.