Verificar lista de valores no Delphi
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.
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
Curtidas 0
Respostas
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');
case AnsiIndexStr(UpperCase(QryTeste.FieldByName('ModeloDocFisc').AsString), ['55','57','08']) of
0 : showmessage('55');
1 : showmessage('57');
2 : showmessage('08');
GOSTEI 0
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