Pesquisar na Comunidade
Showing results for tags 'convenio 7 digitos'.
Encontrado 1 registro
-
Erro Ao Gerar Boleto Do Banco Do Brasil Com A Carteira 11 E Convenio De 7 Digitos
um tópico no fórum postou Emerson Teixeira ACBrBoleto
Olá Boa tarde Gostaria de saber se foi implementado a carteira 11 com convenio de 7 dígitos para o banco do brasil, pois fiz alguns testes aqui e não consegui gerar o boleto de forma correta, para que isto fosse possível alterei a seguinte função. Se usar a linha comentada a linha digitável fica idêntica à de um boleto gerado pelo sistema do banco... Obrigado por enquanto... function TACBrBancoBrasil.FormataNossoNumero(const ACBrTitulo :TACBrTitulo): String; var ANossoNumero, AConvenio, wNossoNumero : String; wTamNossoNum: Integer; begin with ACBrTitulo do begin AConvenio := ACBrBoleto.Cedente.Convenio; ANossoNumero := IntToStr(StrToInt64(OnlyNumber(NossoNumero))); wNossoNumero := OnlyNumber(NossoNumero); wTamNossoNum := CalcularTamMaximoNossoNumero(Carteira,wNossoNumero); if ((ACBrTitulo.Carteira = '16') or (ACBrTitulo.Carteira = '18')) and (Length(AConvenio) = 6) and (wTamNossoNum = 17) then ANossoNumero := padR(ANossoNumero, 17, '0') else if Length(AConvenio) <= 4 then ANossoNumero := padR(AConvenio, 4, '0') + padR(ANossoNumero, 7, '0') else if (Length(AConvenio) > 4) and (Length(AConvenio) <= 6) then ANossoNumero := padR(AConvenio, 6, '0') + padR(ANossoNumero, 5, '0') else if (Length(AConvenio) = 7) and (ACBrTitulo.Carteira = '11') then ANossoNumero := padR('0', 7, '0') + padR(ANossoNumero, 10, '0') // ANossoNumero := padR(AConvenio, 7, '0') + padR(ANossoNumero, 10, '0') else if (Length(AConvenio) = 7) and ((ACBrTitulo.Carteira <> '11')) then ANossoNumero := padR(AConvenio, 7, '0') + padR(ANossoNumero, 10, '0'); end; Result := ANossoNumero; end;