写点什么

SAP | ABAP 程序结构中的处理块

作者:暮春零贰
  • 2022-10-28
    中国香港
  • 本文字数:624 字

    阅读完需:约 2 分钟

SAP | ABAP程序结构中的处理块

通常,处理块可以大致分类为事件块、对话框模块或过程。

接下来,将探讨一下如何在程序结构中使用处理块。

声明区域

全局声明部分中定义的对象在 ABAP 程序的所有处理块中都是可见的。

全局声明定义数据对象 f1 和 f2,如下所示:

REPORT ZTEXTK1. DATA : f1 TYPE c VALUE 'A',           "全局声明程序的数据	   	 f2 TYPE c VALUE 'B'.END-OF-SELECTION.
复制代码

通过以上定义,就可以通过 ABAP 语句从程序的任何处理块访问全局数据对象 f1 和 f2。

使用处理块

处理块是包含 ABAP 语句的不可分割单元。例如,在上面代码中,END-OF-SELECTION 是一个事件块,它是一种包含 ABAP 语句 PERFORM 的处理块。

调用处理块

处理块可以由 ABAP 运行时环境在外部调用,也可以由程序中的特定语句在内部调用。例如,上面所讲的 END-OF-SELECTION 就是程序在运行 ABAP 时调用的事件块。

处理块的顺序

处理块在程序源代码中的维护顺序与它们的执行顺序完全无关。处理块一旦被调用,一个处理块中的代码就按顺序执行。

结束处理块

当处理块的最后一条语句已经被执行时,处理块的执行结束。


但是,它也可以通过使用某些语句(如 CHECK、EXIT 或 RETURN)以编程方式结束。 例如,检查某个条件后,如果不满足条件,不想执行处理块中剩余的代码,则可以使用 CHECK、EXIT 或 RETURN 语句结束处理块 不执行处理块中的剩余代码。


如果在循环语句(DO 循环、WHILE 循环、LOOP AT 等)中使用 CHECK 和 EXIT 语句,它们的行为会有所不同。这里大家可以自己尝试一下,看看这几种方式的区别是什么🥂。



发布于: 刚刚阅读数: 8
用户头像

暮春零贰

关注

每日羊了个羊🐏,不如今日码了再码 2022-03-13 加入

🎓-------SAP开发初学者--------🎓 🏆InfoQ写作平台-从未签约作者 🏆

评论

发布
暂无评论
SAP | ABAP程序结构中的处理块_SAP_暮春零贰_InfoQ写作社区