Show TOC

Window: Parameter an Inbound- und Outbound-PlugsLocate this document in the navigation structure

Parameter von Inbound- und Outbound-Plugs des Typs Standard

Für jeden Outbound-Plug des Typs Standard können Sie eine Liste von frei definierten Parametern anlegen. Für jeden Inbound-Plug des Typs Standard  können Sie entsprechend eine Liste frei definierter Importing-Parameter an der jeweils zugehörigen Ereignisbehandlermethode nutzen.

Parameter von Suspend- und Exit-Plugs

Auch für diese speziellen Window-Plugs können entsprechend Parameter definiert werden. Da diese Parameter jedoch über die jeweils herausgehende URL übergeben werden, müssen die Parameter entweder vom Typ String oder vom Typ TIHTTPNVP (siehe unten) sein:

Alle Parameter an Exit- bzw. Suspend-Plugs werden an die (am Exit-Plug optionale, am Suspend-Plug obligatorische) Ziel-URL übergeben. Handelt es sich bei der Ziel-URL um eine Web-Dynpro-Anwendung, ergibt sich folgendes URL-Schema:

<Scheme>://<Host>.<Domäne>.<Extension>:<Port>/sap/bc/webdynpro/

<Namensraum>/<Applikationsname>?<Parametername>=<Parameterwert>

Exit- und Suspend-Plugs besitzen den gegenüber der Laufzeit ausgezeichneten String-Parameter URL. Mit dessen Hilfe wird die Ziel-URL selbst übergeben. Dieser Parameter wird nicht an die folgende Anwendung übertragen.

Der zweite ausgezeichnete Parameter ist POST_PARAMETERS vom Typ ABAP_BOOL. Damit läßt sich steuern, ob die folgende Anwendung über ein GEToder POST angesteuert wird. Zusätlich wird beim Suspend noch geprüft, ob die resultierende URL für die nachfolgende Anwendung die Länge von 1024 Bytes überschreitet. Dieses ist die maximal Länge für einige Browser-Typen. Damit es nicht zum Abschneiden der Parameter kommt, wird hier automatisch vom Framework von GET auf POST umgeschaltet.

Der dritte ausgezeichnet Parameter ist RESUME_URL_ID. Hiermit läßt sich der Name für die Rücksprungadresse für die nachfolgende Anwendung steuern. Wird der Parameter nicht mitgegeben, wird als Parametername sap-wd-resumeurl verwendet. Mit diesem Namen können auch andere Werte verwendet werden. Bei der Wahl des Namens sollten Sie sich auf ASCII-Zeichen beschränken.

Parameter von Startup- und Resume-Plugs

Parameter an Startup- und Resume-Plugs werden mit der aufrufenden URL an die zugehörige Ereignisbehandlermethode übergeben, das heißt, sie kommen aus der sekundären Anwendung. Daher ist die Anzahl sowie der Name der an die Methode übergebenen Parameter zur Designzeit der primären Web-Dynpro-Anwendung oft gar nicht bekannt. Um ankommende URL-Parameter trotzdem verarbeiten zu können, werden diese in einer Tabelle vom Typ TIHTTPNVP abgelegt. Über den Parameter WDEVENT der Ereignisbehandlermethode eines Startup- oder Resume-Plugs kann auf alle anwendungsspezifischen URL-Parameter in dieser Tabelle zugegriffen werden. Der lokal angelegte Parameter muss vom gleichen Typ, also vom Typ TIHTTPNVP (siehe unten) sein:

 
methodHANDLEDEFAULT .   data: l_url_parameters type tihttpnvp.         .
        .   wdevent->get_data(     exporting       name =  if_wd_application=>all_url_parameters     importing       value = l_url_parameters  ). . . endmethod.

Wenn die Parameter, die an den Startup- bzw- Resume-Plug übergeben werden, bereits zur Designzeit bekannt sind, können Sie die einzelnen String-Parameter der Signatur der Ereignisbehandlermethode hinzufügen und direkt darauf zugreifen.

Hinweis

Wenn die Signatur einer Ereignisbehandlermethode eines Inbound-Plug Importing-Parameter besitzt, müssen für diese Parameter zur Laufzeit Werte zur Verfügung stehen. Wenn die aufrufende URL keine geeigneten Werte übergibt und gleichzeitig keine Default-Werte an der Anwendung selbst hinterlegt sind, führt dies zu einem Laufzeitfehler. (Siehe hierzu auch KapitelWeb-Dynpro-Anwendungen mit Parametern aufrufen) Sie können über die Pflege von Default-Werten das Auftreten von Laufzeitfehlern, die durch das Fehlen von Parameter-Werten entstehen, verhindern.

TIHTTPNVP-Parameter

Der Tabellen-Typ TIHTTPNVP listet Parameter-Namen gegen deren Werte auf. Wenn Sie einen Parameter dieses Typs für einen Suspend- oder Exit-Plug anlegen, hat dieser die Form einer Tabelle mit Namen/Werte-Paaren, Name und Wert jeweils vom Typ String. In diesem Fall wird nicht jeder Parameter einzeln, sondern alle Einträge dieser Tabelle als ganzes an die URL übergeben.

Entsprechend werden die Namen/Werte-Paare der Parameter, die an einen Startup- oder Resume-Plug übergeben werden, in einer solchen Tabelle abgelegt.

Hinweis

URL-Parameter, für welche die Signatur der Ereignisbehandlermethode einen passenden Parameter anbietet, werden sowohl dort, als auch zusätzlich in der Parameter-Tabelle abgelegt.

Achtung

In der Tabelle vom Typ TIHTTPNVP sollten die übergebenen Parameter von der verarbeitenden Anwendung selbst geprüft und validiert werden.