Ir para conteúdo
  • Cadastre-se

dev botao

Boleto Correção Fontes Banco do Brasil


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

Recommended Posts

  • Membros Pro

Boa tarde !

Anexo fonte com as correções do banco do brasil 

Abaixo demonstrado o que foi corrigido.  A cada alteração está demonstrado a data e meu nome .

|* 0.0.2 - 23/06/2015: Daniel Esperendi Junior - Alterações para leitura correta do Retorno
|*  [*] Incluido na procedure CalcularTamMaximoNossoNumero opção para calculo
        Carteira 17 com 17 digitos Convênio 7 posições;
*   [*] LerRetorno400Pos7 alterados as seguintes posições:
        1) Vencimento Copy(Linha,147,6) <> '000000' tratado devido o cliente poder
           pagar o título antes do envio da remessa;
        2) Carteira := Copy(Linha,107,2) Alterado a Ordem da Variável, ficando acima
           do NossoNumero para não dar erro na validação da func CalcularTamMaximoNossoNumero;

Aos Moderadores:

Por favor comentar assim que for dado update ...

Obrigado

 

ACBrBancoBrasil.pas

Link para o comentário
Compartilhar em outros sites

  • Administradores

Boa noite.

Favor anexar o manual utilizado como base para as alterações.

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • Administradores

Boa tarde.

Solicitei o manual devido a seguinte alteração:

*  [*] Incluido na procedure CalcularTamMaximoNossoNumero opção para calculo
        Carteira 17 com 17 digitos Convênio 7 posições;

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

Boa tarde,

 

Atualizei os fontes do ACBRBoleto, me parece teve uma mudança na formatação do nosso numero do banco do  brasil, tenho um convenio de 6 dígitos sem registros, antes de atualizar os fontes o ACBR gerar o nosso numero com formatação convênio + mais número sequencial gerado pelo sistema alimentando o Nosso Numero, depois que atualizou o nosso numero só está recebendo o numero informado por mim ao componente, olhando o manual de particularidade da carteira 240 do BB  segue o trecho do segmento P.

Para número de convênio de 6 posições (de 10.000 a 999.999), informar o nosso número com 11 posições mais o DV, sendo as 6 primeiras posições o número do convênio, as 5 posições seguintes um número sequencial para controle e mais o DV. Exemplo: CONVÊNIOS DE 010.000 ATÉ 999.999 123456123451 CCCCCCSSSSSD Onde: C = Convênio S = Sequencial D = dígito verificador

 http://www.bb.com.br/docs/pub/emp/empl/dwn/CbrVer04BB.pdf

Analisando melhor percebi que na procedure  ACBrTitulo.SetNossoNumero  ele está adicionando 0 a esquerda no nosso numero fazendo que ele fique com tamanho  de 11.

 fNossoNumero := padR(wNossoNumero,wTamNossoNumero,'0'); //comentei esse trecho para  fNossoNumero  :=wNossoNumero; ai funcionou como era antes.

Antes de atualizar era assim 26637005151-9  agora depois que atualizou 00000000000005151, ele está gerando com 17 posições o tamanho do nosso numero.

atenciosamente.

 

Editado por lucasjrnany
Acrescentar mais informações

Francisco Junior

Programador - Delphi

SCV - SIstemas

http://www.scvsistemas.com.br

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Lucas boa noite !

Antes de passar as alterações me informei junto ao pessoal do Banco do Brasil agência de Mirassol-SP sobre o assunto, onde me informaram que existem diversos tratamento de carteira, convênio e variação de carteira, no entanto, consegui validar e corrigir algumas que tenho acesso (cnab 400). Todavia poderá aparecer algumas inconsistência, existem várias carteiras com convênio  6 posições, você precisa me passar a Carteira e a Variação para que eu possa efetuar o tratamento correto. Como pode observar abaixo existe uma gama de carteira independente do convênio. Aguardo para analisar o fonte e fazer as correções necessárias.

