SAP ABAP 子程序

子程序是一个可重用的代码段。 它是程序中的模块化单元,其中函数以源代码的形式封装。 您将程序的一部分分页到子程序,以更好地概述主程序,并使用相应的语句序列多次,如下图所示。

SAP ABAP 子程序 图1
赛锐信息,SAP ERP定制,ERP定制

我们有具有3个不同源代码块的程序X。 每个块具有相同的ABAP语句。 基本上,它们是相同的代码块。 为了使这个代码更容易维护,我们可以将代码封装到一个子程序中。 我们可以在我们的程序中多次调用这个子程序。 可以使用Form和EndForm语句定义子例程。

以下是子程序定义的一般语法。

FORM <subroutine_name>.
  
<statements> 
  
ENDFORM.

我们可以通过使用PERFORM语句调用子例程。 控制跳转到子例程< subroutine_name>中的第一可执行语句。 当遇到ENDFORM时,控制跳回到PERFORM语句之后的语句。

例子

步骤1 – 转到事务SE80。 打开现有程序,然后右键单击程序。 在这种情况下,它是’ZSUBTEST’。

步骤2 – 选择创建,然后选择子例程。 在字段中写入子程序名称,然后单击继续按钮。 子例程名称为“Sub_Display”,如以下屏幕截图所示。

SAP ABAP 子程序 图2
赛锐信息,SAP ERP定制,ERP定制

步骤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

因此,使用子程序使您的程序更加面向功能。 它将程序的任务分成子功能,使每个子程序负责一个子功能。 您的程序变得更容易维护,因为对函数的更改通常只需在子例程中实现。

关于赛锐信息

作为SAP的资深合作伙伴,赛锐信息是一家专业提供SAP行业化管理软件解决方案的顾问公司,致力于为企业提供SAP ERP系统咨询服务、IT规划、业务流程优化、信息系统实施、行业信息系统方案开发,运营外包及售后维护等全面的服务方案。已服务1000+家不同行业、规模的大中小型企业客户。在电子高科技、汽车零部件、印刷包装、医疗器械、快消品、专业服务等行业信息化管理领域具有领导性地位。

相关文章

联系我们

联系我们

130-0752-1773

在线咨询:点击这里给我发消息

邮件:info@sapzx.com

工作时间:周一至周五9:00-18:00,节假日正常休息

关注微信
关注微信
分享本页
返回顶部