Anfang des Inhaltsbereichs

Komponentendokumentation WebRFC-Programmierung

Das WebRFC Gateway Interface ist eine Programmierschnittstelle, mit der Sie HTML-gestützte Internet-Anwendungen entwickeln können.

Das WebRFC Gateway Interface

Das WebRFC Gateway Interface nutzt die Technologie der Remote Function Calls (RFC), um HTML-Seiten dynamisch mit Funktionsbausteinen zu generieren.

Jede WebRFC-Anwendung besteht aus mindestens einem Internet-fähigen Funktionsbaustein, der eine standardisierte Schnittstelle hat und im Internet über eine URL-Adresse erreichbar ist.

Im Internet auf Daten zugreifen

Die im Internet genutzte Technologie ermöglicht es, verschiedene Arten von Informationen auf einheitliche Weise abzurufen und dem Benutzer zu präsentieren. Die wichtigsten Komponenten dieses Prozesses sind:

Da HTTP-Server nur auf einem Server lokal abgelegte Dokumente ausgeben und selbst keine Daten abrufen oder verarbeiten können, ist ein zusätzlicher Mechanismus erforderlich, der die Anforderungen des Benutzers verarbeiten, mit der Dokumentenbeschreibungssprache HTML (HyperText Markup Language) erstellte Seiten dynamisch generieren und die entsprechende Information in einem Browser anzeigen kann. Dafür sorgen:

Das Common Gateway Interface (CGI) ist einer der technischen Standards, die externe Anwendungen mit dem Informationsserver verbindet. Das CGI definiert die Schnittstelle zwischen dem HTTP-Server und Gateway-Programmen auf der Server-Seite (sogenannte CGI-Skripten). Diese Programme können Benutzereingaben verarbeiten, z.B. Informationen aus Datenbanken oder anderen Quellen abrufen und aus diesen Daten zur Laufzeit HTML-Seiten generieren.

Das CGI erledigt folgende Aufgaben:

In jedem Fall schickt das CGI-Programm eine Zeichenkette mit der entsprechenden Formatangabe an den Browser. Es existiert eine Standardliste mit den Formatangaben für die gebräuchlichsten Datenformaten, die unter dem Namen Multiple Internet Mail Extension (MIME) bekannt ist.

Im Internet auf das R/3-System zugreifen

ABAP-Entwickler können WebRFC-Anwendungen schreiben und dabei statt CGI-Skripten Funktionsbausteine verwenden.

Die Verbindung zwischen HTTP-Server und R/3-System liefert der SAP Internet Transaction Server (ITS), der für das WebRFC als generisches CGI-Programm fungiert. Dies wird aus der folgenden Abbildung ersichtlich, die die grundlegende WebRFC-Architektur darstellt und auch auf den Internet Server API (ISAPI) und Netscape API (NSAPI) verweist:

Diese Grafik wird im zugehörigen Text erklärt

Interaktion zwischen ITS und R/3

Wenn Sie eine Web-Seite mit URL-Adressen erstellen, die auf das R/3-System verweisen, und ein Internet-Benutzer eine dieser Verknüpfungen aktiviert, wird die Benutzeranforderung wie folgt verarbeitet:

  1. Der HTTP-Server leitet die Anforderung an den ITS weiter.
  2. Der ITS kommuniziert mit dem R/3-System über Remote Function Call (RFC).
  3. Im R/3-System empfängt und behandelt ein Dispatcher-Programm den Auftrag.
  4. Die in der URL-Adresse enthaltenen Parameter werden an den Funktionsbaustein in einer internen Tabelle übergeben. Der Parameter, der den Namen des aufzurufenden Funktionsbausteins enthält, muß verpflichtend angegeben werden.

    In einer WebRFC-Anwendung funktioniert ein Funktionsbaustein normalerweise als Einstiegspunkt, während andere Funktionen über Verknüpfungen in generierten HTML-Seiten aufgerufen werden. Diese HTML-Seiten können Verknüpfungen zu anderen Internet-Destinationen haben.

  5. Der aufgerufene Funktionsbaustein bewertet die Parameter, ruft Daten ab, verarbeitet sie und gibt dann das Ergebnis als HTML-Seite aus.

WebRFC Interface: Schnittstelle zwischen ITS und R/3

Diese Grafik wird im zugehörigen Text erklärtDer Aufruf eines Funktionsbausteins im Internet wird in der URL so angegeben:

Beispiel