001 - BANCO DO BRASIL SA
11 - Cobrança Simples - Com Registro
11-4 - Cobrança Simples - C/Registro Convênio 4 dígitos
12 - Cobrança Indexada - Com Registro
12-4 - Cobrança Indexada - C/Registro Convênio 4 dígitos
12-7 - Cobrança Indexada - C/Registro Convênio 7 dígitos
15 - Cobrança de Prêmios de Seguro - Com Registro
15-4 - Cob.Prêmios Seguro - C/Registro Convênio 4 dígitos
16 - Cobranca Simples
16-17 - Cobranca Simples - Nosso Número 17 Dígitos
16-4 - Cobranca Simples - Convênio 4 dígitos
17 - Cobranca Direta Especial - Com Registro
17-4 - Cob. Direta Esp. - C/Registro Convênio 4 dígitos
17-7 - Cob. Direta Esp. - C/Registro Convênio 7 dígitos
18 - Cobranca Simples - Nosso Número 11 Dígitos
18-17 - Cobranca Simples - Nosso Número 17 Dígitos
18-4 - Cobranca Simples - Convênio 4 dígitos
18-7 - Cobranca Simples - Convênio 7 dígitos
31 - Cobrança Caucionada/Vinculada - Com Registro
31-4 - Cob.Cauc./Vinc. - C/Registro Convênio 4 dígitos
51 - Cobrança Descontada - Com Registro
51-4 - Cob. Descontada - C/Registro Convênio 4 dígitos

 

 

Juliana, boa noite !

A resposta acima acho que mostra o porque da solicitação da linha abaixo:

  [*] Incluido na procedure CalcularTamMaximoNossoNumero opção para calculo
        Carteira 17 com 17 digitos Convênio 7 posições;

Qualquer dúvida estou a disposição para discutirmos mais sobre o assunto..

 

 

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

Lucas boa noite !

Antes de passar as alterações me informei junto ao pessoal do Banco do Brasil agência de Mirassol-SP sobre o assunto, onde me informaram que existem diversos tratamento de carteira, convênio e variação de carteira, no entanto, consegui validar e corrigir algumas que tenho acesso (cnab 400). Todavia poderá aparecer algumas inconsistência, existem várias carteiras com convênio  6 posições, você precisa me passar a Carteira e a Variação para que eu possa efetuar o tratamento correto. Como pode observar abaixo existe uma gama de carteira independente do convênio. Aguardo para analisar o fonte e fazer as correções necessárias.

001 - BANCO DO BRASIL SA
11 - Cobrança Simples - Com Registro
11-4 - Cobrança Simples - C/Registro Convênio 4 dígitos
12 - Cobrança Indexada - Com Registro
12-4 - Cobrança Indexada - C/Registro Convênio 4 dígitos
12-7 - Cobrança Indexada - C/Registro Convênio 7 dígitos
15 - Cobrança de Prêmios de Seguro - Com Registro
15-4 - Cob.Prêmios Seguro - C/Registro Convênio 4 dígitos
16 - Cobranca Simples
16-17 - Cobranca Simples - Nosso Número 17 Dígitos
16-4 - Cobranca Simples - Convênio 4 dígitos
17 - Cobranca Direta Especial - Com Registro
17-4 - Cob. Direta Esp. - C/Registro Convênio 4 dígitos
17-7 - Cob. Direta Esp. - C/Registro Convênio 7 dígitos
18 - Cobranca Simples - Nosso Número 11 Dígitos
18-17 - Cobranca Simples - Nosso Número 17 Dígitos
18-4 - Cobranca Simples - Convênio 4 dígitos
18-7 - Cobranca Simples - Convênio 7 dígitos
31 - Cobrança Caucionada/Vinculada - Com Registro
31-4 - Cob.Cauc./Vinc. - C/Registro Convênio 4 dígitos
51 - Cobrança Descontada - Com Registro
51-4 - Cob. Descontada - C/Registro Convênio 4 dígitos

 

 

Juliana, boa noite !

A resposta acima acho que mostra o porque da solicitação da linha abaixo:

  [*] Incluido na procedure CalcularTamMaximoNossoNumero opção para calculo
        Carteira 17 com 17 digitos Convênio 7 posições;

Qualquer dúvida estou a disposição para discutirmos mais sobre o assunto..

 

 

Boa Noite,

Desculpe esqueci de informar a carteira, tenho clientes rodando nessa antiga formação e foram homologando pelo banco com CNAB240.

18 - Cobranca Simples - Nosso Número 11 Dígitos com varição de 019

 

Atenciosamente.

Francisco Junior

Programador - Delphi

SCV - SIstemas

http://www.scvsistemas.com.br

