Boa tarde.
Na leitura do arquivo de retorno do banco sicoob está gerando uma exceção na rotina TACBrBancoob.MontarCodigoBarras, onde a propriedade ACBrTitulo.Carteira deve ter o valor 1 ou 3.
if (ACBrTitulo.Carteira = '1') or (ACBrTitulo.Carteira = '3')then
ACarteira := ACBrTitulo.Carteira
else
raise Exception.Create( ACBrStr('Carteira Inválida.'+sLineBreak+'Utilize "1" ou "3".') );
Na rotina TACBrBancoob.LerRetorno400 a propriedade Titulo.Carteira está recebendo a posição 86 da linha do arquivo (Carteira := Copy(Linha,86,3)).
Consultando o manual, o campo Carteira está na posição 107-108.
Realizei os testes após o ajuste e a leitura do arquivo foi realizada normalmente.
Segue em anexo a unit alterada para validação.
Obrigado.
ACBrBancoBancoob.pas
Sicoob 240_400.xls