Prezados,
Foram feitas as seguintes correções na unit "ACBrBancoBanestes"
Function CalcularCampoASBACE
Manual na pagina 27 item 8.2.1 mostra a composição da chave ASBACE
Notem que a conta é composta de 11 números e não possui digito de conta
Antes:
cLivreAsbace := copy(ACBrTitulo.NossoNumero,1,8) +
copy(trim(ACBrTitulo.ACBrBoleto.Cedente.Conta), 1, 10) +
ACBrTitulo.ACBrBoleto.Cedente.ContaDigito +
IfThen(ACBrtitulo.ACBrBoleto.Cedente.Modalidade = '',
'4', ACBrtitulo.ACBrBoleto.Cedente.Modalidade) +
IntToStrZero(fpNumero,3);
Depois:
cLivreAsbace := copy(ACBrTitulo.NossoNumero,1,8) +
copy(trim(ACBrTitulo.ACBrBoleto.Cedente.Conta), 1, 11) +
IfThen(ACBrtitulo.ACBrBoleto.Cedente.Modalidade = '',
'4', ACBrtitulo.ACBrBoleto.Cedente.Modalidade) +
IntToStrZero(fpNumero,3);
Procedure GerarRegistroHeader400
Como mencionado a conta é composta de 11 números e não possui digito de conta, conforme manual na pagina 07 item 5.1.1 mostra a identificação da empresa (conta corrente)
Antes:
PadLeft(OnlyNumber(Copy(Trim(Conta),1,10)+contadigito), 11,'0')+ // Codigo da Empresa no Banco
Depois:
PadLeft(OnlyNumber(Copy(Trim(Conta),1,11)), 11,'0')+ // Codigo da Empresa no Banco
Segue unit em anexo para avaliação.
ACBrBancoBanestes.pas