Não foi permitido anexar o patch, então está aqui:
Index: ACBrBancoBrasil.pas
===================================================================
--- ACBrBancoBrasil.pas (revision 5882)
+++ ACBrBancoBrasil.pas (working copy)
@@ -1428,14 +1428,11 @@
rCedente := trim(Copy(ARetorno[0],47,30));
rAgencia := trim(Copy(ARetorno[0],27,4));
rDigitoAgencia:= Copy(ARetorno[0],31,1);
- rConta := trim(Copy(ARetorno[1],32,8));
+ rConta := trim(Copy(ARetorno[0],32,8));
rDigitoConta := Copy(ARetorno[0],40,1);
-
rCodigoCedente:= Copy(ARetorno[0],150,7);
-
ACBrBanco.ACBrBoleto.NumeroArquivo := StrToIntDef(Copy(ARetorno[0],101,7),0);
-
ACBrBanco.ACBrBoleto.DataArquivo := StringToDateTimeDef(Copy(ARetorno[0],95,2)+'/'+
Copy(ARetorno[0],97,2)+'/'+
Copy(ARetorno[0],99,2),0, 'DD/MM/YY' );
@@ -1447,12 +1444,13 @@
rCNPJCPF := Copy(ARetorno[1],4,14);
end;
-
with ACBrBanco.ACBrBoleto do
begin
if (not LeCedenteRetorno) and
- ((rAgencia <> OnlyNumber(Cedente.Agencia)) or
- (rConta <> OnlyNumber(Cedente.Conta))) then
+ (
+ (StrToIntDef(OnlyNumber(rAgencia),-1) <> StrToIntDef(OnlyNumber(Cedente.Agencia),-2) ) or
+ (StrToIntDef(OnlyNumber(rConta),-1) <> StrToIntDef(OnlyNumber(Cedente.Conta),-2) )
+ ) then
raise Exception.Create(ACBrStr('Agencia\Conta do arquivo inválido'));
Cedente.Nome := rCedente;
@@ -1501,10 +1499,11 @@
DescricaoMotivoRejeicaoComando.Add(CodMotivoRejeicaoToDescricao(OcorrenciaOriginal.Tipo,CodMotivo));
end;
- DataOcorrencia := StringToDateTimeDef( Copy(Linha,111,2)+'/'+
- Copy(Linha,113,2)+'/'+
- Copy(Linha,115,2),0, 'DD/MM/YY' );
+ DataOcorrencia := StringToDateTimeDef( Copy(Linha,107,2)+'/'+
+ Copy(Linha,109,2)+'/'+
+ Copy(Linha,111,2),0, 'DD/MM/YY' );
+
Vencimento := StringToDateTimeDef( Copy(Linha,147,2)+'/'+
Copy(Linha,149,2)+'/'+
Copy(Linha,151,2),0, 'DD/MM/YY' );
@@ -1521,10 +1520,9 @@
ValorDespesaCobranca := StrToFloatDef(Copy(Linha,182,07),0)/100; //--Anderson: Valor tarifa
ValorOutrasDespesas := StrToFloatDef(Copy(Linha,189,13),0)/100;
- if StrToIntDef(Copy(Linha,296,6),0) <> 0 then
- DataCredito:= StringToDateTimeDef( Copy(Linha,176,2)+'/'+
- Copy(Linha,178,2)+'/'+
- Copy(Linha,180,2),0, 'DD/MM/YY' );
+ DataCredito:= StringToDateTimeDef( Copy(Linha,176,2)+'/'+
+ Copy(Linha,178,2)+'/'+
+ Copy(Linha,180,2),0, 'DD/MM/YY' );
end;
end;