Página 1 de 1
Arquivo Texto
Enviado: 09 Set 2007 09:42
por Laudelino Scarmagnani
Pessoal, bom dia!
Preciso orientação de como, a partir da leitura de um arquivo DBF, gerar um arquivo .TXT. Se alguem teria um exemplo, me ajudaria muito. O objetivo deste arquivo .TXT é para gerar o arquivo para a Receita Estadual, referente aos livros fiscais.
Agradeço muito a ajuda!
Laudelino Scarmagnani
Enviado: 09 Set 2007 11:35
por Eolo
Laudelino, dá uma olhada no NG, nas funções de baixo nível... FOPEN(), FWRITE() etc. Com elas, vc pode criar o seu TXT do jeito que precisar.
Enviado: 09 Set 2007 12:29
por bato
Não esquecer de que deves obedecer o lay-out fornecido para a geração do referido arquivo texto...
Enviado: 09 Set 2007 19:25
por Laudelino Scarmagnani
Nunca usei o NG, mas vou tentar encontrar. Desculpem! É que não uso muito o clipper, por isso a dificuldade.
Laudelino.
Enviado: 09 Set 2007 19:51
por Eolo
Laudelino, se vc quiser, me add no MSN, o endereço tá no meu perfil.
Se vc não tiver o NG (Norton Guide) - um guia conhecido genericamente como um help muito valioso pro Clipper, eu lhe passo ele e lhe ensino a usar.
Enviado: 09 Set 2007 20:47
por Hasse
Boa noite Laudelino.
Use o comando Copy, cuja sintaxe é:
Código: Selecionar todos
Use teste.dbf
Copy NOME, ENDERECO, CIDADE to Saida.txt SDF
ou
Copy ALL to Saida.txt SDF
O SDF indica que o arquivo Saida será no formato ASCII.
No primeiro caso você lista os campos que deseja copiar. Eu não testei e não me lembro mais se, no primeiro caso, o separador é vírgula mesmo. Teste.
No segundo caso todos (ALL) os campos são copiados.
Enviado: 10 Set 2007 00:24
por Maligno
Use o comando Copy
Acho que com o COPY não dá pé. Ele disse que é pra Receita Estadual. Então, deve ser o SINTEGRA.
Enviado: 10 Set 2007 11:12
por RamonXHB
Não poderia usar Set Printer to Arquivo.txt e usar uma rotina tipo relatorio

Enviado: 10 Set 2007 11:30
por Grings
Gere o relatório da mesma forma como se fosse enviar para a impressora, porém envie para um arquivo texto através do comando Set Printer To ...
Enviado: 10 Set 2007 13:11
por gvc
Vc pode usar:
set alternate to <nome do arquivo.txt>
set alternate on
...
?? <linha de dados>
...
while !<arquivo>->(eof())
? <mais linha de dados>
<arquivo>->(dbskip())
end
...
set alternate off
set alternate to
lembrando que:
? - pula uma linha e imprime as informações.
?? - imprime as informações sem pular linha.
Espero ter ajudado. Boa sorte.
Enviado: 10 Set 2007 14:17
por Maligno
Isso realmente resolve, mas ainda acho muito melhor montar o arquivo e gravar por FWrite().
Aliás, uma lembrança: se for o SINTEGRA mesmo, a estrutura vai mudar, conforme dispõe a legislação.
Enviado: 10 Set 2007 14:18
por Maligno
Laudelino Scarmagnani escreveu:É que não uso muito o clipper, por isso a dificuldade.
Clipper ou XHarbour? Se é Clipper, você usou a seção errada.

Enviado: 10 Set 2007 18:47
por gvc
Mestre Maligno...
Funciona e eu uso isso para gerar todos os tipos de informes da empresa.
É só uma questão de respeitar o layout fornecido pelo solicitante.
Mas tudo bem. Não vamos criar atrito.
Como o Laudelino esta precisando de ajuda, vamos esperar o retorno dele de como irá fazer o arquivo.
Enviado: 10 Set 2007 22:09
por Maligno
Ah, sim. Sua dica funciona e, aliás, muito bem. Jamais diria o contrário. Só apresentei minha preferência pessoal, que é pelas funções de baixo nível. Mas o importante é que os resultados serão igualmente alcançados.
