Show TOC Anfang des Inhaltsbereichs

Aufgerufenes Programm programmgesteuert verlassen  Dokument im Navigationsbaum lokalisieren

Im Allgemeinen beendet der Benutzer ein ausführbares Programm, das über SUBMIT... AND RETURN aufgerufen wurde, durch die Auswahl von F3 oder F15 in der Listenstufe 0 des aufgerufenen Programms.

Sollen jedoch vor der Rückkehr zum aufrufenden Programm noch einige Anweisungen ausgeführt werden, wie z.B. Daten über EXPORT ins ABAP-Memory zu stellen, so muss die Benutzeroberfläche des aufgerufenen Programms entsprechend modifiziert werden. Beispielsweise kann ein eigener Funktionscode für die Auswahl Zurück definiert und zum Zeitpunkt AT USER-COMMAND verarbeitet werden. Nach Abarbeitung der gewünschten Anweisungen kann das aufgerufene Programm mit der Anweisung

LEAVE.

verlassen werden. Dabei wird hinter die Aufrufstelle zurückgekehrt.

Beispiel

REPORT demo_programm_leave NO STANDARD PAGE HEADING.

DATA: itab TYPE TABLE OF i,
      num TYPE i.

SUBMIT demo_program_rep3 AND RETURN.

IMPORT itab FROM MEMORY ID 'HK'.

LOOP AT itab INTO num.
  WRITE / num.
ENDLOOP.

TOP-OF-PAGE.
  
WRITE 'Report 1'.
  ULINE.

Dieses Programm ruft folgendes Programm auf:

REPORT  demo_program_rep3 NO STANDARD PAGE HEADING.

DATA: number TYPE i,
      itab TYPE TABLE OF i.

SET PF-STATUS 'MYBACK'.

DO 5 TIMES.
  number = sy-index.
  APPEND number TO itab.
  WRITE / number.
ENDDO.

TOP-OF-PAGE.
  WRITE 'Report 2'.
  ULINE.

AT USER-COMMAND.
  CASE sy-ucomm.
    WHEN 'MBCK'.
      EXPORT itab TO MEMORY ID 'HK'.
      
LEAVE.
  ENDCASE.

Im selbstdefinierten Status MYBACK belegt der Funktionscode MBCK die Funktionstasten F3 und F15:

Diese Grafik wird im zugehörigen Text erklärt

Wählt der Benutzer auf der Oberfläche MYBACK Zurück, dann wird die Tabelle itab ins ABAP-Memory gestellt und erst danach demo_program_rep3 verlassen. In demo_programm_leave wird die Tabelle itab wieder gelesen.

 

 

 

Ende des Inhaltsbereichs