Quando a necessidade é tratar, de forma simples, vários valores de uma mesma variável, com certeza a melhor opção é o comando
Este comando é ideal para lógicas sem complexidade, validações simples e diretas de valores de uma variável, ou ainda para verificar quais variáveis possuem um determinado valor.
Em mais uma postagem da série COMANDOS, vamos falar desta vez sobre o comando
O que é um
É um comando usado para tratar caso a caso de diferentes valores de uma variável. Assim como o comando IF, também pode ser usado para causar um desvio de comportamento em um programa. É a exata tradução de CASO.
Como funciona o
Primeiro vou mostrar como o comando fica verificando os valores de uma variável. Na sequência mostro como como fica verificando as variáveis para um valor. Nada muito complexo, mas muito interessante.
Para os exemplos, vamos supor uma variável do tipo alfanumérica que irá armazenar a descrição do dia da semana...
Basta escrever
Exemplo simples do comando:
No exemplo acima estou verificando os valores da variável
O comando
Exemplo de
No exemplo acima estou verificando os valores da variável
Agora fazendo várias verificações em blocos diferentes. Podem ser encadeadas quantas verificações forem necessárias, bastando destacar as verificações pelo argumento
Exemplo com várias verificações em diferentes blocos
No exemplo acima estou verificando os valores da variável
E ainda temos o argumento para tratar os demais valores que não precisam estar explícitos. Devem ser tratados pelo argumento
Exemplo com argumento
No exemplo acima estou verificando os valores da variável
Para o exemplo, vamos supor que existam sete variáveis. Todas do tipo alfanumérico e uma para cada dia da semana. Sempre uma delas estará preenchida com "X" para o dia da semana correspondente...
Basta escrever
Exemplo completo:
No exemplo acima estou verificando qual variável estará preenchida com "X". Quando for a variável
E esse foi o comando
Um grande abraço e até a próxima.
CASE
.Este comando é ideal para lógicas sem complexidade, validações simples e diretas de valores de uma variável, ou ainda para verificar quais variáveis possuem um determinado valor.
Em mais uma postagem da série COMANDOS, vamos falar desta vez sobre o comando
CASE
. É muito fácil de ser implementado e trás uma praticidade incrível. Embora sua funcionalidade seja as vezes confundida com a do comando IF
, ele possui particularidades que o diferencia.O que é um CASE
?
É um comando usado para tratar caso a caso de diferentes valores de uma variável. Assim como o comando IF, também pode ser usado para causar um desvio de comportamento em um programa. É a exata tradução de CASO.
Como funciona o CASE
?
Primeiro vou mostrar como o comando fica verificando os valores de uma variável. Na sequência mostro como como fica verificando as variáveis para um valor. Nada muito complexo, mas muito interessante.
> Verificando valores de uma variável
Para os exemplos, vamos supor uma variável do tipo alfanumérica que irá armazenar a descrição do dia da semana...
Basta escrever
CASE
e em seguida escrever o nome da variável que terá os valores verificados, terminando com ponto. Em seguida escrever WHEN
seguido do valor que será verificado e terminando com ponto. E então, escrever a programação desejada. E depois fechar o comando com um ENDCASE
e ponto.Exemplo simples do comando:
CASE v_weekday.
WHEN 'MONDAY'.
WRITE 'Week beginning'.
ENDCASE.
No exemplo acima estou verificando os valores da variável
V_WEEKDAY
. Quando o valor for "MONDAY"
o programa irá entrar no bloco e executar o comando WRITE
com "Week beginning". Depois o comando CASE
é fechado com ENDCASE
.O comando
CASE
também funciona verificando dois ou mais valores de uma só vez através do operador OU (OR
).Exemplo de
CASE
verificando três valores: CASE v_weekday.
WHEN 'FRIDAY' OR 'SATURDAY' OR 'SUNDAY'.
WRITE 'Weekend'.
ENDCASE.
No exemplo acima estou verificando os valores da variável
V_WEEKDAY
. Quando o valor for "FRIDAY"
, "SATURDAY"
ou "SUNDAY"
o programa irá entrar no bloco e executar o comando WRITE
com "Weekend". Depois o comando CASE
é fechado com ENDCASE
.Agora fazendo várias verificações em blocos diferentes. Podem ser encadeadas quantas verificações forem necessárias, bastando destacar as verificações pelo argumento
WHEN
.Exemplo com várias verificações em diferentes blocos
WHEN
. CASE v_weekday.
WHEN 'MONDAY'.
WRITE 'Week beginning'.
WHEN 'FRIDAY' OR 'SATURDAY' OR 'SUNDAY'.
WRITE 'Weekend'.
ENDCASE.
No exemplo acima estou verificando os valores da variável
V_WEEKDAY
. Quando o valor for "MONDAY"
o programa irá entrar no bloco e executar o comando WRITE
com "Week beginning". Quando o valor for "FRIDAY"
, "SATURDAY"
ou "SUNDAY"
o programa irá entrar no bloco e executar o comando WRITE
com "Weekend". Depois o comando CASE
é fechado com ENDCASE
.E ainda temos o argumento para tratar os demais valores que não precisam estar explícitos. Devem ser tratados pelo argumento
WHEN OTHERS
todos os valores que forem diferentes dos valores destacados nos argumentos WHEN
anteriores.Exemplo com argumento
WHEN OTHERS
. CASE v_weekday.
WHEN 'MONDAY'.
WRITE 'Week beginning'.
WHEN 'FRIDAY' OR 'SATURDAY' OR 'SUNDAY'.
WRITE 'Weekend'.
WHEN OTHERS.
WRITE 'Through week'.
ENDCASE.
No exemplo acima estou verificando os valores da variável
V_WEEKDAY
. Além das verificações já citadas nos outros exemplos, quando o valor não for "MONDAY"
, "FRIDAY"
, "SATURDAY"
e nem "SUNDAY"
o programa irá entrar no bloco OTHERS
e executar o comando WRITE
com "Through week". Depois o comando CASE
é fechado com ENDCASE
.> Verificando variáveis para um valor
Para o exemplo, vamos supor que existam sete variáveis. Todas do tipo alfanumérico e uma para cada dia da semana. Sempre uma delas estará preenchida com "X" para o dia da semana correspondente...
Basta escrever
CASE
e em seguida escrever o valor que será verificado, terminando com ponto. Em seguida escrever WHEN
seguido do nome da variável que será verificada e terminando com ponto. E então escrever a programação desejada. E depois fechar o comando com um ENDCASE
e ponto.Exemplo completo:
CASE 'X'.
WHEN v_monday.
WRITE 'Week beginning'.
WHEN v_friday OR v_saturday OR v_sunday.
WRITE 'Weekend'.
WHEN OTHERS.
WRITE 'Through week'.
ENDCASE.
No exemplo acima estou verificando qual variável estará preenchida com "X". Quando for a variável
V_MONDAY
o programa irá entrar no bloco e executar o comando WRITE
com "Week beginning". Quando for a variável V_FRIDAY
, V_SATURDAY
ou V_SUNDAY
o programa irá entrar no bloco e executar o comando WRITE
com "Weekend". Quando não for nenhuma das quatro variáveis anteriores, o programa irá entrar no bloco OTHERS
e executar o comando WRITE
com "Through week". Depois o comando CASE
é fechado com ENDCASE
.E esse foi o comando
CASE
, pessoal.Um grande abraço e até a próxima.
Postar um comentário