SAP ABAP If…Else 语句
使用 If…Else
语句,如果表达式的计算结果为 true,则将执行 IF
代码块。否则,将执行 ELSE
代码块。
以下语法用于 If…Else
语句:
IF<condition_1>.
<statement block 1>.
ELSE.
<statement block 2>.
ENDIF.
流程图
实例
Report YH_SEP_15.
Data Title_1(20) TYPE C.
Title_1 = 'Tutorials'.
IF Title_1 = 'Tutorial'.
write 'This is IF Statement'.
ELSE.
write 'This is ELSE Statement'.
ENDIF.
结果如下:
This is ELSE Statement.
IF…ELSEIF…ELSE 语句
有时,IF
语句的嵌套会使代码难以理解。在这种情况下,使用ELSEIF
语句来避免 IF
语句嵌套。
使用 IF
、ELSEIF
和 ELSE
语句时,需要考虑以下几点:
- IF 语句可以有 0 个或 1 个 ELSE 语句,并且它必须位于任何 ELSEIF 语句之后。
- IF 语句可以有 0 个或 1 个 ELSEIF 语句,并且它们必须位于 ELSE 语句之前。
- 如果 ELSEIF 语句成功,则不会判断其余的 ELSEIF 语句或 ELSE 语句。
以下语法用于 IF…ELSEIF…ELSE
语句:
IF<condition_1>.
<statement block 1>.
ELSEIF<condition_2>.
<statement block 2>.
ELSEIF<condition_3>.
<statement block 3>.
......
......
......
......
ELSE.
<statement block>.
ENDIF.
在上述语法中,处理块的执行基于与处理块相关联的一个或多个逻辑条件的结果:
IF
语句的 condition_1 表示计算 true 或 false 条件的逻辑条件。- condition_2 显示 ELSEIF 语句中指定的第二个条件,当 IF 语句条件为 false 时执行该条件。
ENDIF
表示IF
代码块的结束。
实例
Report YH_SEP_15.
Data Result TYPE I VALUE 65.
IF Result < 0.
Write / 'Result is less than zero'.
ELSEIF Result < 70.
Write / 'Result is less than seventy'.
ELSE.
Write / 'Result is greater than seventy'.
ENDIF.
结果如下:
Result is less than seventy.