Verificar lista de valores no Delphi

Delphi

31/08/2012

Olá, gostaria de saber como faço no delphi, para verificar se o retorno de uma query existe em uma lista de valores especificados. Assim como no sql tem o 'in' como posso fazer no delphi.
Ex:

QryTeste := TADOQuery.Create(nil);
QryTeste.Connection := CONEXAO_PRINC;
QryTeste.SQL.Text := 'SELECT ModeloDocFisc FROM DOC_FISCAIS WHERE DOC_NUM= '+vNumDoc;
QryTeste.Open;
if QryTeste.FieldByName('ModeloDocFisc').AsString in ('55','57','08') then
result := False
else
result := True;

Obs.: usei o 'If' como exemplo, mas é isso que quero fazer.
Devjunior

Devjunior

Curtidas 0

Respostas

Marco Salles

Marco Salles

31/08/2012

Amigo é so fazer

case AnsiIndexStr(UpperCase(QryTeste.FieldByName('ModeloDocFisc').AsString), ['55','57','08']) of
0 : showmessage('55');
1 : showmessage('57');
2 : showmessage('08');


GOSTEI 0
Marco Salles

Marco Salles

31/08/2012

De modo que apreoveitando a idéia anterior vc pode especificar melhor para a sua necessidade

const
ListaDeValores:Array[0..2] of string = ('55','57','08');
begin
case AnsiIndexStr(UpperCase(edit1.Text),ListaDeValores) of
0,1,2 : showmessage('Pertence');
else
Showmessage('não Pertence');
GOSTEI 0
POSTAR