orochasamuel / fiscalbr-net

Para facilitar seu dia a dia como desenvolvedor \o/
MIT License
91 stars 48 forks source link

[DÚVIDA] Evento "AoProcessarLinha" #118

Closed davi-barboza closed 7 months ago

davi-barboza commented 7 months ago

Evento não dispara Ao tentar utilizar o evento "AoProcessarLinha" juntamente com outro metodo percebi que ele não é disparado em nenhum momento, ele só é chamado no metodo "AoProcessarLinhaRaise" e este não é chamado em nenhum outro lugar.

Dúvida Cheguei nessa dúvida durante uma busca em remover os pipes( | ) das strings após as atribuições de todos os blocos. Gostaria de saber exatamente qual a finalidade desse evento, talvez nem sirva para o que estou fazendo mas me gerou essa dúvida.

Screenshots image

Ambiente

Possível Feature Seria interessante se a biblioteca removesse todos os pipes das strings automaticamente, visto que ele é um separador de registros do sped.

marcosgerene commented 7 months ago

@davi-barboza

O evento ao processar linha foi criado por mim. Uso ele na leitura do arquivo.

image

Aqui eu uso para saber qual linha estou lendo no momento para gerar uma espécie de "barra de progresso" na leitura de arquivos grandes.

@orochasamuel não se trata de um bug.

Edit:

Possível melhoria para este caso: https://github.com/orochasamuel/fiscalbr-net/pull/120/commits/f9630042f9a7d455969c9d5c1af4d3fd671b2fff

Sobre sua proposta de melhoria: O projeto gera o sped de duas formas:

  1. Você manualmente gera suas linhas usando o método "EscreverCampos()". Neste caso você vai ter o texto gerado e basta alterar o que quiser.
  2. Você preenche os objetos e manda gerar as linhas pelo método "GerarLinhas()". Neste caso teria que criar um evento no método "EscreverLinha()" permitindo interceptar o texto antes de ir para a List Linhas. Ex: image

Edit 2:

Acredito que isso resolva o seu problema (não testei): https://github.com/orochasamuel/fiscalbr-net/pull/120/commits/000915d222d4ae053486f9cc2b239377eb0ddde2