ARQUIVO REMESSA BANCO ITAU

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

reinaldo
Usuário Nível 3
Usuário Nível 3
Mensagens: 105
Registrado em: 02 Mai 2005 13:08
Localização: santos/sp

ARQUIVO REMESSA BANCO ITAU

Mensagem por reinaldo »

Olá amigos
Estou tentando enviar o arquivo remessa do Banco Itau e está acusando o erro "Tamanho do Registro 3 invalido"
Já tinha enviado um arquivo editado no Bloco de Notas e não acusou erro.
Comparei os 2 arquivos no programa TEXTPAD (excelente) e realmente acusou que o arquivo errado é 2 bytes menor e que
no final do registro 3 falta um caracter, que existe nas 2 primeiras linhas, só que não consigo reproduzi-lo aqui.
É uma bandeirinha de cabeça prá baixo.
Estou gravando meu arquivo da seguinte maneira, para enviar apenas um boleto a ser processado:

SET DEVICE TO PRINTER
SET PRINTER TO 041111.TXT
?? "0...detalhes do registro header...000001"
? "1...detalhes do registro detalhe...000002"
? "9...registro trailer..................000003"
SET PRINTER TO

Onde que estou errando?

Obrigado,

Reinaldo
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

ARQUIVO REMESSA BANCO ITAU

Mensagem por Pablo César »

Oi Reinaldo, isso acontece porque com o SET PRINTER TO <arquivo> ele cria uma linha após outra e no final acabaabrindo uma linha NUL com o caracter final de arquivo. Você deveria trabalhar com funções de baixo nível (FOPEN, FWRITE, FCLOSE). Veja este tópico por exemplo: https://pctoledo.org/forum/viewto ... lit=fwrite
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
reinaldo
Usuário Nível 3
Usuário Nível 3
Mensagens: 105
Registrado em: 02 Mai 2005 13:08
Localização: santos/sp

ARQUIVO REMESSA BANCO ITAU

Mensagem por reinaldo »

Olá Pablo
Obrigado pela atenção.
Parece que não é o mesmo caso. Meu programa não está gravando uma linha branco no final do arquivo.
Ele não está gravando um caracter no final do ultimo registro. Qdo eu edito o arquivo esse caracter é gravado e ele é aceito pelo
Bankline do Itau.
Sem o tal caracter ele dá erro ("Registro 3 Invalido"). Registro 3 é a terceira e última linha do meu arquivo.
Esse caracter (e a ausencia dele) eu só consegui visualizar usando TEXTPAD

Reinaldo
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

ARQUIVO REMESSA BANCO ITAU

Mensagem por Pablo César »

Anexe por favor o arquivo gerado (sem ter sido editado).
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
reinaldo
Usuário Nível 3
Usuário Nível 3
Mensagens: 105
Registrado em: 02 Mai 2005 13:08
Localização: santos/sp

ARQUIVO REMESSA BANCO ITAU

Mensagem por reinaldo »

Descobri o caracter que está faltando no ultimo registro: é o CHR(13)+CHR(10)
Então eu fiz o seguinte:
SET DEVICE TO PRINTER
SET PRINTER TO 041111.TXT
?? "0...detalhes do registro header...000001"
? "1...detalhes do registro detalhe...000002"
? "9...registro trailer..................000003"+CHR(13)+CHR(10)
SET PRINTER TO
Comparei no TEXTPAD com o arquivo que o ITAU está aceitando e estão iguais.
Depois, vendo outros arquivos TXT gravados dessa maneira, percebi que realmente o CHR(13)+CHR(10)
não é colocado no ultimo registro.
Na segunda-feira vou fazer um no Bankline. Se der certo informo.
Bom fim de semana.
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

ARQUIVO REMESSA BANCO ITAU

Mensagem por Pablo César »

Para ver realmente caracter a caracter aconselho você utilizar um editor Hexadecimal.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
reinaldo
Usuário Nível 3
Usuário Nível 3
Mensagens: 105
Registrado em: 02 Mai 2005 13:08
Localização: santos/sp

ARQUIVO REMESSA BANCO ITAU

Mensagem por reinaldo »

Testei no Internet Bank e deu certo.
Estamos implantando Boleto DDA. É o mesmo esquema dos boletos comuns (CNAB400)
Obrigado pela ajuda
Responder