Arquivo TXT para DIRF
Moderador: Moderadores
Arquivo TXT para DIRF
Obrigado a todos. Consegui. Apenas a titulo de esclarecimento informo que a unica forma que funcionou foi com a utilização do fwrite()
SELE ARQDBF
GO TOP
FHANDLE = FCREATE(ARQTXT,2)
WHILE !EOF()
FWRITE (FHANDLE, CAMPO + CHR(13) + CHR(10) )
SELE ARQDBF
SKIP
ENDDO
FCLOSE(FHANDLE)
Ai está o algoritmo completo. Simples.
Obrigado a todos,
José Malta Lócio
SELE ARQDBF
GO TOP
FHANDLE = FCREATE(ARQTXT,2)
WHILE !EOF()
FWRITE (FHANDLE, CAMPO + CHR(13) + CHR(10) )
SELE ARQDBF
SKIP
ENDDO
FCLOSE(FHANDLE)
Ai está o algoritmo completo. Simples.
Obrigado a todos,
José Malta Lócio
SELE ARQDBF
GO TOP
FHANDLE = FCREATE(ARQTXT,2)
WHILE !EOF()
FWRITE (FHANDLE, CAMPO + CHR(13) + CHR(10) )
SELE ARQDBF <<== Pode apagar esta linha!!!
SKIP
ENDDO
FCLOSE(FHANDLE)
GO TOP
FHANDLE = FCREATE(ARQTXT,2)
WHILE !EOF()
FWRITE (FHANDLE, CAMPO + CHR(13) + CHR(10) )
SELE ARQDBF <<== Pode apagar esta linha!!!
SKIP
ENDDO
FCLOSE(FHANDLE)
"TRS-80/Sincler/Apple/PC - Clipper Winter 85, tlink 1.0 [pc 10 MHz - 640K] {NEZ 8000 2Kb RAM}"
{POG - Programação Orientada a Gambiarra}
{POG - Programação Orientada a Gambiarra}
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
O arquivo do DIRF teria que ser gerado com atributo "H" ? Por quê está FCREATE(ARQTXT,2) e não FCREATE(ARQTXT,0) ?
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.
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.
Pessoal,
Aproveitando o tópico...
Qual a diferença de se criar TXTs usando FCREATE/FWRITE ou utilizar SET PRINTER TO arquivo/@ PROW()
? Há algum ganho de velocidade nisso 
Jânio
PS: Uso SET PRINTER TO arquivo/@ PROW() principalmente na criação de relatórios para serem visualizados na tela.
Aproveitando o tópico...
Qual a diferença de se criar TXTs usando FCREATE/FWRITE ou utilizar SET PRINTER TO arquivo/@ PROW()
Jânio
PS: Uso SET PRINTER TO arquivo/@ PROW() principalmente na criação de relatórios para serem visualizados na tela.
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Acredito que não haja nenhuma diferença tão grande de velocidade. No final dá elas por elas. 
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Com o set printer vc manda criar um arquivo no formato texto.
Se vc usa @ say quando vc muda a coordenada de linha, no arquivo texto, a linha anterior recebe o CR+LF.
Se vc usa ?, no arquivo texto é mandado um CR+LF e depois estra o texto que vc mandou gravar.
Para não pular a linha antes de gravar os dados, use ??.
No final do arquivo texto vai um caracter de final de arquivo. CHR(26).
O FWrite faz gravação em baixo nivel. É uma sequência de bytes, não importando o que seja.
Tanto que para montar um arquivo texto, ao final de cada linha, vc tem que mandar obrigatoriamente o CR+LF.
Com as funções de baixo nível, vc abre quaisquer tipo de arquivo.
Ah! CR+LF é para formato DOS. Se for no formato UNIX é só o LF.
Se vc usa @ say quando vc muda a coordenada de linha, no arquivo texto, a linha anterior recebe o CR+LF.
Se vc usa ?, no arquivo texto é mandado um CR+LF e depois estra o texto que vc mandou gravar.
Para não pular a linha antes de gravar os dados, use ??.
No final do arquivo texto vai um caracter de final de arquivo. CHR(26).
O FWrite faz gravação em baixo nivel. É uma sequência de bytes, não importando o que seja.
Tanto que para montar um arquivo texto, ao final de cada linha, vc tem que mandar obrigatoriamente o CR+LF.
Com as funções de baixo nível, vc abre quaisquer tipo de arquivo.
Ah! CR+LF é para formato DOS. Se for no formato UNIX é só o LF.
"TRS-80/Sincler/Apple/PC - Clipper Winter 85, tlink 1.0 [pc 10 MHz - 640K] {NEZ 8000 2Kb RAM}"
{POG - Programação Orientada a Gambiarra}
{POG - Programação Orientada a Gambiarra}
Ok.
Pensei que fosse mais rápido usando FCREATE/FWRITE.
Jânio
Pensei que fosse mais rápido usando FCREATE/FWRITE.
Jânio
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
Pode até ser mais rápido. Depende da implementação. Mas sem dúvida, as funções de baixo nível são bem mais flexíveis, apesar de, normalmente, darem mais trabalho. Mas isso é relativo também. Fazendo algumas funções de abstração pode ficar até bem mais fácil.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Pois é... Eolo eu perguntei mas o Locio ainda não respondeu. Também não sei dizer se a normativa da Receita é para criar o arquivo em modo oculto... (acho que foi erro, mesmo)
Obs.: Alias Eolo, o 2 do FCREATE é HIDEN not READONLY...
Obs.: Alias Eolo, o 2 do FCREATE é HIDEN not READONLY...
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.
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.
Ops, falha minha. Confundi com o FOPEN():
fopen(arqtxt,2) // abre em modo leitura e gravação
Aliás, tem mesmo algo de errado no FCREATE com 2! Pra que CRIAR um arquivo HIDDEN? O assunto é tão confidencial que nem o próprio criador pode ver? (não resisti à brincadeira...)
Agora, sério: eu acho que muita gente COPIA e COLA coisas, compila e manda rodar. Sem perguntar o porque delas, sem entender o que está acontecendo. Aquilo de ganhar um peixe ao invés de aprender a pescar...
fopen(arqtxt,2) // abre em modo leitura e gravação
Aliás, tem mesmo algo de errado no FCREATE com 2! Pra que CRIAR um arquivo HIDDEN? O assunto é tão confidencial que nem o próprio criador pode ver? (não resisti à brincadeira...)
Agora, sério: eu acho que muita gente COPIA e COLA coisas, compila e manda rodar. Sem perguntar o porque delas, sem entender o que está acontecendo. Aquilo de ganhar um peixe ao invés de aprender a pescar...
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
hihihi, acho que sim... essa foi boa ! Mas quem sabe ? Esse pessoal do órgão público... vou te dizer... querem tudo TOP-SECRET... hihihi
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.
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.
Às vezes o cidadão quer criar um arquivo oculto para esconder algum dado sigiloso. Agora, não é porque fica oculto que não pode ser acessado.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.
---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!


