Query... RecordCount sempre com resultado 1
Estou fazendo conforme abaixo discriminado, era pra qdo não tiver nada na Qry não visualizar certo, mas mesmo qdo não tem, o RecordCount da o resultado de 1 q teria q ser 0 e está sempre visualizando sem tem nenhum dado, por q mesmo não tendo nada na Query da o resultado de 1? Tem como resolver isso?
Qry.Prepare;
Qry.Open;
if (Qry.RecordCount <>0) then
Quickrep1.Preview;
:?:
Qry.Prepare;
Qry.Open;
if (Qry.RecordCount <>0) then
Quickrep1.Preview;
:?:
Janete
Curtidas 0
Respostas
Lucas Silva
06/07/2004
Tente isso....
Qry.Prepare; Qry.Open; Qry.FetchAll; if (Qry.RecordCount <>0) then Quickrep1.Preview;
GOSTEI 0
Macario
06/07/2004
Ola programador, bom dia.
ou tente isso
espero ter ajudado
ou tente isso
Qry.Prepare;
Qry.Open;
[b:77ae983e16]if not Qry.isEmpty then [/b:77ae983e16]// se a query nao estiver vazia
Quickrep1.Preview;
espero ter ajudado
GOSTEI 0
Janete
06/07/2004
Não adiantou, contiua aparecendo recondcount = 1 mesmo qdo não tem itens na query, daria pra fazer + alguma coisa pra resolver isso :?:
GOSTEI 0
Paulo_amorim
06/07/2004
Não adiantou, contiua aparecendo recondcount = 1 mesmo qdo não tem itens na query, daria pra fazer + alguma coisa pra resolver isso :?:
Olá
Põe um ShowMessage nesse recordcount pra ver qq ele traz!
Dai posta pra gente tentar ajudar :idea:
Até+
GOSTEI 0
Janete
06/07/2004
[quote:00f0fc1075=´Janete´]Não adiantou, contiua aparecendo recondcount = 1 mesmo qdo não tem itens na query, daria pra fazer + alguma coisa pra resolver isso :?:
Olá
Põe um ShowMessage nesse recordcount pra ver qq ele traz!
Dai posta pra gente tentar ajudar :idea:
Até+[/quote:00f0fc1075]
Coloquei a mensagem e aparece 1 qdo a tabela está vazia, e agora depois q coloquei o ShowMessage fica dando aqueles erros de Access Violation.
GOSTEI 0
Lucas Silva
06/07/2004
Coloquei a mensagem e aparece 1 qdo a tabela está vazia, e agora depois q coloquei o ShowMessage fica dando aqueles erros de Access Violation.
A query está criada??
Dê uma conferida ai, pois deve ser isso!
GOSTEI 0
Vinicius2k
06/07/2004
Janete,
Qual a instrução SQL da Query?
T+
Qual a instrução SQL da Query?
T+
GOSTEI 0
Janete
06/07/2004
Janete,
Qual a instrução SQL da Query?
T+
está conforme abaixo:
Select Vasilhame.Tipo, Sum(Itens.Quantidade) as Qtde
From Vasilhame,Pedidos,Itens
Where Itens.CodVas = Vasilhame.Codigo and
Itens.NroPed = Pedidos.Numero and
Pedidos.Numero =:VarCod
Group By Vasilhame.Tipo
Order By Vasilhame.Tipo
GOSTEI 0
Vinicius2k
06/07/2004
Janete,
Creio que sua query sempre vai ter um registro... a coluna Qtde (resultado do Sum) com o valor 0...
Experimente retirar o [b:ced98ed6db]Sum(Itens.Quantidade) as Qtde[/b:ced98ed6db] e faça o teste...
Espero ter ajudado...
T+
Creio que sua query sempre vai ter um registro... a coluna Qtde (resultado do Sum) com o valor 0...
Experimente retirar o [b:ced98ed6db]Sum(Itens.Quantidade) as Qtde[/b:ced98ed6db] e faça o teste...
Espero ter ajudado...
T+
GOSTEI 0
Janete
06/07/2004
Janete,
Creio que sua query sempre vai ter um registro... a coluna Qtde (resultado do Sum) com o valor 0...
Experimente retirar o [b:044f07b135]Sum(Itens.Quantidade) as Qtde[/b:044f07b135] e faça o teste...
Espero ter ajudado...
T+
Só q dessa forma eu não vou ter a soma das quantidades itens de cada vasilhame e eu preciso saber, então não posso tirar este sum(itens.Quantidade) as Qtde, bom na realidade isso está me trazendo o seguinte, a tabela vasilhame possui um campo chamado Tipo q vai conter vários tipos de valilhames por exemplo: vasilhame 600ml e outros mais, e nos itens são vinculados qual o tipo de vasilhame q ele possui por exemplo: Cerveja 600ML, o vasilhame dela é (vasilhame 600 ML) então nessa query eu pego por tipo de vasilhame e agrupo todos os itens q estão vinculados com ele e somo uma qtde somente exemplo do resultado:
Tipo Qtde
Vasilhame 600ML 12
Vasilhame 1000ML 6
//essa é a soma de todos os itens daquele pedido selecionado por tipo de vasilhame, então não posso tirar essa qtde, e mesmo não tendo nenhum itens q possua vasilhame, quer dizer não contém vinculo com a tabela de vasilhames fica aparecendo no recordcount da qry o resultado 1. :roll:
GOSTEI 0
Vinicius2k
06/07/2004
Janete,
Na verdade, pedi que vc fizesse o teste pois não tenho certeza se este é o problema... mas se vc retirar o sum e resolver encontramos o defeito e podemos buscar outras soluções como, por exemplo, ao invés de testar se a query está vazia, testar se o ´Qtde´ é igual a Zero ( se isso puder ser feito no contexto do que vc necessita)
T+
Na verdade, pedi que vc fizesse o teste pois não tenho certeza se este é o problema... mas se vc retirar o sum e resolver encontramos o defeito e podemos buscar outras soluções como, por exemplo, ao invés de testar se a query está vazia, testar se o ´Qtde´ é igual a Zero ( se isso puder ser feito no contexto do que vc necessita)
T+
GOSTEI 0
Janete
06/07/2004
Janete,
Na verdade, pedi que vc fizesse o teste pois não tenho certeza se este é o problema... mas se vc retirar o sum e resolver encontramos o defeito e podemos buscar outras soluções como, por exemplo, ao invés de testar se a query está vazia, testar se o ´Qtde´ é igual a Zero ( se isso puder ser feito no contexto do que vc necessita)
T+
Beleza, deu certinho agora estou verificando a qtde:
if (QryVasQtde.Value<>0) then //não usando o recordcount
Obrigado
GOSTEI 0