Filter não funciona, por que será?
Olá, estou usando a tabela de memória do JVCL, e não estou conseguindo usar o Filtro, pois bem, enchi a tabela com mais de 100 itens, e estou querendo filtrar assim:
Não acontece nada... continua exibindo todos os itens... estou fazendo errado? como eu faço isso?
Desde já agradeço
[]s
MemTb.Filtered := False; MemTb.Filter := ´IDCAIXA = ´ + EdtCaixa.Text; MemTb.Filtered := True;
Não acontece nada... continua exibindo todos os itens... estou fazendo errado? como eu faço isso?
Desde já agradeço
[]s
Titanius
Curtidas 0
Respostas
Marco Salles
22/03/2006
eu acho que deveria tentar assim :
Nos cds funciona assim
MemTb.Filtered := False; MemTb.Filter := Pchar(´IDCAIXA = ´) + EdtCaixa.Text; MemTb.Filtered := True;
Nos cds funciona assim
GOSTEI 0
Thiago Vidal
22/03/2006
acho que vc está com problema de aspas...
tente:
tente:
MemTb.Filter := ´IDCAIXA = ´ + QuotedStr(EdtCaixa.Text);
GOSTEI 0
Massuda
22/03/2006
Faz muito tempo que não lido com tabelas em memória nem tenho mexido mais com JVCL, mas pelo que me lembro (perdoem-me se estiver errado), essas tabelas em memória não suportavam ordenação nem filtros, por isso passei a usar o [url=http://www.components4programmers.com/products/kbmmemtable/]kbmMemTable[/url].
GOSTEI 0
Titanius
22/03/2006
[quote=Marco_Sales]
eu acho que deveria tentar assim :
Código:
MemTb.Filtered := False;
MemTb.Filter := Pchar(´IDCAIXA = ´) + EdtCaixa.Text;
MemTb.Filtered := True;
Nos cds funciona assim
eu acho que deveria tentar assim :
Código:
MemTb.Filtered := False;
MemTb.Filter := Pchar(´IDCAIXA = ´) + EdtCaixa.Text;
MemTb.Filtered := True;
Nos cds funciona assim
Realmente, no CDS funciona assim...
[quoted=Massuda]
Faz muito tempo que não lido com tabelas em memória nem tenho mexido mais com JVCL, mas pelo que me lembro (perdoem-me se estiver errado), essas tabelas em memória não suportavam ordenação nem filtros, por isso passei a usar o kbmMemTable.
Realmente, procurei na documentacao, e a Tabela de Memoria do JVCL (originário do RxLib), não suporta isso..
Valeu pessoal... mudei para CDS e ficou numa boa...
[]s
GOSTEI 0
Marco Salles
22/03/2006
eu acho que deveria tentar assim :
Código:
MemTb.Filtered := False;
MemTb.Filter := Pchar(´IDCAIXA = ´) + EdtCaixa.Text;
MemTb.Filtered := True;
Nos cds funciona assim
Realmente, no CDS funciona assim...
Isto foi so uma tentativa de te ajudar , pois no cds acho que so isso basta
MemTb.Filtered := False; MemTb.Filter :=´IDCAIXA = ´+ EdtCaixa.Text; MemTb.Filtered := True;
GOSTEI 0
Titanius
22/03/2006
Justamente Marco, vc não deve ter entendido minha resposta. :oops:
Realmente do jeito que você passou está correto, e funciona perfeitamente em CDS, e como o Massuda disse, o JVCL não tem nem ordenação e nem filtro, a minha solução foi mudar pro CDS e usar o seu Código. :wink:
Obrigado,
[]s
Realmente do jeito que você passou está correto, e funciona perfeitamente em CDS, e como o Massuda disse, o JVCL não tem nem ordenação e nem filtro, a minha solução foi mudar pro CDS e usar o seu Código. :wink:
Obrigado,
[]s
GOSTEI 0