Acabamos de homologar o CNAB 240 do BANRISUL, por isso gostaria de compartilhar com todos os ajustes feitos.
Segue abaixo a relação dos ajustes na unit ACBrBancoBanrisul.pas e em anexo o arquivo com todas a correções.
Espero que seja adiciono ao repositório para que todos tenham acesso a estes ajuste.
---------------------------------------------------------------------------------------
Alterações na unit C:\ACBr\Fontes\ACBrBoleto\ACBrBancoBanrisul.pas
linha 87 –> fpTamanhoConta := 8;
linha 426 –> '0'+
linha 427 –> padR(OnlyNumber(Agencia), 4, '0') +
linha 630
try
ACBrBanco.ACBrBoleto.DataArquivo := StringToDateTimeDef(Copy(ARetorno.Strings[0], 144, 2) +'/'+
Copy(ARetorno.Strings[0], 146, 2) +'/'+
Copy(ARetorno.Strings[0], 148, 4),
0, 'dd/mm/yyyy');
except
ACBrBanco.ACBrBoleto.DataArquivo := 0;
end;
linha 635
try
ACBrBanco.ACBrBoleto. DataCreditoLanc := StringToDateTimeDef(Copy(ARetorno.Strings[1], 200, 2) +'/'+
Copy(ARetorno.Strings[1], 202, 2) +'/'+
Copy(ARetorno.Strings[1], 204, 4),
0, 'dd/mm/yyyy');
except
ACBrBanco.ACBrBoleto. DataCreditoLanc := 0;
end;
linha 640 –> rCNPJCPF := OnlyNumber( copy(ARetorno[1], 20, 14) );
linha 645 –> if (not LeCedenteRetorno) and (rCNPJCPF <> OnlyNumber(Cedente.CNPJCPF)) then
linha 648 –> if (not LeCedenteRetorno) and ((rAgencia <> padR(OnlyNumber(Cedente.Agencia),5,'0')) or
linha 649 –> (rConta <> padR(OnlyNumber(Cedente.Conta),12,'0'))) then
linha 705 – >NossoNumero := Trim(Copy(FSegT, 38, TamanhoMaximoNossoNum));
linha 725 –> OcorrenciaOriginal.Tipo := CodOcorrenciaToTipo(Copy(FSegT, 16, 2));
linha 733 –> CodMotivoRejeicaoToDescricao(Titulo.OcorrenciaOriginal.Tipo, Copy(FSegT, IdxMotivo, 2)));
colocado dentro da função CodMotivoRejeicaoToDescricao
os motivos das situações
toRetornoRegistroRecusado,
toRetornoInstrucaoRejeitada,
toRetornoAlteracaoDadosRejeitados:
ACBrBancoBanrisul.pas