SAP ABAP - podprogramy

Podprogram jest sekcją kodu wielokrotnego użytku. Jest to jednostka modularyzacji w programie, w której funkcja jest hermetyzowana w postaci kodu źródłowego. Przekierowujesz część programu do podprogramu, aby uzyskać lepszy przegląd programu głównego i użyć odpowiedniej sekwencji instrukcji wiele razy, jak pokazano na poniższym diagramie.

Mamy program X z 3 różnymi source code blocks. Każdy blok zawiera te same instrukcje ABAP. Zasadniczo są to te same bloki kodu. Aby ułatwić obsługę tego kodu, możemy zamknąć go w podprocedurze. Możemy wywoływać ten podprogram w naszych programach tyle razy, ile chcemy. Podprogram można zdefiniować za pomocą instrukcji Form i EndForm.

Poniżej znajduje się ogólna składnia definicji podprogramu.

FORM <subroutine_name>.
  
<statements> 
  
ENDFORM.

Możemy wywołać podprogram za pomocą instrukcji PERFORM. Sterowanie przechodzi do pierwszej instrukcji wykonywalnej w podprogramie <nazwa_programu>. Po napotkaniu ENDFORM sterowanie przeskakuje z powrotem do instrukcji następującej po instrukcji PERFORM.

Przykład

Step 1- Przejdź do transakcji SE80. Otwórz istniejący program, a następnie kliknij program prawym przyciskiem myszy. W tym przypadku jest to „ZSUBTEST”.

Step 2- Wybierz opcję Utwórz, a następnie wybierz opcję Podprogram. Wpisz nazwę podprogramu w polu, a następnie kliknij przycisk kontynuuj. Nazwa podprogramu to „Sub_Display”, jak pokazano na poniższym zrzucie ekranu.

Step 3- Wpisz kod w bloku instrukcji FORM i ENDFORM. Podprogram został pomyślnie utworzony.

Musimy dołączyć instrukcję PERFORM, aby wywołać podprogram. Rzućmy okiem na kod -

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

Step 4- Zapisz, aktywuj i uruchom program. Powyższy kod daje następujące dane wyjściowe -

Subroutine Test:
   
This is Subroutine
  
Subroutine created successfully

W związku z tym używanie podprogramów sprawia, że ​​program jest bardziej zorientowany na funkcje. Dzieli zadanie programu na pod-funkcje, tak że każdy podprogram jest odpowiedzialny za jedną podfunkcję. Twój program staje się łatwiejszy w utrzymaniu, ponieważ zmiany funkcji często muszą być wprowadzane tylko w podprogramie.