Á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-30635

Descrição:

Impressão do Formulário da CAT via POUI

Data

 

Analista

Fabio Mendonça

1.

...

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.

Image Removed

2. JSPDF

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.

...

MODELO CAT

Image Added

Image Added

https://www.in.gov.br/en/web/dou/-/portaria-seprt/me-n-4.334-de-15-de-abril-de-2021-314637705


2. ARTEFATOS GERADOS

2.1. MOCK ESTRUTURADO DAS 50 INFORMAÇÕES QUE COMPÕE O FORMULÁRIO DA CAT

{
      dadosIdentificao: {
        emitente: 'Tomador de serviço avulso ou órgão gesto de mão de obra',
        tipoCat: 'Comunicação de óbito',
        iniciativaCat: 'Determinação de órgão fiscalizador',
        fonteCadastramento: 'eSocial',
        numeroCat: '1.8763456776543234567',
        numeroReciboCatOrigem: '9.2345678876543456'
      },

      emitente: {
        empregador: {
          razaoSocial: 'TOTVS SA',
          tipo: 'CNPJ',
          numeroInscricao: '44.478.731/0001-12',
          cnae: '6201-5/01'
        },
        acidentado: {
          nome: 'Fabio Santos de Mendonça',
          cpf: '956.332.480-31',
          dataNascimento: '01/01/1989',
          sexo: 'Masculino',
          estadoCivil: 'Casado',
          cbo: '2124-05',
          filiacaoPrevidencia: 'Empregado doméstico',
          areas: 'Urbana'
        },
        acidenteDoenca: {
          dataAcidente: '16/08/2022',
          horaAcidente: '15:17',
          aposQuantasHorasDeTrabalho: '4:17',
          tipo: 'Trajeto',
          houveAfastamento: 'Sim',
          ultimoDiaTrabalhado: '16/08/2022',
          localAcidente: 'Rampa de acesso',
          especificacaoLocalAcidente: 'Borda superior',
          cnpjCaepfCnoDoLocalAcidente: '44.478.731/0001-12',
          uf: 'São Paulo',
          municipioLocalAcidente: 'São Paulo',
          pais: 'Brasil',
          parteCorpoAtingida: 'CRANIO (INCLUSIVE ENCEFALO)',
          agenteCausador: 'RUA E ESTRADA - SUPERFÍCIE UTILIZADA PARA SUSTENTAR AS PESSOAS',
          lateralidade: 'Esquerda',
          descricaoSituacaoGeradora: 'Colisão frontal com veículo sendo dirigido de forma perigosa em direção oposta a permitida na via',
          houveRegistroPolicial: 'Sim',
          houveMorte: 'Sim',
          dataObito: '16/08/2022',
          observacoes: 'Morreu mas passa bem',
          dataRecebimento: '17/08/2022'
        }
      },

      informacoesAtestaoMedico: {
        atendimento: {
          data: '16/08/2022',
          hora: '17:42',
          houveInternacao: 'Sim',
          provavelDuracaoTratamento: '8',
          deveraAfastarseDoTrabalho: 'Sim'
        },
        lesao: {
          descricaoLesao: 'Fratura no lado superior esquerdo do crânio'
        },
        diagnostico: {
          diagnosticoProvavel: 'Traumatismo craniano',
          cid10: 'S06.3',
          localEdata: 'São Paulo, dezesseis de agosto de dois mil e vinte e dois',
          nomeCrmEufMedicao: 'Marcelo Bezerra Silva, CRM 998892 SP',
          observacoes: 'Necessário acompanhamento psicológico e fisioterápico'
        }
      }
    }


2.2. BRANCH COM IMPLEMENTAÇÃO MOCKADA DO MAKEPDF

esocial/sprint-HojeNaoFaro/DSERTAF1-30635/pdfMake


2.3. BRANCH COM IMPLEMENTAÇÃO MOCKADA DO JSPDF

esocial/sprint-HojeNaoFaro/DSERTAF1-30635/jsPDF


3. BIBLIOTECAS JAVASCRIPT

3.1. PDFMAKE 

3.1.1. Sobre (15/08/2022)

Image Added

Home Page: http://pdfmake.org/#/

Documentação: https://pdfmake.github.io/docs/

Exemplo de uso: https://www.ngdevelop.tech/angular-8-export-to-pdf-using-pdfmake/


