Anfang des Inhaltsbereichs

Vorgehensweisen Formulareingaben auswerten Dokument im Navigationsbaum lokalisieren

Verwendung

Web-Formulare können Sie nicht nur im Browser anzeigen. Über die Registerkarte Web-Eigenschaften von Text-Knoten zeichnen Sie Felder als Eingabe-Elemente aus. SAP Smart Forms klammert alle Eingabe-Elemente eines Formulars in einem HTML-Formular. Diese Vorgehensweise beschreibt, wie sie mit Hilfe in einer BSP-Applikation die Eingaben eines Web-Formulars auswerten.

Voraussetzungen

Sie erzeugen bereits über Smart Forms ein Web-Formular in einer BSP-Applikation (siehe: Integration in BSP-Applikationen). Das Formular enthält mindestens ein Feld, das als Submit-Drucktaste ausgezeichnet ist (siehe auch: Web-Eigenschaften).

Das Smart Form rufen Sie im Eventhandler OnInitialization Ihrer BSP-Seite auf, beispielsweise auf der Seite FORM.HTM .

Vorgehensweise

  1. Damit Smart Forms die Ziel-URL, an die die eingegebenen Daten übertragen werden sollen, in die HTML-Ausgabe hineingenerieren kann, müssen Sie diese URL über den Parameter XSFACTION angeben. Weisen Sie diesem Parameter vor dem Aufruf des Smart Form den Namen der BSP-Seite zu, die beim Klicken auf die Submit-Drucktaste aufgerufen werden soll:
  2. data: ls_output_options type ssfcompop.

    ls_output_options-xsfaction = 'PAGE.HTM'.

    Hinweis

    Wenn Sie den Parameter XSFACTION nicht füllen, lädt der Browser beim Klicken auf die Submit-Drucktaste auf die aktuelle Seite erneut (also FORM.HTM ).

  3. Holen Sie sich die Formulareingaben auf der Folgeseite im Eventhandler OnInitialization ( PAGE.HTM in diesem Beispiel). Dazu verwenden Sie die Methode get_form_fields des request -Objektes:
  4. data: http_fields type TIHTTPNVP.
    call method request->get_form_fields
               changing fields = http_fields.

  5. Werten Sie die Tabelle http_fields in Ihrer Anwendung aus. Jede Tabellenzeile besteht aus den Feldern Name und Value (also einem Name/Wert-Paar). Die Eingabe-Elemente sind nach Ihrem Auftreten im Formular in der Tabelle geordnet.

Achtung

Es gibt auch HTML-Elemente, die nur dann übertragen, werden, wenn Sie 'aktiv' sind (angekreuztes Ankreuzfeld, geklickte Submit-Drucktaste). Andernfalls sind sie nicht in der Tabelle http_fields enthalten. Siehe auch: Exkurs: HTML-Formulare und die Beispiel BSP-Applikation SF_WEBFORM_02 .

 

 

 

Ende des Inhaltsbereichs