1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

Encadeamento de IFs

Discussão em 'Progress 4GL' iniciado por fdantas, Janeiro 27, 2009.

  1. fdantas

    fdantas Administrator Moderador

    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.
    

Compartilhe esta Página