Ir para conteúdo
  • Cadastre-se

dev botao

SICREDI - Código de Geração Inválido


Ver Solução Respondido por José M. S. Junior,
  • Este tópico foi criado há 668 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Bom dia!
Após atualizar o ACBr no mês passado (por causa da NF-e 4.0) começou a ocorrer um fato no boleto do SICREDI (de uso próprio meu), e gostaria de tirar uma dúvida:
No anexo "boleto_sicredi_internetbanking" consta o boleto gerado diretamente no internet banking do SICREDI. No campo Nosso Número está "18/100134-8". Perfeito!
No anexo "boleto_sicredi_ACBratualizado" que foi gerado após recompilação do ACBr atualizado mês passado o Nosso Número está "18/200134-8", isto é, o dígito 1 foi substituído pelo 2.
O boleto do SICREDI que eu gerava antes da atualização do mês passado tinha dígito 1 nessa posição, exatamente como o gerado pelo próprio SICREDI.
Mas para isso acontecer, no meu fonte eu passava o valor "1" para a propriedade ACBrTitulo.CodigoGeracao.
Após recompilar o ACBr atualizado começou a dar um erro nessa linha: "Código de Geração Inválido".
Se eu comento essa linha no meu fonte não dá erro, porém o boleto sai com o "2" no Nosso Número (18/200134-8).
E se eu deixo ACBrTitulo.CodigoGeracao = "1", e comento lá no fonte do ACBrBoleto onde a exceção ocorre, o boleto dá certo com o dígito "1" em Nosso Número (18/100134-8), que é exatamente o que eu preciso, cf. o anexo "boleto_sicredi_alterado" (que está igual ao gerado pelo SICREDI).
A linha comentada em Acbrboleto.PAS é essa:
procedure TACBrTitulo.SetCodigoGeracao(AValue: String);
begin
  if fCodigoGeracao = AValue then
    Exit;

//  if Pos(AValue,ACBrBoleto.Banco.CodigosGeracaoAceitos) = 0 then              //comentando essa linha, e a próxima, o boleto sai com "1" no Nosso Numero.
//     raise Exception.Create( ACBrStr('Código de Geração Inválido!') );               //

  fCodigoGeracao := AValue;
end;

Mas o que não entendi ao debugar passo a passo - e perdoem minha ignorância por isso - foi o fato do AValue estar recebendo o "1" que estou passando em ACBrTitulo.CodigoGeracao (corretamente, perfeito), e como na propriedade ACBrBoleto.Banco.CodigosGeracaoAceitos consta o "1" embutido ("0123456789"), então POS não poderia ser zero.

Enfim, eu consigo contornar a situação para que me atenda comentando o fonte ACBrBoleto.PAS nas 2 linhas mostradas acima, mas gostaria de saber se não há alguma outra propriedade no componente para que eu ajuste de forma que o Nosso Número saia "18/100134-8" (com o "1" após 18/) sem ter que ficar alterando o fonte do ACBr.

(E, por curiosidade, por que no caso do SICREDI o fCodigoGeracao é carregado com valor 2 como default?)

Muito obrigado pela atenção.

Márcio.

 



 

boleto_sicredi_internetbanking.JPG

boleto_sicredi_ACBrAtualizado.JPG

boleto_sicredi_alterado.JPG

Link para o comentário
Compartilhar em outros sites

  • 3 anos depois...
  • Membros Pro

Boa Tarde!

Estou na mesma situação apresentada, uma gerente do SICREDI me passou que o nosso número deve conter o CodigoGeração "1"   porém não consigo porque a Classe do ACBr valida .. apresentado a seguinte mensagem:  Código de Geração  Inválido! 

Conforme citado pelo @José M. S. Junior já está definido como cliente emite e informado na propriedade CodigoGeracao como "1" e o erro é reportado.

 

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 668 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.