Pessoal todos sofremos com códigos complicados quando precisamos encadear muitos IFs, para resolver isso de uma maneira simples e limpa basta usarmos o case true. Veja exemplo abaixo : Código: DEFINE VARIABLE d-valor AS DECIMAL NO-UNDO INITIAL 9.7. DEFINE VARIABLE l-entre20e50 AS LOGICAL NO-UNDO INITIAL FALSE. CASE TRUE: WHEN l-entre20e50 AND (d-valor >= 20 AND d-valor <= 50) THEN DO: /*trecho de codigo*/ END. WHEN d-valor > 100 THEN DO: /*trecho de codigo*/ END. WHEN d-valor < 5 THEN DO: /*trecho de codigo*/ END. OTHERWISE DO: /*trecho de codigo*/ END. END CASE.