SAP ABAP 子程序

2018-01-01 12:55 更新

子程序是一個(gè)可重用的代碼段。 它是程序中的模塊化單元,其中函數(shù)以源代碼的形式封裝。 您將程序的一部分分頁到子程序,以更好地概述主程序,并使用相應(yīng)的語句序列多次,如下圖所示。

Subroutine Reusable Section

我們有具有3個(gè)不同源代碼塊的程序X。 每個(gè)塊具有相同的ABAP語句。 基本上,它們是相同的代碼塊。 為了使這個(gè)代碼更容易維護(hù),我們可以將代碼封裝到一個(gè)子程序中。 我們可以在我們的程序中多次調(diào)用這個(gè)子程序。 可以使用Form和EndForm語句定義子例程。

以下是子程序定義的一般語法。

FORM <subroutine_name>.
  
<statements> 
  
ENDFORM.

我們可以通過使用PERFORM語句調(diào)用子例程。 控制跳轉(zhuǎn)到子例程< subroutine_name>中的第一可執(zhí)行語句。 當(dāng)遇到ENDFORM時(shí),控制跳回到PERFORM語句之后的語句。

例子

步驟1 - 轉(zhuǎn)到事務(wù)SE80。 打開現(xiàn)有程序,然后右鍵單擊程序。 在這種情況下,它是'ZSUBTEST'。

步驟2 - 選擇創(chuàng)建,然后選擇子例程。 在字段中寫入子程序名稱,然后單擊繼續(xù)按鈕。 子例程名稱為“Sub_Display",如以下屏幕截圖所示。

Create Subroutine

步驟3 - 在FORM和ENDFORM語句塊中編寫代碼。 已成功創(chuàng)建子程序。

我們需要包括PERFORM語句來調(diào)用子程序。 讓我們來看看代碼:

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 - 保存,激活并執(zhí)行程序。 上面的代碼產(chǎn)生以下輸出:

Subroutine Test:
   
This is Subroutine
  
Subroutine created successfully

因此,使用子程序使您的程序更加面向功能。 它將程序的任務(wù)分成子功能,使每個(gè)子程序負(fù)責(zé)一個(gè)子功能。 您的程序變得更容易維護(hù),因?yàn)閷?duì)函數(shù)的更改通常只需在子例程中實(shí)現(xiàn)。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)