Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 3271 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Bom dia.

Um dos nossos clientes que trabalham com o banco Bradesco foi informado pelo banco que, ao ler o arquivo de remessa, o banco está identificando o dobro de boletos. Ou seja, o cliente gera um arquivo de remessa com dez boletos, mas o banco lê vinte boletos. Segundo o banco, os registros estão sendo "quebrados" em duas linhas, causando o problema. Não conseguimos entender como isso acontece, já que o arquivo de remessa aparentemente está normal e temos outros clientes que emitem remessa para o Bradesco e nenhum teve tal problema. Alguém já passou por algo do tipo ou tem alguma ideia do que pode estar acontecendo? O layout é o CNAB400.

Postado

Olá leotelles, creio que seu problema esteja na forma que você esta alimentando o componente. Percebi que existe espaços e barras onde só deveriam ter campos numéricos. Você pode postar seu código, mais precisamente o ponto no qual você alimenta o registro detalhe (informações do boleto).

Postado

Olá! Analisando o arquivo em anexo notei que todos os campos onde aparecem espaços em branco ou barras são alfanuméricos, portanto, creio que o problema não seja a alimentação destes.

Postado

Sim, os campos são alfanuméricos, mas no arquivo de remessa as posições onde estão os espaços em seu arquivo deveriam ter apenas números, mesmo que o campo seja alfanumérico no componente o arquivo de remessa espera apenas números, não sei se consegui ser claro. Veja abaixo a diferença entre um arquivo meu gerado com o componente e o seu:

seu arquivo:

100000 000000000000 00090006100315753/                        0002010000000060541P00000000002               01/        

Meu arquivo:

1000000000000000000000090198600009938                         0002020000000000042900000000002N           2  01239      

Postado

Agradeço muito sua ajuda, mas acredito que o problema não está relacionado a esses campos.

Pedimos para o cliente enviar um arquivo de remessa com mais de um boleto para testar e comparamos com um arquivo de remessa da nossa empresa, que está correto. Notei que, no arquivo que está "errado", enviado pelo cliente, realmente existem duas linhas para cada boleto (no arquivo de remessa, a segunda linha de cada boleto é identificada pelo presença do número 2 na primeira posição). Analisando o manual do Bradesco, vi que essa segunda linha corresponde a isso:

Lay-out do Arquivo-Remessa - Registro de Transação-Tipo 2
Registro Opcional
Lay-out para Cobrança com Registro e sem Registro com Emissão do Boleto pelo Banco

Alguém saberia me dizer em que ocasião esse Registro de Transação-Tipo 2 (ou segunda linhade cada boleto) é gerado?

Em anexo, estão dois arquivos de remessa, sendo o "correto" um arquivo gerado pela empresa onde trabalho (com uma linha para cada boleto), e o "errado" um arquivo enviado pelo cliente que está tendo o problema (com duas linhas para cada boleto).

Acredito que, entendendo os motivos que geram a tal da segunda linha, conseguiremos pensar melhor numa solução.

Aguardo ajuda dos colegas.

certo.rem

errado.REM

Postado

Não há nada errado com a 2 linha em seu arquivo, ela é uma linha opcional, prevista no arquivo, o fato de essa linha aparecer no arquivo não gera duplicidade dos boletos. A linha em questão é gerada quando você informa a propriedade Mensagem.add() do componente. Novamente volto a chamar sua atenção para as posições 7 e 20 do registro detalhe (Tipo 1), veja que no arquivo que você intitulou de certo.rem não há esses espaços em branco nessas posições,  não da para precisar qual o caractere esta presente nessas posições em seu arquivo e isso pode estar causando a duplicidade. Veja que da posição 2 até 6 seria o número da agencia para debito automático, no seu arquivo esta correto porem a posição 7 se trata do digito dessa agencia e por algum motivo esta aparecendo um espaço em branco, o mesmo ocorre para o número da conta para debito automático de 13 a 19 e digito na posição 20. Observe que existe um calculo para se chegar ao digito verificador, se são informados zeros para a agencia e conta o resultado do DV também tem que ser zero, o arquivo correto esta tratando assim dessa forma, isso me leva a crer que o seu problema esta ai nessas posições.

 

Postado
Em 08/12/2015 at 11:07, leotelles disse:

Segundo o banco, os registros estão sendo "quebrados" em duas linhas, causando o problema.

Em novo contato com o suporte do Bradesco, meu cliente recebeu a mesma resposta: no arquivo de remessa, há duas linhas para cada boleto, fazendo com que o sistema do banco interprete que foram recebidos o dobro de boletos que o arquivo realmente contém. trcsistemas, agradeço imensamente sua ajuda, mas peço que foquemos na verdadeira causa do problema, por favor: por algum motivo, quando há o Registro de Transação-Tipo 2 (segunda linha de cada boleto, iniciada pelo número 2) o banco está interpretando que há o dobro de boletos que realmente existem.

Obs: O cliente, em outras ocasiões, já enviou outras remessas, com os campos citados por você exatamente como estão no arquivo em anexo e não teve problema, sendo que todos os arquivos enviados com sucesso apresentavam uma linha para cada boleto. Passou a ter problemas quando a tal da segunda linha começou a aparecer. Não sabemos o que ele fez para que essa segunda linha começasse a aparecer (saber isso é fundamental para a solução do problema), já que antes não aparecia e todos os arquivos que ele mandava eram recebidos com sucesso pelo banco.

  • Administradores
Postado

Boa tarde.

Conforme foi observado em posts anteriores, o segundo registro de cada boleto, o qual inicia-se por "2", é um registro opcional que consta no layout do próprio banco para informar as mensagens do mesmo.

Para poder auxiliá-lo recomendo que tente extrair do banco qual linha do arquivo possui os registros duplicados, uma vez que o registro do tipo 1 contém os detalhes gerais do boleto e o tipo 2 as mensagens a serem impressas.

Para mais detalhes observe os manuais disponibilizados no svn svn.code.sf.net/p/acbr/code/tools/Bancos/Bradesco

 

Lay-out do Arquivo-Remessa - Registro de Transação - Tipo 1 (página 11)

Lay-out do Arquivo-Remessa - Registro de Transação-Tipo 2 (página 13)

 

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.  Discord

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Postado

Ok. Bom vejo que você esta com duvidas sobre o momento em que o componente gera a segunda linha, como eu descrevi acima essa linha para o Bradesco é gerada da seguinte forma;

with Titulo do
begin
  Mensagem.Add('Mensagem que cria a segunda linha');
end;

Em seu código remova esse trecho que a segunda linha deixará de ser gerada, ai você poderá matar a duvida se ela ou não, por aqui geramos a segunda linha e nunca tivemos problemas.

  • Este tópico foi criado há 3271 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.