Fórum Erro ao filtrar registros. #264493
07/01/2005
0
estou com problema na hora de fazer o filtro nos meus resgistros, estou usando banco de dados MySQL e uso o componente ZEOS.
o erro é o seguinte:
[color=red:4548446fb2]
ERangeError with message : ´Range Check Error´.[/color:4548446fb2]
O que acontece, tenho um combo box que recebe os valores a serem filtrados e a medida que o usuário seleciona as opções ele vai mostrando os registros.
o codigo é este:
with qryPedido do begin with cbExibir do begin if ItemIndex = 0 then Filtered := False else Filter := qryPedidoTipo.FieldName + ´ = ´ + Items[ItemIndex]; end; end;
Mais uma pergunta, por acaso o filtro aceita códigos em SQL?
Douglasf
Curtir tópico
+ 0Posts
07/01/2005
Douglasf
Gostei + 0
10/01/2005
Douglasf
Gostei + 0
10/01/2005
Massuda
with qryPedido do begin with cbExibir do begin if ItemIndex = 0 then Filtered := False else Filter := qryPedidoTipo.FieldName + ´ = ´ + Items[ItemIndex]; end; end;
Experimente testar se ItemIndex < 0 (nenhum item selecionado no combobox) antes de atribuir um valor a Filter.
Acho que não, mas dê uma olhada na ajuda do Delphi sobre a propriedade Filter do TDataSet para ver exemplos expressões válidas para filtro.
Uma outra coisa... se qryPedidoTipo é um campo string, então seu filtro deveria ser:
Filter := qryPedidoTipo.FieldName + ´ = ´´´ + Items[ItemIndex] + ´´´´;
Gostei + 0
10/01/2005
Douglasf
infelizmente não resolveu mas consegui encontrar a origem do problema só falta resolver.
Pelo que me parece o problema esta com a [color=red:c52bb2327e]Query[/color:c52bb2327e], pois fiz todos os testes com [color=red:c52bb2327e]cbExibe(ComboBox)[/color:c52bb2327e], olhei os valores que o I[color=red:c52bb2327e]tems[ItemIndex] e o ItemIndex[/color:c52bb2327e] me retornou e esta corretíssimo.
Gostei + 0
10/01/2005
Massuda
Gostei + 0
10/01/2005
Douglasf
Gostei + 0
10/01/2005
Massuda
if (ItemIndex >= 0) and (ItemIndex < Items.Count) then begin Filter := qryPedidoTipo.FieldName + ´ = ´ + ´´´´ + Items[ItemIndex] + ´´´´; end else ShowMessage(´ItemIndex fora de faixa!´);
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)