Provides a multi-branch decision based on the value of a single expression.
CASE expression :
{ WHEN value [ OR WHEN value ] ... THEN
{ block | statement }
} ...
[ OTHERWISE
{ block | statement }
]
END [ CASE ]
|
The following fragment shows a simple example of a CASE statement:
r-case.p
DEFINE VARIABLE pay-stat AS INTEGER NO-UNDO INITIAL 1.
UPDATE pay-stat VIEW-AS RADIO-SET
RADIO-ITEM unpaid 1 LABEL "Unpaid"
RADIO-ITEM part 2 LABEL "Partially paid"
RADIO-ITEM paid 3 LABEL "Paid in full".
CASE pay-stat:
WHEN 1 THEN
MESSAGE "This account is unpaid.".
WHEN 2 THEN
MESSAGE "This account is partially paid.".
WHEN 3 THEN
MESSAGE "This account is paid in full.".
END CASE.
|