GARANTIR DESCONTO

Fórum Erro no ELSE IF #573952

18/01/2017

0

procedure TFMATNF_ITEM.RxDBLookupCombo1Click(Sender: TObject);
begin
IF RxDBLookupCombo1.KeyValue = 1 or 4 or 6 or 7 or 9 or 10 THEN
GroupBox2.Visible := false;
ELSE IF RxDBLookupCombo1.KeyValue = 5 or 8 or 11 then
GroupBox11.Visible := false;
ELSE IF RxDBLookupCombo1.KeyValue <> 1 or 4 or 6 or 7 or 9 or 10 OR 5 or 8 or 11 then
GroupBox11.Visible := TRUE;
GroupBox2.Visible := TRUE;
end;
END;
END


Onde está o meu erro ?
Desde já agradeço
Rodrigo Oliveira

Rodrigo Oliveira

Responder

Posts

18/01/2017

Gutierry Pereira

Boa tarde,
Antes do else não se utiliza ";"

if (condicao) then
bloco1
else
bloco2;

if (condicao) then
begin
bloco1
end
else
begin
bloco2
end;

Espero ter ajudado.
Responder

Gostei + 0

18/01/2017

Gutierry Pereira

outra coisa nesse seu código que você esta informando apenas a primeira comparação "RxDBLookupCombo1.KeyValue = 1" no or você não faz comparação. Deve novamente informar RxDBLookupCombo1.KeyValue = 4 . Ficando

if (RxDBLookupCombo1.KeyValue = 1) or (RxDBLookupCombo1.KeyValue = 4) or (RxDBLookupCombo1.KeyValue = etc)

Uma forma mais elegante é utilizar o in

if (RxDBLookupCombo1.KeyValue in [1,4,6,7 etc]) then
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar