SAP ABAP 子程序
子程序是代码的可重用部分。它是程序中的模块化单元,其中函数以源代码的形式封装。将程序的一部分放到子程序中,以更好地了解主程序,并多次使用相应的语句,如下图所示:
我们的程序 X
有 3 个不同的源代码块。每个块都有相同的 ABAP 语句。基本上,它们是相同的代码块。为了使这段代码更易于维护,我们可以将代码封装到一个子程序中。我们可以在我们的程序中调用这个子程序,调用次数随意。可以使用 Form
和 EndForm
语句定义子程序。
以下是子程序定义的一般语法:
FORM <subroutine_name>.
<statements>
ENDFORM.
我们可以使用 PERFORM
语句调用子程序。控件跳转到子程序中的第一条可执行语句。遇到 ENDFORM
时,控件跳回 PERFORM
语句后面的语句。
实例
步骤 1 - 转到事务 SE80。打开现有程序,然后右键单击程序。在本例中,它是
ZSUBTEST
。步骤 2 - 选择 Create 创建”,然后选择 Subroutine 子程序。在字段中写入子例程名称,然后单击 continue 继续按钮。子例程名称为
Sub_Display
,如下图所示:
步骤 3 - 在
FORM
和ENDFORM
语句块中编写代码。已成功创建子程序。我们需要包含
PERFORM
语句来调用子程序。让我们看看代码 :
REPORT ZSUBTEST.
PERFORM Sub_Display.
* Form Sub_Display
* --> p1 text
* <-- p2 text
FORM Sub_Display.
Write: 'This is Subroutine'.
Write: / 'Subroutine created successfully'.
ENDFORM. " Sub_Display
步骤 4 - 保存、激活和执行程序。
结果如下:
Subroutine Test:
This is Subroutine
Subroutine created successfully
因此,使用子程序可以使程序更加面向功能。它将程序的任务拆分为子功能,以便每个子程序负责一个子功能。您的程序变得更易于维护,因为对函数的更改通常只需在子程序中实现。