Dokumentation zur VorgehensweiseFormulareingaben auswerten

 

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:

    Syntax Syntax

    1. data: ls_output_options type ssfcompop.
      
      ls_output_options-xsfaction = 'PAGE.HTM'.
    Ende des Codes

    Hinweis 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).

    Ende des Hinweises
  2. 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:

    Syntax Syntax

    1. data: http_fields type TIHTTPNVP.
      call method request->get_form_fields
      	changing fields = http_fields.
    Ende des Codes
  3. 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 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 der Warnung.