Olá.
Atualmente o PDF do Boleto do "Banco do Brasil (CNAB)" mostra o número da agencia e da conta no campo "Agencia/Codigo do Beneficiário", ambos com o dígito verificador. Porém quando o Boleto é do Tipo "Banco do Brasil API" não mostra os dígitos.
Estamos homologando um cliente novo, e o gerente da conta solicitou que os dígidos verificadores aparecessem no boleto. Fizemos um teste alterando a função TACBrBancoBrasil.MontarCampoCodigoCedente. Testamos a impressão, o envio via API, a leitura do código dentro de um aplicativo de banco, e tudo funcionou corretamente.
Gostaria que analisassem uma possível modificação.
Como está atualmente no ACBr
function TACBrBancoBrasil.MontarCampoCodigoCedente (
const ACBrTitulo: TACBrTitulo ) : String;
begin
if(ACBrTitulo.ACBrBoleto.Banco.TipoCobranca = cobBancoDoBrasilAPI) then
begin
Result := ACBrTitulo.ACBrBoleto.Cedente.Agencia+'/'+
IntToStr(StrToIntDef(ACBrTitulo.ACBrBoleto.Cedente.Conta,0));
end else
begin
Result := ACBrTitulo.ACBrBoleto.Cedente.Agencia+'-'+
ACBrTitulo.ACBrBoleto.Cedente.AgenciaDigito+'/'+
IntToStr(StrToIntDef(ACBrTitulo.ACBrBoleto.Cedente.Conta,0)) +'-'+
ACBrTitulo.ACBrBoleto.Cedente.ContaDigito;
end;
end;
Alteração que fizemos (aparentemente era assim antes):
function TACBrBancoBrasil.MontarCampoCodigoCedente (
const ACBrTitulo: TACBrTitulo ) : String;
begin
Result := ACBrTitulo.ACBrBoleto.Cedente.Agencia+'-'+
ACBrTitulo.ACBrBoleto.Cedente.AgenciaDigito+'/'+
IntToStr(StrToIntDef(ACBrTitulo.ACBrBoleto.Cedente.Conta,0)) +'-'+
ACBrTitulo.ACBrBoleto.Cedente.ContaDigito;
end;