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:
como ler um arquivo!!!! sem ser dbf (txt,ret,req)?????
Moderador: Moderadores
-
Dudu_XBase
- Membro Master

- Mensagens: 1071
- Registrado em: 25 Ago 2003 16:55
..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) //
:?
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

- Mensagens: 33
- Registrado em: 13 Jul 2004 09:39
- Localização: presidente venceslau - sp
- Contato:
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
desde ja obrigado
joao marcelo
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
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
-
Gerald
- 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)?????
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
www.1grau.com\comunidadeclipper
skype = "gpfranca"
novo email: geraldo@usinfo.com.br

