Olá boa tarde à todos, sou iniciante com o projeto ACBr,
Recebi uma demanda onde estava gerando arquivo remessa para o layout CNAB400 e não estava sendo aceito pelo banco caixa, ao dar uma lida na documentação da caixa para geração do arquivo
vi que é informado que o campos que se referem a agencia, devem ser preenchidos com 3 zero, e posterior mente um espaço. O Código atual do acbr, gera o aquivo com a seguinte formatação
Após analizar a unidade responsável pela linha das duplicatas,
ifthen(Length(ACodCedente) > 6, '000',
RightStr(OnlyNumber(ACBrBoleto.Cedente.Agencia), 4 ))
Verifiquei que se o valor do Código do Cedente for > 6 então o valor da agenicia será substituído por zero, do contrário, será preenchido com o valor da agencia, o que causa erro durante a validação, pois segundo a a documentação, esse campo é desprezado (pelo que entendi) e deve ser preenchido com 3 zeros e um espaço, devendo ficar assim :
A tratativa no código ficou assim :
ifthen(Length(ACodCedente) > 6, '000', '000 ' ) + // 18 até 21 - Código da Agência
O que gerou o arquivo conforme esperado e validado, pelo sistema da caixa (Validados).
Deixo a observação para que seja analisado por quem possuir maior conhecimento que eu.
Essa foi a solução que encontrei, e não sei se seria exatamente esse ponto, mas foi aí que consegui contornar esse problema.
Unit AcbrBancoCaixa