ABAP 异常处理(Exception Handling) - 什么是 Non-Class-Based 异常试读版

发布时间 2023-10-03 13:21:19作者: JerryWang_汪子熙

本教程前一篇文章,笔者介绍了 ABAP 系统里查看程序运行时错误的一个有用工具:事务码 ST22:

在笔者实际工作过程中,发现部分开发人员,对于运行时错误(Runtime Error)和异常(Exception) 这些概念的区别,理解得不是很清楚,因此使用本文这一篇幅,来专门介绍 ABAP 异常处理的概念和实战。

我们首先找出 SAP ABAP 官方对于异常处理的帮助文档。

随便在 SE38 事务码里新建一个 ABAP 报表,鼠标选中某个 ABAP 关键字,点击 F1,即可召唤出 SAPGUI 里内嵌的 ABAP 帮助文档。

在弹出的对话框里,我们依次选择 ABAP - Reference->Program Flow Logic->Exception Handling 即可。异常处理涉及到程序执行流的更改,所以放在 Program Flow Logic 这个章节下面,如下图所示:

从上图 Exception Handling 的子标题来看,我们能发现,ABAP 异常分为以下两类:

  • Non-Class-Based Exceptions - 基于非 ABAP 类实现的异常
  • Class-Based Exception - 基于 ABAP 类实现的异常

下面是针对这些概念的详细介绍