Ir para conteúdo
  • Cadastre-se

dev botao

ACBrSPEDPisCofins - Problema com delimitador nos blocos F e 1


  • Este tópico foi criado há 2886 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 para o comentário
Compartilhar em outros 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 para o comentário
Compartilhar em outros 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 para o comentário
Compartilhar em outros 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
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

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 para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
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 para o comentário
Compartilhar em outros 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 para o comentário
Compartilhar em outros 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

Editado por Eduardo Arantes
Link para o comentário
Compartilhar em outros sites

  • Moderadores

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
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros 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 para o comentário
Compartilhar em outros 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 para o comentário
Compartilhar em outros sites

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.