CASE expressãoCondição avaliada em sequência. O primeiro resultado .T. seleciona o bloco que será executado.
AdvPL GuiaDO CASE ... CASE <expressão lógica> ... [OTHERWISE ...] ENDCASESeleciona e executa o primeiro bloco cuja expressão CASE resultar em verdadeiro.
DO CASE ... ENDCASE organiza decisões com várias alternativas. As expressões CASE são avaliadas na ordem em que aparecem e somente o bloco associado à primeira condição verdadeira (.T.) é executado. As condições seguintes são ignoradas. A cláusula opcional OTHERWISE trata a situação em que nenhum CASE é verdadeiro.
DO CASE ... CASE <expressão lógica> ... [OTHERWISE ...] ENDCASECASE expressãoCondição avaliada em sequência. O primeiro resultado .T. seleciona o bloco que será executado.
comandosInstruções pertencentes à alternativa selecionada.
OTHERWISEBloco opcional executado quando todas as condições CASE resultarem em .F.
User Function ExPeriodo()
Local nMes := Month(Date())
Local cPeriodo := ""
Do Case
Case nMes <= 3
cPeriodo := "Primeiro trimestre"
Case nMes <= 6
cPeriodo := "Segundo trimestre"
Case nMes <= 9
cPeriodo := "Terceiro trimestre"
Otherwise
cPeriodo := "Quarto trimestre"
EndCase
MsgInfo(cPeriodo)
ReturnComo os meses são testados em ordem crescente, o primeiro limite atendido determina o trimestre. OTHERWISE cobre os meses restantes.
User Function ExPrioridade(nTotal)
Local cFaixa := ""
Do Case
Case nTotal > 100000
cFaixa := "Especial"
Case nTotal > 50000
cFaixa := "Alta"
Case nTotal > 10000
cFaixa := "Média"
Otherwise
cFaixa := "Padrão"
EndCase
Return cFaixaO maior limite aparece primeiro. Se a condição geral fosse colocada antes, as faixas superiores nunca seriam alcançadas.
© 2026 Usina.BR. Todos os direitos reservados. TOTVS, Protheus, Microsiga e seus respectivos logotipos são marcas de titularidade da TOTVS S.A. AdvPL é uma linguagem de programação desenvolvida pela TOTVS. O AdvPL Guia é um projeto independente, sem vínculo, representação, patrocínio ou afiliação com a TOTVS S.A., suas franquias ou representantes.