Erro no Query na hora de usar o Filter
Boa tarde,
Estou tentando usar o filter de uma query para filtrar o campo data = nulo, da seguinte maneira:
Executo a consulta SQL e abro a query.
No click do botão coloco:
Query1.Filtered := false;
Query1.Filter := ´DATA is NULL´;
Query1.Filtered := true;
Porém quando clico no botão aparece um raised exception com a mensagem: ´capability not supported´.
Isso ocorre somente quando uso o ´is null´, com qualquer outra condição funciona normalmente.
Será que alguém pode me ajudar a filtrar os campos em branco?
Fico muito agradecido pela ajuda.
Estou tentando usar o filter de uma query para filtrar o campo data = nulo, da seguinte maneira:
Executo a consulta SQL e abro a query.
No click do botão coloco:
Query1.Filtered := false;
Query1.Filter := ´DATA is NULL´;
Query1.Filtered := true;
Porém quando clico no botão aparece um raised exception com a mensagem: ´capability not supported´.
Isso ocorre somente quando uso o ´is null´, com qualquer outra condição funciona normalmente.
Será que alguém pode me ajudar a filtrar os campos em branco?
Fico muito agradecido pela ajuda.
Ricklorente
Curtidas 0
Respostas
Acacio
23/03/2009
Primeiro tem que saber qual o tipo de componente que tais utilizando, pois alguns tem o problema para filtrar campos nulos.
Bom tenta também fazer ao invés de:
Query1.Filter := ´DATA is NULL´;
colocar :
Query1.Filter := ´DATA = NULL´;
Bom tenta também fazer ao invés de:
Query1.Filter := ´DATA is NULL´;
colocar :
Query1.Filter := ´DATA = NULL´;
GOSTEI 0
Ricklorente
23/03/2009
Obrigado amigo,
Eu já havia tentado, porém o erro continuava da mesma maneira.
Eu estou usando a Query da paleta BDE e a situação é o seguinte:
Tenho q executar 2 operações usando o filter, uma com o maior (>) e outra com o nulo (is null).
Eu só consigo usar o maior (>) qnd a propriedade Request Live da query está setada como True. E o ´is null´ qnd o Request Live = False;
Ai fica aquela pog no programa, pois qnd uso o ´>´ tenho que fechar a query, setar o request live = true e abrir a query e qnd uso o ´is null´ tenho novamente que fechar a query, setar o request live = false e abrir a query.
Alguém já passou por isso? Tem solução esse problema?
Obrigado
Eu já havia tentado, porém o erro continuava da mesma maneira.
Eu estou usando a Query da paleta BDE e a situação é o seguinte:
Tenho q executar 2 operações usando o filter, uma com o maior (>) e outra com o nulo (is null).
Eu só consigo usar o maior (>) qnd a propriedade Request Live da query está setada como True. E o ´is null´ qnd o Request Live = False;
Ai fica aquela pog no programa, pois qnd uso o ´>´ tenho que fechar a query, setar o request live = true e abrir a query e qnd uso o ´is null´ tenho novamente que fechar a query, setar o request live = false e abrir a query.
Alguém já passou por isso? Tem solução esse problema?
Obrigado
GOSTEI 0
Rudá
23/03/2009
Vc poderia setar no query para retornar a dta sem ser nulo.
Ex SQL Server:
E no filter vc coloca o Data = 0
Isso deve resolver.
Se não tente assim
Ex SQL Server:
E no filter vc coloca o DataNull = 0
Ex SQL Server:
SELECT Campo, ISNULL(Data,0) AS Data FROM Tabela
E no filter vc coloca o Data = 0
Isso deve resolver.
Se não tente assim
Ex SQL Server:
SELECT Campo, Data, CASE WHEN Data IS NULL THEN 0 ELSE 1 END As DataNull FROM Tabela
E no filter vc coloca o DataNull = 0
GOSTEI 0