Gravação de arquivo GRRF.RE

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

locio
Usuário Nível 2
Usuário Nível 2
Mensagens: 98
Registrado em: 27 Out 2006 14:21

Gravação de arquivo GRRF.RE

Mensagem por locio »

Por favor estou gravando um arquivo SDF e no final é gerado um caracter que o programa da caixa está recusando. Eu edito o programa no Bloco de Notas e excluo este caracter e o programa da caixa aceita. Alguem pode me informar como faço para excluir este caracter do arquivo dentro do programa clipper.
tonyx
Usuário Nível 3
Usuário Nível 3
Mensagens: 303
Registrado em: 07 Jul 2004 15:26

resp para grrf

Mensagem por tonyx »

ja tenho o menu e com as rotinas e o gerador do txt
gostaria que manda-se tudo pra voce
basta mencionar o seu e-mail
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á

Mensagem por Pablo César »

Caro Locio, você não nos disse qual é o caracter que tem a ser excluído. Vejo atarvés do seu editor qual é o código ASCII para sabermos.

Seria o CHR(26) ? CHR(141) ?

Um clip-abraço :)Pos
UKclipper
Usuário Nível 1
Usuário Nível 1
Mensagens: 27
Registrado em: 13 Fev 2007 16:29

Mensagem por UKclipper »

Amigo TonyX

Você poderia enviar esse código fonte do GRRF.RE para mim, também? Meu e-mail é clipper52@hotmail.co.uk.
tonyx
Usuário Nível 3
Usuário Nível 3
Mensagens: 303
Registrado em: 07 Jul 2004 15:26

resp para grrf

Mensagem por tonyx »

******** vai sem o sinal na ultima linha ******

USE &GR_40
SORT ON PIS TO &ARQUIVO2 FOR MARCA = '*'
CLOSE
*-----
USE &GERA_GR
ZAP
APPE FROM &GR_00 FOR RECNO() = 1
APPE FROM &GR_10 FOR RECNO() = 1
DBCOMMIT()
APPE FROM &ARQUIVO2
DBCOMMIT()
*------------- FIM MOVIMENTOS --------
SELE 1 && GERA_GR
APPE BLANK
REPL LINHA1 WITH LIN_FIM1
REPL LINHA2 WITH LIN_FIM2
DBCOMMIT()
CLOSE
*
*======================== exclusivo para breal ============
parte1:= 'C:\FOLHA\PARTE1.TXT'
parte2:= 'C:\FOLHA\PARTE2.TXT'
parte3:= ARQ_TXT
erase(parte1)
erase(parte2)
erase(parte3)
use &GERA_GR
reg_fim:= reccount()
go bott
txt_fim:= LINHA1 + LINHA2
copy to &parte1 sdf for recno() < reg_fim
close
tst:= memowrit(parte2,txt_fim)
run copy &parte1+&parte2 &parte3 > nul
*===EIS AQUI A SOLUCAO SERVE ATE PARA BANCOS *****
*========================================
@ LIN+03,COL+1 SAY SPACE(TAM)
MOSTRA(LIN+03,COL+1,'JA ESTA OK')
*-----------
RETURN
UKclipper
Usuário Nível 1
Usuário Nível 1
Mensagens: 27
Registrado em: 13 Fev 2007 16:29

Mensagem por UKclipper »

Valeu, TonyX!
Vou testar nesse final de semana!
edmarfrazao
Usuário Nível 3
Usuário Nível 3
Mensagens: 185
Registrado em: 06 Dez 2005 11:16

Mensagem por edmarfrazao »

eu uso assim.

goro o txt. depois chamo a rotina baixo
cvfimaarq([SEFIP.RE])

STATIC Function CvFimArq(vArquivo)
nHandle := fopen(vArquivo,2)

IF FERROR() !=0
M_AVISO([Arquivo ]+vArquivo+[ não pode ser aberto])
else
nTamanho:=fseek(nHandle,-1,2)
cBuffer:=[]
? fwrite(nHandle,cBuffer)
ENDIF
nHandle := fclose(nHandle)
return nil
Responder