Jump to content

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png click.png click.png

ACBrSPEDPisCofins - Problema com delimitador nos blocos F e 1


  • Este tópico foi criado há 1963 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Estou com um problema na geração do SPEDPisCofins, que aparentemente surgiu depois que passamos a usar os componentes do trunk2. Sem explicação, os delimitadores não aparecem somente no bloco F e bloco 1. Já olhei o delimitador no componente, e está preenchido. E o programa nem mexe com o delimitador em run-time, está pipe "|" fixo. Também procurei exaustivamente e não encontrei nenhum post mencionando o mesmo problema. Eu pensava que o delimitador era padrão para todos os registros, e não tratado individualmente por blocos. Como pode alguns blocos dar certo e outros não. O que faço? Veja trecho do arquivo abaixo: 

|C001|0|
|C010|00757523000187|2|
|C010|00757523000420|2|
|C010|00757523000772|2|
|C010|00757523000500|2|
|C010|00757523000853|2|
|C990|7|
|D001|1|
|D990|2|
F0010
F01000757523000187
F01000757523000420
F01000757523000772
F01000757523000500
F01000757523000853
F6000325012016112355,1600410107100757523000187730433370640
F9908
|M001|0|
|M200|0,00|0,00|0,00|0,00|0,00|0,00|0,00|1345,52|730,43|0,00|615,09|615,09|
|M205|12|810902|615,09|
|M210|52|39949,65|207002,77|0,6500|||1345,52|0,00|0,00|0,00|0,00|1345,52|
|M600|0,00|0,00|0,00|0,00|0,00|0,00|0,00|4716,08|3370,64|0,00|1345,44|1345,44|
|M605|12|217201|1345,44|
|M610|52|39949,65|39949,65|3,0000|||4716,08|0,00|0,00|0,00|0,00|4716,08|
|M990|8|
10010
130003012016196053196053000000000
19903
|9001|0|
|9900|0000|1|
|9900|0001|1|
|9900|0100|1|

 

Link to comment
Share on other sites

Tenho vários clientes gerando, e nenhum está com problema, e uso os fontes do Trunk2 desde inicio.

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

Link to comment
Share on other sites

17 horas atrás, Isaque Pinheiro disse:

Tenho vários clientes gerando, e nenhum está com problema, e uso os fontes do Trunk2 desde inicio.

Ok, Eu imaginei que realmente os outros usuários não enfrentaram esse problema, porque procurei outros posts e não encontrei nada. Mas, você viu o trecho do arquivo que enviei. O problema está acontecendo, e eu nem imagino o que possa ser, porque o delimitador aparece corretamente em alguns blocos e em outros não. Existe algo que eu possa fazer, alguma hipótese que explique o motivo de estar acontecendo isso? Tenho que baixar uma versão nova do trunk2 e ver se resolve? Obrigado pela atenção.

Link to comment
Share on other sites

  • Consultores
Em 16/04/2016 at 11:07, Eduardo Arantes disse:

Ok, Eu imaginei que realmente os outros usuários não enfrentaram esse problema, porque procurei outros posts e não encontrei nada. Mas, você viu o trecho do arquivo que enviei. O problema está acontecendo, e eu nem imagino o que possa ser, porque o delimitador aparece corretamente em alguns blocos e em outros não. Existe algo que eu possa fazer, alguma hipótese que explique o motivo de estar acontecendo isso? Tenho que baixar uma versão nova do trunk2 e ver se resolve? Obrigado pela atenção.

Se não me engano, cada classe bloco tem a propriedade demilitador.

Talvez ela esteja sendo alterada ou não esteja sendo alterada durante a geração. Faça debug do componente e verifique a sua geração.

[]'s

Consultor SAC ACBr

Elton
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link to comment
Share on other sites

  • 2 weeks later...
Em 18/04/2016 at 11:14, EMBarbosa disse:

Se não me engano, cada classe bloco tem a propriedade demilitador.

Talvez ela esteja sendo alterada ou não esteja sendo alterada durante a geração. Faça debug do componente e verifique a sua geração.

Obrigado, EMBarbosa.

