Anfang des InhaltsbereichsHintergrunddokumentation Architektur des SAP GUI for HTML  Dokument im Navigationsbaum lokalisieren

Server des SAP GUI for HTML

Das SAP GUI for HTML setzt auf dem ITS (Internet Transaction Server) auf. Der ITS bildet die Schnittstelle zwischen einem 'zustandslosen' Web-Server (HTTP-Protokoll), dessen Kommunikation mit dem Web-Browser über Zyklen mit je einer Anfrage/Antwort abläuft, und einem 'zustandsabhängigen' R/3-System (SAP GUI-Protokoll), bei dem die Ausführung betriebswirtschaftlicher Vorgänge von internen Status abhängt.

Der ITS unterstützt Standard-Web-Server wie Microsoft Internet Information Server (IIS), Netscape Enterprise Server (NES) und Apache Web Server.

Die folgende Abbildung zeigt einen Anfrage-/Antwort-Zyklus für das SAP GUI for HTML:

Diese Grafik wird im zugehörigen Text erklärt

Wenn der Benutzer einen Modus des SAP GUI for HTML aus einem Web-Browser heraus startet, dann umfaßt der Anfrage-/Antwort-Zyklus folgende Schritte:

  1. Der Web-Browser schickt die Anfrage an den Web-Server.
  2. Der Web-Server lädt den WGate (Web-Gateway), der als Web-Server-Erweiterung die Verbindung zwischen dem ITS und dem Web-Server herstellt.
  3. Der WGate sendet die Anfrage über eine TCP/IP-Verbindung an den AGate (Anwendungs-Gateway), der die Hauptverarbeitungskomponente des ITS darstellt.
  4. Der AGate lädt die entsprechenden Service-Dateien und baut mit Hilfe der darin gespeicherten Informationen eine Verbindung zum R/3-System auf.
  5. Das R/3-System gibt als Antwort den Anmeldebildschirm an den AGate zurück.
  6. Der AGate erzeugt eine HTML-Seite mit Hilfe von Standard-Styles oder einem eigenentwickelten HTML-Template.
  7. Ein Style ist ein konfigurierbarer Satz von Regeln, die festlegen, wie die Oberflächenelemente eines R/3-Transaktionsdynpros in HTML abgebildet werden.

  8. Der AGate schickt die generierte HTML-Seite zurück an den WGate.
  9. Der WGate schickt die HTML-Seite an den Web-Server.
  10. Der Web-Server schickt die Seite an den Web-Browser des Benutzers. Der Browser zeigt die Ergebnisse an.

Um den Benutzerkontext im R/3 zu pflegen, hält der AGate die Verbindung zum R/3-System für die gesamte Dauer des SAP-GUI-Modus aufrecht. Die Verbindung zwischen dem Web-Browser und dem Web-Server wird jedoch nach jedem Anfrage-/Antwort-Zyklus geschlossen.

Bei jeder weiteren Anfrage, die nach dem Öffnen des Modus abgesetzt wird, benutzt der Web-Browser Cookies, um eine Moduskennung mit der HTTP-Anfrage zu senden, die zur eindeutigen Identifizierung der Verbindung zum R/3-System dient.

Bei jedem nachfolgenden Dialogschritt im Web-Browser ändert der Benutzer eine Reihe von Dynprofeldern. Der Web-Browser schickt diese Felder an den Web-Server und den WGate, der sie wiederum an den AGate weiterleitet. Dank der eindeutigen Moduskennung, die mit der Anfrage verschickt wurde, findet der AGate die Verbindung zum R/3-System und schickt die geänderten Dynprofelder mit einem OK-Code an R/3. Das R/3-System gibt ein geändertes SAP-Dynpro zurück, das entweder mit Hilfe der Standard-Styles oder mit Hilfe eines eigenentwickelten HTML-Template in HTML umgesetzt wird.

HTML-Generierung

Diese Grafik wird im zugehörigen Text erklärt

Die Kommunikation mit dem R/3-System wird vom DIAG Protocol Interpreter gesteuert, der ein entsprechendes C++-Objekt für jedes Dialogobjekt auf dem Transaktionsdynpro zur Verfügung stellt. Die C++-Objekte sind in einem Objektbaum angeordnet. Jede C++-Klasse bietet Methoden, um auf die spezifischen Attribute des entsprechenden Dialogobjekts zuzugreifen – und sie zu ändern.

Der SAP-GUI-Server durchläuft den Objektbaum und ermittelt alle Dialogobjektattritbute, die für die HTML-Darstellung benötigt werden. Die Objektattribute werden HTML-Templates und –Styles als <object>.<attribute> zur Verfügung gestellt.

Diese Grafik wird im zugehörigen Text erklärt

Der SAP-GUI-Controller (Screen Layout Manager) durchläuft den Dialogobjektbaum, der vom DIAG Protocol Interpreter erstellt wurde. Dabei wendet der Controller auf jedes Objekt HTML-Styles an, um das R/3-Dynpro in eine HTML-Seite umzusetzen. Diese Styles werden durch HTMLBusiness-Funktionen implementiert. Für jedes Dynproelement gibt es eine solche Funktion.

Der Controller führt folgende Aufgaben aus:

HTML-Styles

Damit Dialogobjektattribute in ansonsten statische HTML-Seiten eingemischt werden können, bietet der Server des SAP GUI for HTML den HTMLBusiness-Interpreter an, der die HTML Business-Funktionen auswertet.

HTMLBusiness-Funktionen können beliebig viele Parameter haben.

Beispielsweise hat die Funktion tablecontrol mehrere Parameter zur Konfiguration von Table-Controls.

Der Quelltext für den HTML-Style tablecontrol sieht wie folgt aus:

function tablecontrol( ~tcname, X,Y,width,height,with_position=1 )

  write("<!-- TableControl " ,~tcname,"-->\n") ;

  if ( ^~tcname.columnCount == 0 )
    return("") ;
  end ;

  if ( with_position==1 )
<!--divbegin(x,y,width,height) ; -->
    write("<div class=\"all\" style=\"overflow:
                        auto;width:",~font_size*width,";") ;
    abs_position(X,Y) ;
    abs_size(width,height) ;
    write("\">") ;
  else
    write("<div class=\"all\" style=\"overflow:
                        visible;width:",~font_size*width,";") ;
    write("\">") ;
  end ;

  tablecontrol_main(~tcname);

  divend() ;

end ;

Jede write -Anweisung schickt HTML-Quelltext an den Web-Browser.

 

 

Ende des Inhaltsbereichs