Dados Gerais | |
Módulo: | TOTVS Automação Fiscal (SIGATAF) |
Issue: | DSERTAF1-29379 |
Descrição: | Implementar funcionalidade re-avaliar totalizadores no PO-UI |
Data |
|
Analista | Fabio Mendonça |
Atualmente, dentro do Detalhamento dos eventos periódicos e do 2299 e 2399 no Monitor QT, temos a funcionalidade Re-Avaliar totalizadores (segue print abaixo). Esta opção é utilizada em casos em que é preciso refazer a carga dos totalizadores nas tabelas de negócios quando há algum erro no relatório e identifica-se que ocorreu devido a falha na gravação das informações dos XMLs de retorno do RET.

Como o monitor QT será descontinuado, precisa-se analisar a viabilidade técnica da disponibilização dessa funcionalidade no monitor PO-UI.
Foi feita uma análise técnica da implementação atualmente em uso da funcionalidade 'Re-avaliar Totalizadores', disponibilizada dentro da rotina de Monitoramento do eSocial (TAFMONTES.PRW), mais especificamente disposta no fonte de Detalhamento de Transmissão dos Eventos do eSocial (TAFMONDET.PRW).
Não foram encontrados quaisquer ofensores que prejudiquem e/ou inviabilizem a criação de componente de interface do POUI e respectivo consumo de serviço específico para este fim. Além disso, não foi encontrado nenhum ofensor que prejudique e/ou inviabilize a criação de API que faça a recepção e tratamento de parâmetros, sirva essas informações as rotinas atualmente em uso para respectivos cálculos e forneça retorno das informações necessárias a execução da funcionalidade.
Detalhes técnicos da atual execução da rotina e implementação dos passos supracitados para a implementação da mesma no ambiente POUI do eSocial seguem detalhados nas demais seções deste documento.




Dentro da rotina de Monitoramento de Eventos do eSocial (TAFMONTES.PRW) existe a funcionamento de Detalhamento de Transmissões de Eventos do eSocial (TAFMONDET.PRW). Ao abrir-se o Detalhamento, existe a funcionalidade 'Re-avaliar Totalizadores'. Quando acionada, essa funcionalidade é processada internamente pela chamada da função 'consultaTotalizador()' que está associada na ação do botão. A função 'consultaTotalizador' recebe parâmetros de filtro e controle que, por fim, são passados para a função 'TAFProc5Tss' envolta numa chamada FWMsgRun .
Logo abaixo segue print da chamada da função supracitada que dispara a execução do processamento.

Tela Principal com todos os filtros disponíveis e Filtro de Período recolhido

Tela Principal com todos os filtros disponíveis e Filtro de Período expandido

Tela Principal com novo Menu 'Relatorios' recolhido

Tela Principal com novo Menu 'Relatorios' expandido e demonstrando os itens da pasta, a saber, 'Relatório de Conferência (INSS)', 'Relatório de Conferência (FGTS)' e 'Re-avaliar Totalizadores'.


Com o switch 'Forçar Todos ?' habilitado, todos os eventos são automaticamente habilitados.

Cada evento também poderá ser selecionado individualmente.

Se selecionado apenas um trabalhador, nada acontece, pois a solicitação de execução individual pode ser feita através do menu suspenso (botão "...").

Quando selecionado mais de um registro, aparece o botão 'Re-avaliar Totalizadores', que permite solicitar a reavaliação somente para os trabalhadores selecionados.

A API que será desenvolvida deverá seguir os padrões de desenvolvimento orientados no documento Guia de implementação de API V2.0
Quanto aos filtros, a API deverá, além de campos referentes a controle de paginação e identificação da empresa requisitante, deverá ter o mínimo de filtros alistados abaixo para atender ao funcionamento já existente no sistema:
{
"companyId": {
"name": "companyId",
"description": "Código da Empresa e Código da Filial",
"example": "T1|D MG 01",
"type": "string"
},
"branches": {
"name": "branches",
"description": "Filiais",
"example": "['D MG 01 ', 'D RJ 01 ']",
"type": "string[]"
},
"events": {
"name": "events",
"description": "Eventos",
"example": "['S-1200', 'S-1210']",
"type": "string[]"
},
"workers": {
"name": "workers",
"description": "Trabalhadores Específicos",
"example": "['75243354074', '93828161006']",
"type": "string[]"
},
"periodFrom": {
"name": "periodFrom",
"description": "Data De",
"example": "19/07/22",
"type": "string"
},
"periodTo": {
"name": "periodTo",
"description": "Data Até",
"example": "01/08/2022",
"type": "string"
},
"force": {
"name": "force",
"description": "Forçar Reavaliação",
"example": false,
"type": "boolean"
}
}