Eu resolvi o problema há alguns dias. Fiz o debug acompanhando a variável delimitador com um watch e localizei os 2 pontos do componente onde estava perdendo o conteúdo. Nesses pontos eu inseri uma linha movendo novamente o pipe para o delimitador e recompilei o ACBrSPED.dpk.  Funcionou, e o cliente conseguiu gerar o arquivo sem problemas. Mas acho que vou ter que manter anotação dos pontos do erro para o caso de voltar a acontecer depois de baixar novas versões. Achei estranho que ninguém mais reportou esse erro. 

Link to comment
Share on other sites

poderia anexar os fontes alterados, para que eu possa analisa-lo e se estiver de acordo, subirei para o svn. 

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

Link to comment
Share on other sites

Em 26/04/2016 at 11:34, Isaque Pinheiro disse:

poderia anexar os fontes alterados, para que eu possa analisa-lo e se estiver de acordo, subirei para o svn. 

Desculpe pela demora na resposta, Isaque. Em anexo os dois arquivos que alterei e o ponto exato em que perdia o conteúdo do delimitador (de repente) simplesmente ao entrar nas procedures. Não tenho muito conhecimento para mexer em componentes, mas inseri as linhas logo na entrada das duas procedures e o erro parou de acontecer: 


Arquivo ACBrEPCBLOCO_F_CLASS.Pas

procedure TBloco_F.WriteRegistroF001;


Arquivo ACBrEPCBLOCO_1_CLASS.Pas

procedure TBloco_1.WriteRegistro1001;


Os dois arquivos estão em anexo. 

Obrigado.

ACBrEPCBloco_F_Class.pas

ACBrEPCBloco_1_Class.pas

Edited by Eduardo Arantes
Link to comment
Share on other sites

  • Consultores

Boa noite!

não acho necessário essa implementação! é necessário descobrir o que está ocorrendo para que seu código tenha a perca desse delimitador!

 

Consultor SAC ACBr Juliomar Marchetti
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

skype: juliomar
telegram: juliomar
http://www.juliomarmarchetti.com.br
Embarcadero MVP
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil
Link to comment
Share on other sites

Como o Juliomar informou tb não vi necessidade dessa implementação até mesmo porque fiz o teste no Demo do ACBr e gerou 100%

O erro está no seu código, pois não existe registro F0010, o correto é F010 ou F001, nem registro F0100 o correto é F100, faça o teste no Demo e verá.

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

Link to comment
Share on other sites

8 horas atrás, Isaque Pinheiro disse:

Como o Juliomar informou tb não vi necessidade dessa implementação até mesmo porque fiz o teste no Demo do ACBr e gerou 100%

O erro está no seu código, pois não existe registro F0010, o correto é F010 ou F001, nem registro F0100 o correto é F100, faça o teste no Demo e verá.

Olá, Isaque. Não existe registro F0010 e F0100. Eles ficaram assim por falta do delimitador. Na verdade são os registros F001 e F010. Veja abaixo:

Geração sem delimitador:
F0010
F01000757523000187
F01000757523000420

Geração corrigida:
|F001|0|
|F010|00757523000187|
|F010|00757523000420|

Concordo que não deve alterar, se não está dando erro para mais ninguém. Apenas informei porque aconteceu comigo e você pediu para anexar os fontes alterados. Fica registrado para o caso de acontecer com outra pessoa. Creio que não é erro no meu código, porque apenas alimento os campos do componente e depois disparo o comando abaixo, que também é do componente, e ele faz toda a geração do txt:

ACBrSPEDPisCofins1.SaveFileTXT;

Se vocês reproduziram o debug e nos pontos que eu marquei não perdeu o delimitador, então eu não tenho explicação, porque no meu debug eu vi o conteúdo do delimitador sumindo e a minha versão do componente é a original baixada, não tinha alterações até agora. De qualquer forma, obrigado pela atenção e disponibilidade. E parabéns pelo ACBr. Sem ele teríamos problemas infinitamente maiores.
 

Link to comment
Share on other sites

  • Este tópico foi criado há 1963 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.