http://<mymachine:myport/scripts/wgate/XGWFC/!?_ FUNCTION=WWW_GET_REPORT&_REPORT=RDTEST01

Diese URL-Adresse enthält den Aufruf des Standardfunktionsbausteins WWW_GET_REPORT, der den Report RDTEST01 holt und ausführt.

Sie können Parameterwerte für den Funktionsbaustein direkt in der URL-Adresse angeben. Der Internet-Browser kann sich die Werte aber auch über Eingaben des Anwenders auf einem HTML-Formular besorgen.

Schnittstelle für Internet-fähige Funktionsbausteine

Die folgenden Parameter sind Bestandteil der standardisierten Schnittstelle für Internet-fähige Funktionsbausteine:

TABLES-Parameter

Funktion

QUERY_STRING

Diese Tabelle enthält alle Parameter einer URL-Adresse, die vom Internet an den Funktionsbaustein übergeben wurden.

HTML

Diese Tabelle enthält eine HTML-Seite, die von dem gerufenen Funktionsbaustein generiert und an den Browser zurückgegeben wird.

Sie können entweder HTML- oder MIME-Daten (siehe unten) zurückgeben, aber nicht beides gleichzeitig.

Sie müssen dem Browser mit dem Parameter CONTENT_TYPE (siehe unten) mitteilen, um welches Datenformat es sich handelt.

MIME

Diese Tabelle enthält binäre Daten (z.B. ein Bild), die von dem aufgerufenen Funktionbaustein geschickt und an den Browser zurückgegeben wurden.

Sie können entweder MIME- oder HTML-Daten (siehe oben) zurückgeben, aber nicht beides gleichzeitig.

Sie müssen dem Browser mit dem Parameter CONTENT_TYPE (siehe unten) mitteilen, um welches Datenformat es sich handelt.

   

CHANGING-Parameter

Funktion

CONTENT_TYPE

Dieser Parameter gibt den Typ der Daten an, die in der HTML- oder MIME-Tabelle zurückgegeben werden. Der Wert von CONTENT_TYPE muß einem Ihrem Browser bekannten Dateityp entsprechen.

Wenn die Funktion eine HTML-Tabelle zurückgibt, muß CONTENT_TYPE den Wert text/html enthalten.

Wenn die Funktion eine MIME-Tabelle zurückgibt, muß CONTENT_TYPE den korrekten Wert für den Dateityp enthalten, z.B. image/gif oder application/postscript.

Wenn CONTENT_TYPE z.B. den Wert application/winword enthält, ruft der Internet-Browser Microsoft Word für Windows auf, um die Daten anzuzeigen.

Der Wert text/html ist der Vorschlagswert für diesen Parameter.

CONTENT_LENGTH

Dieser Parameter gibt die Länge der in der HTML- oder MIME-Tabelle zurückgegebenen Daten an. Sie müssen einen Wert für binäre Daten angeben.

RETURN_CODE

Dieser Parameter gibt an, ob die R/3-Verbindung nach einem Aufruf beendet und der ITS-Modus geschlossen wird.

Folgende Werte sind möglich:

0 - RFC-Verbindung nach Aufruf beenden (Standard)

1 - RFC-Verbindung nach Aufruf beibehalten

2 - RFC-Verbindung beenden und ITS-Modus schließen.

Hinweis

Wenn Sie eine Verknüpfung mit einem vorhandenen Funktionsbaustein herstellen möchten, müssen Sie einen aufrufenden Baustein schreiben, der von der Internet-fähigen Schnittstelle zur bereits vorhandenen Schnittstelle konvertieren kann.

Sie können dazu den Funktionsbaustein WWW_MODEL_MODULE als Template zum Schreiben von Internet-fähigen Funktionsbausteinen verwenden.

Eine umfassende Beschreibung der Konzepte des Remote Function Call (RFC) und nähere Angaben zur RFC-Programmierung finden Sie in der Dokumentation RFC-Programmierung in ABAP.

Siehe auch:

Strukturlink WebRFC-Anwendungsentwicklung

Strukturlink Anmeldeverfahren

Strukturlink Verwaltung der WebRFC-Servicedatei

Diese Dokumentation beschreibt das Programmiermodell des Web Reporting. Informationen über andere Programmiermodelle für die Implementierung von IACs finden Sie unter:

Programmierung von Web-Transaktionen

Strukturlink SAP Web Reporting

 

 

 

 

Ende des Inhaltsbereichs