SAP ABAP If…Else 语句

使用 If…Else 语句,如果表达式的计算结果为 true,则将执行 IF 代码块。否则,将执行 ELSE 代码块。

以下语法用于 If…Else 语句:

  1. IF<condition_1>.
  2. <statement block 1>.
  3. ELSE.
  4. <statement block 2>.
  5. ENDIF.

流程图


实例

  1. Report YH_SEP_15.
  2. Data Title_1(20) TYPE C.
  3. Title_1 = 'Tutorials'.
  4. IF Title_1 = 'Tutorial'.
  5. write 'This is IF Statement'.
  6. ELSE.
  7. write 'This is ELSE Statement'.
  8. ENDIF.

结果如下:

  1. This is ELSE Statement.

IF…ELSEIF…ELSE 语句

有时,IF 语句的嵌套会使代码难以理解。在这种情况下,使用ELSEIF 语句来避免 IF 语句嵌套。

使用 IFELSEIFELSE 语句时,需要考虑以下几点:

  • IF 语句可以有 0 个或 1 个 ELSE 语句,并且它必须位于任何 ELSEIF 语句之后。
  • IF 语句可以有 0 个或 1 个 ELSEIF 语句,并且它们必须位于 ELSE 语句之前。
  • 如果 ELSEIF 语句成功,则不会判断其余的 ELSEIF 语句或 ELSE 语句。

以下语法用于 IF…ELSEIF…ELSE 语句:

  1. IF<condition_1>.
  2. <statement block 1>.
  3. ELSEIF<condition_2>.
  4. <statement block 2>.
  5. ELSEIF<condition_3>.
  6. <statement block 3>.
  7. ......
  8. ......
  9. ......
  10. ......
  11. ELSE.
  12. <statement block>.
  13. ENDIF.

在上述语法中,处理块的执行基于与处理块相关联的一个或多个逻辑条件的结果:

  • IF 语句的 condition_1 表示计算 truefalse 条件的逻辑条件。
  • condition_2 显示 ELSEIF 语句中指定的第二个条件,当 IF 语句条件为 false 时执行该条件。
  • ENDIF 表示 IF 代码块的结束。
实例
  1. Report YH_SEP_15.
  2. Data Result TYPE I VALUE 65.
  3. IF Result < 0.
  4. Write / 'Result is less than zero'.
  5. ELSEIF Result < 70.
  6. Write / 'Result is less than seventy'.
  7. ELSE.
  8. Write / 'Result is greater than seventy'.
  9. ENDIF.

结果如下:

  1. Result is less than seventy.

分类导航