Árvore de páginas

Versões comparadas

Chave

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

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

...

1. Demanda

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.

2. Parecer

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).

...

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.

3. Especificação de Comportamentos Atual

  • 3.1 REAVALIAÇÃO POR EVENTO
    • Acontece quando se seleciona registros dos browses de 'Eventos de Tabelas / Eventos sem Relação com Trabalhador' e 'Eventos Periódicos e Não Periódicos'. Afetará a todos os trabalhadores dos eventos selecionados



  • 3.2 REAVALIAÇÃO POR FUNCIONÁRIO
    • Acontece quando se seleciona registros do browse de 'Trabalhador Com e Sem Vínculo (S-2200/S-2300)'. Afetará a todos os trabalhadores selecionados no browse.


 


  • 3.3 FILTROS IMPLÍCITOS E EXPLÍCITOS
    • Filiais
    • Eventos
    • Trabalhador Específico
    • Data De
    • Data Ate
    • Forçar Re-avaliação


4. Especificação de Funcionamento Técnico Atual

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.


5. Proposta de Implementação via Paineis do Esocial POUI

5.1 FRONTEND

5.1.1 REAVALIAÇÃO COM FILTROS COMPLETOS

5.1.1.1 PROPOSTA COLOCAÇÃO COMO UMA DAS OPÇÕES PRINCIPAIS NO MENU LATERAL

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

Image RemovedImage Added


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

Image Removed

Image Added


5.1.1.2 PROPOSTA REORGANIZAÇÃO ATUAL DE RELATORIOS E COLOCAÇÃO COMO OPÇÃO DO NOVO SUBMENU 'RELATORIOS'

Tela Principal com novo Menu 'Relatorios' recolhido

Image RemovedImage Added

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'.

Image RemovedImage Added


5.1.2 REAVALIAÇÃO COM FILTRO NO USUÁRIO SELECIONADO

5.1.2.1 SOLICITAÇÃO DE EXECUÇÃO INDIVIDUAL


5.1.2.1.1 PROPOSTA TELA DE PARAMETRIZAÇÃO DA REAVALIAÇÃO COM FILTRO EM USUÁRIOS SELECIONADOS

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

Image Added

Cada evento também poderá ser selecionado individualmente.

Image Added


5.1.2.1.2 SOLICITAÇÃO DE EXECUÇÃO COM MAIS DE UM INDIVÍDUO SELECIONADO NO DETALHAMENTO

Se 

...

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 "...").

Image Added

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

Image Added


5.2 BACKEND

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, conforme jsons das próximas seções:

5.2.1 PROPOSTA DE REQUISIÇÃO

{
    "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"
    }
}

5.2.2 PROPOSTA DE RETORNO

{
    "items": {
        "finished": {
            "name": "finished",
            "description": "Finalizado",
            "example": "true",
            "type": "boolean",
            "maxLength": 10
        },
        "percent": {
            "name": "percent",
            "description": "Percentual",
            "example": "100%",
            "type": "string",
            "maxLength": 20
        }
    
    },
    "hasNext": {
        "type": "boolean",
        "example": false
    }
}