Problemas em Filtro de AdoQuery
Olá pessoal tudo bem?
Bom, to um tempo qbrando a cabeça com isso e naum consigo solicionar.
Quando ativo um filtro em AdoQuery, ele esta me retornando esta msg de erro:
[b:f13b558f13]´O Item não pode ser encontrado na coleção correspondente ao nome ou ao ordinal solicitado.´[/b:f13b558f13]
Já tentei de tudo!
O q eu faço eh o seguinte
Será que alguém tem idéia de como me ajudar?
Bom, to um tempo qbrando a cabeça com isso e naum consigo solicionar.
Quando ativo um filtro em AdoQuery, ele esta me retornando esta msg de erro:
[b:f13b558f13]´O Item não pode ser encontrado na coleção correspondente ao nome ou ao ordinal solicitado.´[/b:f13b558f13]
Já tentei de tudo!
O q eu faço eh o seguinte
Qr_Consulta.Filter:= ´(Gravadora.Gravadora) = ´ + intToStr(DbLcb_Gravadora.KeyValue);
Será que alguém tem idéia de como me ajudar?
K1t4r0
Curtidas 0
Respostas
K1t4r0
06/12/2006
[b:49ed744fc1]Alguém?
plz?[/b:49ed744fc1]
plz?[/b:49ed744fc1]
GOSTEI 0
Leorez
06/12/2006
Coloq somento o nome do campo.
Exe:
dmExt.qryBusca.Filtered:= False;
dmExt.qryBusca.Filter := ´ Nome = ´ + ´Leonardo´
dmExt.qryBusca.Filtered:= True;
Exe:
dmExt.qryBusca.Filtered:= False;
dmExt.qryBusca.Filter := ´ Nome = ´ + ´Leonardo´
dmExt.qryBusca.Filtered:= True;
GOSTEI 0
K1t4r0
06/12/2006
Coloq somento o nome do campo.
Exe:
dmExt.qryBusca.Filtered:= False;
dmExt.qryBusca.Filter := ´ Nome = ´ + ´Leonardo´
dmExt.qryBusca.Filtered:= True;
O Problema, eh o seguinte!
Minha query, tem 3 campos iguais de tabelas diferentes!
e justo ali, eu passo um parametro numérico =/
Entao eu preciso chamar Tabela.Campo = 4, por exemplo.
GOSTEI 0
Emerson Nascimento
06/12/2006
acho que isso não dá certo, não. o filter irá trabalhar com os campos do resultset e não da instrução sql.
dê apelidos para os campos. algo assim:
assim você deverá referenciar o apelido, e não o nome físico no banco:
dê apelidos para os campos. algo assim:
select tab1.gravadora gravadora1, tab2.gravadora gravadora2, tab3.gravadora gravadora3 from tabela1 tab1 left join tabela2 tab2 on tab2.id = tab1.id left join tabela3 tab3 on tab3.id = tab1.id where [....]
assim você deverá referenciar o apelido, e não o nome físico no banco:
Qr_Consulta.Filter:= ´Gravadora1 = ´ + IntToStr(DbLcb_Gravadora.KeyValue);
GOSTEI 0
K1t4r0
06/12/2006
Obrigado Emerson!
Irei tentar
Irei tentar
GOSTEI 0