ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Pesquisas 'n' com um mesmo DBLookUp

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
marcellomm
Colaborador
Colaborador


Registrado: Segunda-Feira, 7 de Novembro de 2005
Mensagens: 1045

MensagemEnviada: Dom Jan 06, 2013 6:55 pm    Assunto: Pesquisas 'n' com um mesmo DBLookUp Responder com Citação

Eu sempre me deparo com a dúvida de como realizar pesquisas em tabelas distintas selecionando valores em um mesmo DBLookUp.

Explicando:

Imaginem que eu tenha uma tela de pesquisa e tenha uma Check; RadioGroup ou outra opção para a escolha do tipo de pesquisa:

Expl.:
Nome Cliente
Produto
Data evento
etc.

E que após essa escolha eu ative um DBLookuP que a principio não esteja conectado à nenhuma query ou table. Então eu faria isso - a conexão - somente após a escolha do tipo de pesquisa no Check ou RadioGroup. Acontece que os ID's das tabelas são distintos - alguns são integers e outros são Chars - sendo assim quando eu faço a mudança de tipo de pesquisa sempre ocorre um erro de tipo diferente.

Pergunto:
Qual a melhor forma - código ou evento - para desvincular o keyField; ListField; ListSource do DBLookUp para que não ocorra esse erro quando é realizada a mudança de tipo de pesquisa. Sempre acabo optando por mais de um DBLookUp, mas acredito que há uma solução mais inteligente. Não?

No aguardo...
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Oseiasao
Membro Junior
Membro Junior


Registrado: Sexta-Feira, 14 de Outubro de 2011
Mensagens: 303

MensagemEnviada: Seg Jan 07, 2013 7:47 am    Assunto: Responder com Citação

Então Marcelo, qd tenho esses probleminhas eu filtro no evento do check meu caro, e coloco um codigo query para cada opção do radiogroup, selecinando de acordo com o item selecionado no RadioGroup;

if RadioGroup.ItemIndex = 0 then
begin
bloco
end

if RadioGroup.ItemIndex = 1 then
begin
bloco
end

if RadioGroup.ItemIndex = 2 then
begin
bloco
end

procuro colocar no evento, assim, é usado uma vez só cara.
_________________
Melhor é o fim das coisas do que o principio delas .... (Salomão)
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
marcellomm
Colaborador
Colaborador


Registrado: Segunda-Feira, 7 de Novembro de 2005
Mensagens: 1045

MensagemEnviada: Seg Jan 07, 2013 11:48 am    Assunto: Responder com Citação

Ok Oséias! Blz! Só que os dados já estão nas querys - que não estão conectadas ao DataSource do DBLookUp - o problema é quanto à conexão. Quer dizer: Se eu conecto a query 'A' - no DBLookUp - que contem uma chave primária que é Char e na próxima consulta eu conecto a query 'B' que tem uma chave primaria que é Integer ocorre erro. O que eu quero saber é:
Se há uma forma 'elegante' de se utilizar um único DBLookUp para receber os keys e os lists, ao invéz de colocar 2 ou 3 DBLookUps e ter que coloca-los como visible e invisible toda vez que alterar o tipo de pesquisa.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
danilo.vitolo
Colaborador
Colaborador


Registrado: Terça-Feira, 3 de Março de 2009
Mensagens: 1029
Localização: São Paulo - SP

MensagemEnviada: Seg Jan 07, 2013 11:58 am    Assunto: Responder com Citação

ja tentou mudar essas propriedades através do código ???

Código:
DBLok.ListSource :=
DBLok.KeyField  :=
DBLok.ListField :=

????
_________________
_________________
Sempre coloque [RESOLVIDO] nos tópicos
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail MSN Messenger
danilo.vitolo
Colaborador
Colaborador


Registrado: Terça-Feira, 3 de Março de 2009
Mensagens: 1029
Localização: São Paulo - SP

MensagemEnviada: Seg Jan 07, 2013 11:59 am    Assunto: Responder com Citação

Qual erro que dá ?
_________________
_________________
Sempre coloque [RESOLVIDO] nos tópicos
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail MSN Messenger
marcellomm
Colaborador
Colaborador


Registrado: Segunda-Feira, 7 de Novembro de 2005
Mensagens: 1045

MensagemEnviada: Qui Jan 10, 2013 9:34 pm    Assunto: Responder com Citação

E aí danilo blz irmão? Seguinte: Já tinha tentado assim mas não funfou. O erro apresentado é:
'Operação de várias etapas gerou erros. Verifique cada valor de status'

Tipo: Roda uma vez com uma das pesquisas - seja ela com chave CHAR ou INTEGER. Quando eu mudo o tipo de pesquisa e seleciono o item no DBLookup ele apresenta esse erro.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
marcellomm
Colaborador
Colaborador


Registrado: Segunda-Feira, 7 de Novembro de 2005
Mensagens: 1045

MensagemEnviada: Qui Jan 10, 2013 9:39 pm    Assunto: Responder com Citação

E o outro erro apresentado é:
'Os argumentos são incorretos, estão fora do intervalo aceitavel ou estão em conflito'
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB