SAP ABAP – 子程序
SAP ABAP – 子程序
子例程是可重用的代码段。它是程序中的一个模块化单元,其中以源代码的形式封装了一个功能。您可以将程序的一部分分页到子程序,以便更好地了解主程序,并多次使用相应的语句序列,如下图所示。
我们有3个不同的节目X的源代码块。每个块都有相同的 ABAP 语句。基本上,它们是相同的代码块。为了使这段代码更易于维护,我们可以将代码封装成一个子程序。我们可以在我们的程序中多次调用这个子程序。可以使用 Form 和 EndForm 语句定义子例程。
以下是子程序定义的一般语法。
FORM <subroutine_name>. <statements> ENDFORM.
我们可以使用 PERFORM 语句调用子程序。控制跳转到子例程 <subroutine_name> 中的第一个可执行语句。当遇到 ENDFORM 时,控制跳回到 PERFORM 语句之后的语句。
例子
步骤 1 – 转到事务 SE80。打开现有程序,然后右键单击程序。在这种情况下,它是“ZSUBTEST”。
步骤 2 – 选择创建,然后选择子程序。在字段中写入子程序名称,然后单击继续按钮。子程序名称为“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
因此,使用子例程使您的程序更加面向功能。它将程序的任务拆分为子功能,以便每个子程序负责一个子功能。您的程序变得更容易维护,因为对功能的更改通常只需要在子程序中实现。