
Integration in BSP-Applikationen
Hintergrund
Mit dem SAP Release 6.10 hat sich die Architektur des R/3-Systems grundlegend gewandelt. Der R/3-Applikationsserver kann in dieser Architektur als Web Server und als Web Client fungieren. Die neue Architektur wird als
SAP Web Application Server bezeichnet.
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 R/3-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.

BSP-Applikationen implementieren Sie über den
Web Application Builder.
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:

Ablauf

Die letzten beiden Schritte können Sie natürlich auch in einer Methode oder einem Funktionsbaustein kapseln.
* 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 ).

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.Ergebnis
Der Web Application Server sendet die XSF-Ausgabe an den Browser.