Die Anweisung SUBMIT lädt das aufgerufene Programm in eine eigene interne Sitzung und startet in der ABAP-Laufzeitumgebung eine Folge von Prozessen, die im aufgerufenen Programm Ereignisse und Aktionen in folgender Reihenfolge auslösen:

  1. Programmkonstruktor-Ereignis LOAD-OF-PROGRAM

  2. Übergabe der mit dem Zusatz DEFAULT in den Anweisungen PARAMETERS und SELECT-OPTIONS definierten Startwerte an die entsprechenden Datenobjekte. Die Startwerte aller übrigen Datenobjekte werden vor LOAD-OF-PROGRAM gesetzt.

  3. Reporting-Ereignis INITIALIZATION

  4. Aufruf des in selscreen_options festgelegten Selektionsbildes, falls dieses mindestens ein Eingabefeld oder eine Drucktaste enthält. Falls kein explizites Selektionsbild angegeben ist, wird das Standardselektionsbild aufgerufen. Dabei findet eine vollständige Selektionsbildverarbeitung statt. Nach der Selektionsbildverarbeitung wird der Programmablauf in Abhängigkeit von der letzten Benutzeraktion auf dem Selektionsbild entweder fortgesetzt oder beendet. Vor dem ersten Ereignis der Selektionsbildverarbeitung, AT SELECTION-SCREEN OUTPUT, werden die in selscreen_options angegebenen Werte übergeben.

  5. Reporting-Ereignis START-OF-SELECTION

  6. Verschiedene GET-Ereignisse, falls das aufgerufene Programm mit einer logischen Datenbank verknüpft ist.

  7. Reporting-Ereignis END-OF-SELECTION

  8. Aufruf der Grundliste.

    Falls die Grundliste leer ist, wird das Programm beendet.

    Ist die Grundliste eine Spool-Liste, wird sie an das SAP-Spool-System gesendet und das Programm beendet.

    Falls EXPORTING LIST TO MEMORY in list_options angegeben ist, wird die Grundliste im ABAP Memory gespeichert und das Programm beendet.

    Ansonsten ist die Grundliste eine Bildschirmliste und wird am Bildschirm dargestellt. Benutzeraktionen auf einer dargestellten Bildschirmliste lösen Listenereignisse aus. Das Programm wird beendet, wenn der Benutzer die Listendarstellung verlässt.

  9. Falls in Schritt 4 kein Selektionsbild dargestellt wird, da entweder keine oder eine dunkle Selektionsbildverarbeitung stattfindet, ist der Programmaufruf beendet.

    Falls in Schritt 4 ein Selektionsbild dargestellt wird, ruft die Laufzeitumgebung nach dem Verlassen der Grundliste (bzw. nach dem Beenden des Programms bei leerer Grundliste) das aufgerufene Programm erneut auf, wobei es erneut geladen und die entsprechenden Aktionen und Ereignisse beginnend mit LOAD-OF-PROGRAM erneut stattfinden. Bei dem erneuten Aufruf werden die Parameter, die Selektionskriterien und freien Abgrenzungen des Selektionsbildes zwischen den Ereignissen INITIALIZATION und AT SELECTION-SCREEN OUTPUT von der Laufzeitumgebung mit den vorhergehenden Eingabewerten versorgt (andere Einstellungen, wie z.B. welche Tabstrip-Seite aktiv war werden nicht übergeben). Der Programmaufruf wird erst beendet, wenn der Benutzer die Selektionsbildverarbeitung durch die Auswahl von Zurück, Beenden oder Abbrechen verlässt.

Das aufgerufene Programm kann in jedem der aufgeführten Schritte mit der Anweisung LEAVE PROGRAM und während der Listenverarbeitung mit LEAVE LIST-PROCESSING verlassen werden.

Hinweise

  • Nach den Ereignissen START-OF-SELECTION und END-OF-SELECTION findet jeweils ein obsoletes Ereignis START-OF-EDITING bzw. END-OF-EDITING statt, für das zwar ein Ereignisblock implementiert werden kann, der aber unnötig ist