HintergrundIntegration in BSP-Applikationen

 

Mit dem SAP Release 6.10 hat sich die Architektur des SAP-Systems grundlegend gewandelt. Der Applikationsserver kann in dieser Architektur als Web Server und als Web Client fungierent.

BSP-Applikationen (BSP: Business Server Pages) bauen auf dieser neuen Architektur auf. Sie ermöglichen die Entwicklung von Internet Anwendung mit serverseitigem Skripting in ABAP oder JavaScript. Da BSP-Applikationen direkt auf dem Web Application Server laufen, kann der Entwickler außerdem auf alle Resourcen des Applikationsservers (zum Beispiel Datenbankzugriffe, Funktionsbausteinaufrufe) zugreifen.

Der Zeitpunkt des Zugriffs auf diese Resourcen ist Ereignisgesteuert. Um Aktionen wie Datenselektion, Initialisierungen oder Eingabeverarbeitung vor beziehungsweise nach der Darstellung einer Web-Seite zu ermöglichen, stellt eine BSP-Applikation mehrere Standard-Ereignisse zur Verfügung.

Hinweis Hinweis

BSP-Applikationen implementieren Sie über den Web Application Builder.

Ende des Hinweises
Anzeige eines Web-Formulars im Web Application Server

Mit der formatierten XSF-Ausgabe können Sie Formulare mit Hilfe des Web Application Server über eine HTTP Response an den Client senden, also im Web-Browser anzeigen:

Prozess

  1. Die BSP-Seite wird durch den Benutzer oder eine vorhergehende BSP-Seite aufgerufen. Der HTTP-Request wird über den Web Application Server an die BSP Laufzeitumgebung weitergereicht.

  2. Die BSP Laufzeitumgebung löst das Ereignis Initialization aus. Im zugehörigen Eventhandler OnInitialization können Sie nun Daten zu Ihrem Formular selektieren - in der Regel ausgehend von Eingaben des Benutzers der vorhergehenden BSP-Seite.

  3. Um HTML (mit eingebettetem CSS) zu erzeugen, parametrisieren Sie den Smart Forms Funktionsbaustein und rufen ihn auf (siehe: Ausgabe im HTML-Format).

  4. Der Funktionsbaustein gibt HTML als Tabelle im RAW Format zurück.

    Hinweis Hinweis

    Die letzten beiden Schritte können Sie natürlich auch in einer Methode oder einem Funktionsbaustein kapseln.

    Ende des Hinweises
  5. Um das Formular im Browser anzuzeigen, müssen Sie das durch die BSP-Laufzeitumgebung zur Verfügung gestellte Response-Objekt mit der Methode SET_DATA füllen. Diese Methode erwartet die Daten als XSTRING. Konvertieren Sie die XSF-Ausgabe entsprechend und übergeben Sie es an das Response-Objekt:

Syntax Syntax

  1. * Variables for formatted XSF and conversion
    data: ls_xmloutput	type ssfxmlout,
    	lt_html_raw	type tsfixml.
    data: l_xstring		type xstring,
    "needed for HTTP response
    	l_xlength	type i, 
    	l_html_xstring	type xstring.
    
    * ls_xmloutput has been returned by Smart Form
    ls_xmloutput = ls_output_data-xmloutput.
    lt_html_raw  = ls_xmloutput-trfresult-content[].
    
    * Convert RAW to XSTRING
    loop at lt_html_raw into l_xstring.
    concatenate l_html_xstring
    l_xstring into l_html_xstring
    in byte mode.
    endloop.
    
    * Set header of response
    response->set_header_field
    ( name = 'content-type' 
    value = ls_xmloutput-trfresult-type ).
    
    * Fill response object
    l_xlength = xstrlen( l_html_xstring ).
    response->set_data( data = l_html_xstring
    length = l_xlength ).
Ende des Codes

Hinweis Hinweis

In der BSP-Applikation SF_WEBFORM_01 können Sie eins von wahlweise drei Formularen, die nicht speziell für die Verwendung im Web verändert wurden, anzeigen.

Ende des Hinweises

Ergebnis

Der Web Application Server sendet die XSF-Ausgabe an den Browser.