Rahmenprogramm mit Absprung

Die Transaktionen ZME21n und ZME22n wurden eingeführt um einen eigenen Weg bei der Bestellschreibung zu beschreiten. Die Hintergründe hierzu möche ich nicht weiter erläutern, es geht nur darum, einige Möglichkeiten der Programmierung festzuhalten. Die Besonderheit besteht darin, dass hier ein Programm mit den o.g. Transaktionen gestartet wird und in Abhängigkeit verschiederner Randbedingungen Parameter gesetzt und im Speicher gehalten werden obwohl das aufrufende Programm verlassen wird. Weiterhin werden Unterprogramme mit Parameterübergabe gestartet, die nicht im Rahmenprogramm sondern in eigenen Reports vorhanden sind.


Aufruf eines externen Unterprogramms mit Parameterrückgabe

Es wird ein Unterprogramm aufgerufen, dass sich nicht im gleichen Rahmenprogamm befindet und dessen Quellcode nicht „includiert“ ist.

  IF SY-SUBRC = 0.
PERFORM DYN_IF IN PROGRAM (PROG) CHANGING TRUE.
IF TRUE 'X'.
CONTINUE.
ENDIF.
ELSE.
MOVE 'Bitte die Filterbedingung in der Tabelle ZNEBP_FILTER prüfen.' TO TBEST_RETURN-MESSAGE.
APPEND TBEST_RETURN.
MOVE MSG TO TBEST_RETURN-MESSAGE.
APPEND TBEST_RETURN.
CALL FUNCTION 'Z_POPUP_RETURN_PARAM'
TABLES
RETURN = TBEST_RETURN.
ENDIF.