3.1.2.1. Prós

  • Indicação do Danilo Salvez, sendo usada desde início de 2021 em Projetos do CRM & Faturamento;
  • Depoimento do time do CRM & Faturamento de que biblioteca tem atendido a bem a necessidade deles desde a primeira utilização;
  • Devido a utilização de matriz simples (similar ao uso de tabela, inclusive com propriedade 'colSpan') para posicionamento dos recursos na área de impressão, abstrai bastante a complexidade do posicionamento em tela;
  • Abstração de complexidade de quebras de linhas para textos e quebras de páginas;
  • Mínimo suficientemente necessário para atender a demanda com sucesso, similar a uma biblioteca fornecida pelo POUI se esta existisse.


3.1.2.2. Contras

  • Números menores do que a biblioteca jsPDF em relação a comunidade, forks e projetos usados;
  • Pouca flexibilidade em relação a disposição dos elementos em tela (verificação minuciosa da documentação talvez resolva os poucos casos em que isso acontece).


3.1.3. DEMO

3.1.3.1. MODELO USANDO BIBLIOTECA

Image Added

Image Added

https://www.dropbox.com/s/ivx1y3zekordria/example_table_makepdf.pdf?dl=0


3.1.3.2. DENTRO DO PROTHEUS

Integração da biblioteca com a API do Windows chamando a tela padrão de escolha de local para baixar os arquivos pdf.

Image Added


Image Added


Gerenciador de downloads em painel suspenso informando o usuário do progresso do download no local anteriormente selecionado.

Image Added


Image Added



3.2. JSPDF

3.2.1. Sobre (18/08/2022)


Image Added


Home Page: https://parall.ax/products/jspdf

Documentação: http://raw.githack.com/MrRio/jsPDF/master/docs/index.html

GIT: https://github.com/parallax/jsPDF


Exemplo de uso: https://medium.com/ekode/gerando-pdf-no-angular-com-jspdf-99ab94df7870


3.2.2.1. Prós

  • Indicação do Bruno Romero, do time de FrameWork;
  • Melhor integração ao VS CODE, com autocomplete das funcionalidades da biblioteca, o que facilita o desenvolvimento;
  • Devido a utilização de posicionamento por pixel dentro da área de impressão, consegue-se alta precisão no posicionamento de elementos, sendo necessário informar as coordenadas de cada item em tela, tanto dos retângulos quanto dos títulos e textos que abrigarão cada campo do formulário da CAT;
  • Boa para elaboração de abstrações que disponibilize para o cliente funções que o atendam encapsulando a complexidade.


3.2.2.2. Contras

  • O posicionamento por pixel onera o tempo de desenvolvimento e complexidade;
  • Muita funcionalidade documentada, porém sem exemplo de uso;
  • Quebra de textos e de páginas verbosa e a cargo do desenvolvedor, exigindo elaboração de cálculo e combinação de funções da biblioteca;


3.2.3. DEMO

3.2.3.1. MODELO USANDO BIBLIOTECA

Image Added

Image Added

Image Added

https://www.dropbox.com/s/e0pxinz9dbxw2ag/example_jspdf.pdf?dl=0


3.2.3.2. DENTRO DO PROTHEUS

Integração da biblioteca com a API do Windows chamando a tela padrão de escolha de local para baixar os arquivos pdf.

Image Added


Image Added


Gerenciador de downloads em painel suspenso informando o usuário do progresso do download no local anteriormente selecionado.

Image Added


Image Added


4. REFINAMENTOS  A FAZER 

  • O Modelo de Formulário atualmente no épico da issue da CAT é o presente nos anexos da instrução normativa do governo (https://www.in.gov.br/en/web/dou/-/portaria-seprt/me-n-4.334-de-15-de-abril-de-2021-314637705). É pra ser feita exatamente igual ao modelo ? 
    • MOTIVO DA PERGUNTA: A disposição dos campos nem sempre está adequada. ex.: Campos pequenos ocupando uma linha inteira (campos da seção DADOS DE IDENTIFICAÇÃO) e campos com grande conteúdo em espaços pequenos (campo 49 - NOME DO MÉDICO, CRM E UF);


  • Será criado método no backend que traga as informações que faltam para preenchimento do formulário da CAT ou será ajustado método atual ?
    • MOTIVO DA PERGUNTA: Atualmente a API da CAT possui um método GET chamado catValues que traz 14 campos; o formulário da CAT segundo a Instrução Normativa dispõe de 50 campos;