Clipper On Line • Ver Tópico - Pesquisa em vários dbfs

Pesquisa em vários dbfs

Aqui é o lugar para bater papo e trocar idéias sobre os mais variados assuntos

Moderador: Moderadores

 

Pesquisa em vários dbfs

Mensagempor rubens » 27 Fev 2018 17:15

Pessoal...

Um cliente quer reviver um programa de laboratório de análises clínicas...
Quando eu fiz o programa cada tabela tinha seu browse, daí queria pesquisar se o cliente fez hemograma, ia no browse do hemograma e fazia uma consulta.
Agora o cliente quer pesquisar pelo cliente, daí mostra todos os exames que aquele cliente fez.
Como eu poderia fazer isso de forma mais prática e rápida do que abrir todas as tabelas e pesquisar em todas ela...?
Alguma sugestão?

Obrigado
Rubens
"Eu e minha casa servimos ao Senhor e você ???"
Avatar de usuário

rubens
Colaborador

Colaborador
 
Mensagens: 1518
Data de registro: 16 Ago 2003 09:05
Cidade/Estado: Nova Xavantina - MT
Curtiu: 77 vezes
Mens.Curtidas: 104 vezes

Pesquisa em vários dbfs

Mensagempor MSDN » 27 Fev 2018 18:14

Rubens, se eu entendi o que vc perguntou, uma ideia seria criar um array com o nome de todas as tabelas que deveriam ser pesquisadas, e fazer um loop procurando o que foi digitado como sendo a pesquisa, guarda o que foi encontrado dentro um DBF, e mostra o resultado, seja em tela ou relatório em papel.Dá pra incrementar claro, mas a base seria assim, espero que ajude !
MSDN
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 741
Data de registro: 28 Nov 2003 14:55
Cidade/Estado: CWB
Curtiu: 178 vezes
Mens.Curtidas: 123 vezes

Pesquisa em vários dbfs

Mensagempor Claudio Soto » 27 Fev 2018 18:40

Mi conocimiento sobre el manejo de base de datos es nulo, pero recuerdo que en clipper existía el comando SET RELATION talvez pueda ser útil en este caso.
Saludos.
Dr. Claudio Soto
(Uruguay)
http://srvet.blogspot.com
Avatar de usuário

Claudio Soto
Colaborador

Colaborador
 
Mensagens: 555
Data de registro: 27 Ago 2012 12:31
Cidade/Estado: Uruguay
Curtiu: 35 vezes
Mens.Curtidas: 166 vezes

Pesquisa em vários dbfs

Mensagempor asimoes » 27 Fev 2018 20:51

SET RELATION pode fazer isso, depende do campo chave em cada tabela ser o mesmo para funcionar.
â–ºHarbour 3.x | Minigui xx-x | HwGuiâ—„
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar de usuário

asimoes
Colaborador

Colaborador
 
Mensagens: 4919
Data de registro: 26 Abr 2007 16:48
Cidade/Estado: RIO DE JANEIRO-RJ
Curtiu: 341 vezes
Mens.Curtidas: 258 vezes

Pesquisa em vários dbfs

Mensagempor JoséQuintas » 28 Fev 2018 07:35

1) Pode criar um DBF com todos os exames, pelo menos parciais.
A partir deste, poderia ser consultado o DBF com cada exame completo.

2) Criar um array com o resultado da pesquisa em cada arquivo de exame.

3) Pesquisar tudo, mostrar tudo

acList := { "exame1.dbf", "exame2.dbf", "exame3.dbf", "exame4.dbf" }
nRow := 6
FOR EACH oDBF IN acList
   USE ( oDbf ) ALIAS temp
   SEEK cCliente
   DO WHILE cCliente == temp->Cliente .AND. ! Eof()
      @ nRow, 0 SAY temp->Exame
      @ Row(), Col() + 2 SAY temp->Resulado
      nRow += 1
         SKIP
   ENDDO
   USE
NEXT
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18013
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1206 vezes

Pesquisa em vários dbfs

Mensagempor rubens » 28 Fev 2018 09:02

Bom dia..
E se eu criasse uma tabela como um índice..?
Teria o código do cliente, , código do exame, data do exame. Toda vez que incluísse um exame na tabela própria, acrescentaria uma linha nessa tabela índice. Daí apresentaria um browse/grid com essa tabela o usuário poderia filtrar todos os exames do cliente, depois quando clicasse em um exame abriria aquele exame.
Acho que pode dar certo... a ideia do Set Relation é boa e abrir arquivo por arquivo e pesquisar parece funcionar, mas hoje já temos 58 tabelas e será acrescentado pelo menos umas 15 tabelas de exames novos. Acho que uma tabela de índice poderia funcionar melhor. Os contra que vejo de imediato seria quanto a integridade. Qualquer problema com essa tabela bagunçaria todo o projeto.
Obrigado aos que já opinaram/sugeriram. Vamos ver se mais alguém me ajuda com mais idéias, críticas...
Quando começar o desenvolvimento o projeto espero estar com isso bem definido...

obg

Rubens
"Eu e minha casa servimos ao Senhor e você ???"
Avatar de usuário

rubens
Colaborador

Colaborador
 
Mensagens: 1518
Data de registro: 16 Ago 2003 09:05
Cidade/Estado: Nova Xavantina - MT
Curtiu: 77 vezes
Mens.Curtidas: 104 vezes

Pesquisa em vários dbfs

Mensagempor MSDN » 28 Fev 2018 09:13

Rubens,

Se tiver tempo, opte pelo MySQL.
MSDN
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 741
Data de registro: 28 Nov 2003 14:55
Cidade/Estado: CWB
Curtiu: 178 vezes
Mens.Curtidas: 123 vezes




Retornar para Bate Papo

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 9 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro