Anfang des Inhaltsbereichs

Aufgerufenes Programm programmgesteuert verlassen Dokument im Navigationsbaum lokalisieren

Im allgemeinen beendet der Benutzer einen Report, der über SUBMIT... AND RETURN aufgerufen wurde, durch die Auswahl von F3 oder F15 in der Listenstufe 0 des aufgerufenen Reports.

Sollen jedoch vor der Rückkehr zum aufrufenden Programm noch einige Anweisungen ausgeführet werden, wie z.B. Daten über EXPORT ins ABAP-Memory zu stellen, so muß 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_PROGRAM_LEAVE wird die Tabelle ITAB wieder gelesen.

 

 

 

Ende des Inhaltsbereichs