como ler um arquivo!!!! sem ser dbf (txt,ret,req)?????

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

JMARCELO
Usuário Nível 1
Usuário Nível 1
Mensagens: 33
Registrado em: 13 Jul 2004 09:39
Localização: presidente venceslau - sp
Contato:

como ler um arquivo!!!! sem ser dbf (txt,ret,req)?????

Mensagem por JMARCELO »

caros colegas



nas sei se estou ficando mei locao mas nao consigo fazer uma funcao para ler um arquivo de retorno de consulta esou usando a funcao fopen() e fread() mas no consigo ler e jogar em um dbf

este arquivo em questao me e retornado em duas linhas de muitas colonuas nao vem padronizado em colonuas tenho que fazer um contador e quebrar na colona que quero mas nao consigo fazer

coloquei o arquivo abaixo descrito mas so que ele foi formatado pela pagina do forum caso queiram o arquivo original me mandem um e-mail q lhes retorno

se tiverem a ideia de como montar esta funcao fico agradecido













CONSULTA: SCPC SOLICITANTE: 50203763 - PVL/INFORMATICA - COMPUSOFT NOME: NOME DO TITULAR 01JAN1960 DOCUMENTOS: CPF22252121807 ------------> RELACAO DE NOMES <------------------------- N A D A C O N S T A ------------> S C P C <---------------------------------- N A D A C O N S T A ------------> CONSULTAS ANTERIORES <--------------------- N A D A C O N S T A ------------> SINTESE CADASTRAL <---------------------------------------------- NOME: VANESSA SANTOS DOCUMENTO: CPF T.ELEITOR: NASCIMENTO: 05/01/1981 NOME + + + + + + INFORMACOES CONFIDENCIAIS SAO PAULO, 06/08/2004 15:55:28 NADA CONSTA - CONSULTA:
Dudu_XBase
Membro Master
Membro Master
Mensagens: 1071
Registrado em: 25 Ago 2003 16:55

Mensagem por Dudu_XBase »

..o problema eh esse sem padrão....vc precisa montar um cadastro com essas informações isso...ou soh processar um retorno verificar se o cara ta "sujo"....???
vc conhece a função AT() do clipper...

AT(<oqkeruacha>, <var_q_vo_fazeaprocura>) --> Posição encontrada

// exemplo
? AT("a", "abcde") // Result: 1
? AT("bcd", "abcde") // Result: 2
? AT("a", "bcde") // Result: 0 // non acho

u q to querendo dizer....vc procura joga uma linha numa var...
procura na var tipo

At("NOME:",var) // ae vc sabe em q posição vai ta o nome...
e em seguida vc tera q ver localizar a posição do prox campo..
At("Endereco:",var) //

Código: Selecionar todos

    // ae ficaria assim na minha lógica...doida...rs
    // faze de conta q vc ja jogou o valor da 1 linha numa variavel
    //chamada  cSono...(pq to com sono)

    nIni := At("NOME:",cSono)+4 // pq 4 (NOME: = 5 caracteres)
    nFim := At("Endereco:",cSono) // ai eu descobri a posição do endereço
    
   // Nesse mei fio...pego o conteudo...nome..
   // q esta entre "Nome:" e "Endereco:" ....
    cNome := substr(cSono,Ini,nFim)

   // Será q isso te ajudara... 
:?


________________________________________________________________________________________________________
(Aow Saudade) Clipper 5.2e, Blinker 7, RDD SIXNSX, DBFCDX /Xharbour 1.0, Rdd Mediator (Mysql) Free , RDD Sqlrdd (Sql Server) Comercial
(Hoje) C# Python Sql Server e Oracle




JMARCELO
Usuário Nível 1
Usuário Nível 1
Mensagens: 33
Registrado em: 13 Jul 2004 09:39
Localização: presidente venceslau - sp
Contato:

Mensagem por JMARCELO »

eduardo agradeco a ajuda, mas o meu problema é que preciso mostar o arquivo todo nao apenas algumas informacoes preciso mortrar toda a consulta como ela e me retornado nao posso omitir informacoes nem mudar por isto preciso saber como ler este arquivo e formatolo num padrao por exemplo de 80 colunas





desde ja obrigado



joao marcelo
Avatar do usuário
Trazom
Usuário Nível 3
Usuário Nível 3
Mensagens: 277
Registrado em: 14 Ago 2003 01:01
Localização: Maceió/AL

Mensagem por Trazom »

se eh o que eu to entendendo voce tem um txt com somente uma linha, sendo que nesta unica linha estao as informacoes de todas as linhas que voce precisa formatar

entao voce precisa saber se o campo nome, endereco, que podem ter tamanhos variaveis, veem com brancos completando a posicao total do campo, ai vc pode fazer um loop dividindo as linhas

se for isso continuaremos... voce pode jogar tudo num dbf e fica mais facil
Imagem

Harbour 3.2 HMG 1.2a NSX
Evandro
Pelo fato de exercitar bem a própria arte,
cada um pretendia ser sapientíssimo também nas
outras coisas de maior importância,
e esse erro obscurecia o seu saber

Platão, Apologia de Sócrates
Gerald
Usuário Nível 1
Usuário Nível 1
Mensagens: 39
Registrado em: 06 Jul 2004 17:50
Localização: Caldas Novas
Contato:

Re: como ler um arquivo!!!! sem ser dbf (txt,ret,req)?????

Mensagem por Gerald »

JMARCELO escreveu:caros colegas



nas sei se estou ficando mei locao mas nao consigo fazer uma funcao para ler um arquivo de retorno de consulta esou usando a funcao fopen() e fread() mas no consigo ler e jogar em um dbf

este arquivo em questao me e retornado em duas linhas de muitas colonuas nao vem padronizado em colonuas tenho que fazer um contador e quebrar na colona que quero mas nao consigo fazer

coloquei o arquivo abaixo descrito mas so que ele foi formatado pela pagina do forum caso queiram o arquivo original me mandem um e-mail q lhes retorno

se tiverem a ideia de como montar esta funcao fico agradecido













CONSULTA: SCPC SOLICITANTE: 50203763 - PVL/INFORMATICA - COMPUSOFT NOME: NOME DO TITULAR 01JAN1960 DOCUMENTOS: CPF22252121807 ------------> RELACAO DE NOMES <------------------------- N A D A C O N S T A ------------> S C P C <---------------------------------- N A D A C O N S T A ------------> CONSULTAS ANTERIORES <--------------------- N A D A C O N S T A ------------> SINTESE CADASTRAL <---------------------------------------------- NOME: VANESSA SANTOS DOCUMENTO: CPF T.ELEITOR: NASCIMENTO: 05/01/1981 NOME + + + + + + INFORMACOES CONFIDENCIAIS SAO PAULO, 06/08/2004 15:55:28 NADA CONSTA - CONSULTA:

Amigo,

Não sei se entendi bem, mas será que esse arquivo já não está dando erro no momento que ele está sendo gerado? Está finalizando a linha com CHR(13)+CHR(10)? Pelo exemplo que você colocou entendi isso.....
Quando disserem que seu trabalho não é o de um profissional, lembre-se: Amadores construíram a arca de Noé, profissionais, o Titanic...

www.1grau.com\comunidadeclipper
skype = "gpfranca"
novo email: geraldo@usinfo.com.br
Responder