Link para o comentário
Compartilhar em outros sites

  • Administradores

Bom dia Daniel.

Seus comentários realmente justificam suas alterações, porém para validar as mesmas precisamos também dos manuais.

 

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • Administradores

Boa noite.

Como você está passando o nosso número ao componente?

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

Bom dia,

 

Juliana o que está acontecendo na unit ACBrBoleto tem a procedure SetNossoNumero, na primeira verificação ele checa o tamanho nosso numero, que é carteira 18 com tamanho de convênio 6 posições, e nosso número com 11 posições.

Estou passando o nosso número 5151 quando passa a primeira vez nessa procedure ele está convertendo esse numero 00000005151, depois quando ele passa novamente ele está pegando 11 do nosso número + 6 do convênio, transformando esse nosso número para 17 posições, ficando assim 00000000000005151.

Atenciosamente.

Francisco Junior

Programador - Delphi

SCV - SIstemas

http://www.scvsistemas.com.br

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Juliana, bom dia !
Posso fazer a alteração do Lucas e te passar junto com as demais alterações  que já fiz ?

Pois o Banco do Brasil e bastante complexo o tratamento de carteira / variação e convênio e como já estou estudando o assunto e tenho contato junto ao Banco do Brasil   poderei dar continuidade ...

Analisado o Lucas tem razão na solicitação dele , realmente não está tratado o caso dele, antes não dava problema porque não tinha a gama de carteiras que o programa vem "ganhando".

Aguardo seu parecer , daí testo com ele mais esta carteira...

 

Link para o comentário
Compartilhar em outros sites

  • Administradores

Boa noite Daniel.

Novas contribuições são sempre bem vindas, se você já está estudando as demais carteiras melhor ainda...só é importante lembrar de manter a compatibilidade para todas as carteiras.

Após realizar as alterações você pode anexar aqui a unit alterada.

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...

Somente ressaltando a alteração do primeiro post passado por daniel_mirassol.

No código tem essa validação:

function TACBrBancoBrasil.CalcularTamMaximoNossoNumero( const Carteira: String; NossoNumero : String = ''): Integer;

   if (Carteira = '') then
      raise Exception.Create(ACBrStr('Banco do Brasil requer que a carteira seja '+
                                     'informada antes do Nosso Número.'));

No entanto no carregamento está invertido:

procedure TACBrBancoBrasil.LerRetorno400Pos6(ARetorno: TStringList);

         NossoNumero          := Copy(Linha,63,11);

         Carteira             := Copy(Linha,107,2);
 

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

  • Membros Pro

Bom dia RlMariz

Tem como mandar mais informações  sobre o assunto , analisando o Layout do banco não achei o problema de inversão conforme comentado, anexo imagem do layout....CarteiraBB.thumb.JPG.1ef2ae3fbebbbab01eaBBCarteira.thumb.JPG.0c70239cbf99335fdb4

qualquer coisa estou a disposição para maiores esclarecimentos,

Abraços.;

Daniel 

Key_Press.exe

Link para o comentário
Compartilhar em outros sites

Boa tarde, gostaria da ajuda dos senhores a respeito da leitura do arquivo de retorno do banco Brasil, minha duvida é a seguinte, tenho o boletos já homologados a bastante tempo, meus clientes sempre gerou os mesmo e depois importava o arquivo de retorno sem problemas, porém um novo cliente agora, começou a gerar os boletos, com remessa, ai quando foi importar o arquivo contendo o retorno de vários boletos, alguns recebeu o retorno correto, dando a baixa no sistema já outros boletos não foram baixados, tendo como retorno a seguinte mensagem, "63 - DV do nosso numero invalido" ! pra mim o mais estranho é o fato de dentro do mesmo arquivo de retorno alguns boletos ser lidos da forma correta já outros não ! o cliente esta utilizando a , carteira simples com registro 1719. Gerando o boletos e depois a remessa ...

o que pode estar causando isso ?

Link para o comentário
Compartilhar em outros sites

  • Administradores
2.2 - Permaneça no assunto - Quando tiver uma dúvida diferente do assunto no tópico, poste em novo tópico. Não use algo equivalente a "aproveitando o gancho... [dúvida não relacionada com o tópico aqui]". Favor leia as regras do fórum.
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link para o comentário
Compartilhar em outros sites

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