Página 1 de 1
Pesquisa em vários dbfs
Enviado: 27 Fev 2018 17:15
por rubens
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
Pesquisa em vários dbfs
Enviado: 27 Fev 2018 18:14
por MSDN
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 !
Pesquisa em vários dbfs
Enviado: 27 Fev 2018 18:40
por Claudio Soto
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.
Pesquisa em vários dbfs
Enviado: 27 Fev 2018 20:51
por asimoes
SET RELATION pode fazer isso, depende do campo chave em cada tabela ser o mesmo para funcionar.
Pesquisa em vários dbfs
Enviado: 28 Fev 2018 07:35
por JoséQuintas
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
Código: Selecionar todos
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
Pesquisa em vários dbfs
Enviado: 28 Fev 2018 09:02
por rubens
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
Pesquisa em vários dbfs
Enviado: 28 Fev 2018 09:13
por MSDN
Rubens,
Se tiver tempo, opte pelo MySQL.