HTML-Seiten können Sie mit GuiXT Controls sehr einfach einbinden. Es gibt zwei Möglichkeiten:
Als Beispiel wollen wir in Transaktion SE37 (Funktionsbibliothek) das "Google" Fenster einblenden und den angegebenen Funktionsbaustein im SAP Developer Network "sdn.sap.com" suchen. Wie in Tutorial 4 und 6 blenden wir die Anzeige über eine eigene Drucktaste ein: GuiXT
|
Damit ist der Ablauf wie folgt:
Der Benutzer drückt die Taste "Funktionsbaustein in SAP SDN suchen":
Das Google-Fenster wird eingeblendet (es ist gerade Halloween). Wir setzen jetzt noch den angegebenen Funktionsbaustein in das Google-Eingabefeld und starten die Suche in "sdn.sap.com", beides mit der connectHTML Anweisung. Da bei Google der Such-Button zunächst "Google-Suche" und dann "Suche" heisst, sehen wir beide Möglichkeiten vor. Den Namen der Felder und Drucktasten in HTML können Sie sich mit connectHTML -showNames anzeigen lassen. GuiXT
Die Google-Startseite wird dann automatisch prozessiert (sie flackert allerdings ganz kurz auf) und der Benutzer erhält folgende Anzeige:
Das gleiche führen wir nun direkt mit dem Control "Shell.Explorer durch", und zwar zunächst mit der connectHTML-Anweisung (was die bequemste Möglichkeit ist). GuiXT Script: GuiXT
Unsere
VBScript Funktion "ie_init" benutzt die "Navigate()" Method des
Controls, um zu der gewünschten URL zu navigieren:
Aus diesem Grund ist das Arbeiten direkt mit dem DOM eher zu empfehlen, wenn die aufgerufene Seite selbst geschrieben wurde (siehe weiter unten). Das Beispiel ohne connectHTML, mit eigenem Zugriff auf das Control und das HTML-DOM, sieht dann wie folgt aus: GuiXT
VBScript Funktion "ie_google_search": VBscript
Eigene HTML-Dateien und Kommunikation mit GuiXT Falls Sie eigene HTML-Dateien einbinden, ist es zum Datenaustausch zwischen Script-Routinen in der HTML-Datei (VBScript oder JavaScript) und GuiXT nützlich, das "guixt" Objekt auch in den HTML-Script-Routinen zur Verfügung zu haben: Sie können dann Variablen und Langtexte aus GuiXT lesen und schreiben, RFC-Aufrufe durchführen und über guixt.input() SAP-Felder setzen und Aktionen durchführen. Dazu rufen Sie nach der "Control"-Anweisung connectHTL object="..." auf, wobei Sie die Referenz auf das erzeugte Web Browser Control übergeben. Die connectHTML-Anweisung sorgt dafür, dass Sie html-Variablen aus GuiXT heraus lesen und setzen können. Zusätzlich sieht sie nach, ob es in dem HTML-Code eine Scriptroutine mit dem Namen "guixt_initialize" gibt. Falls ja, wird diese aufgerufen und als Parameter das "guixt" Objekt übergeben. Sie können sich das Objekt in einer globale Variable merken und später in den HTML-Script-Routinen verwenden. Ein "Hello World"-Beispiel dazu: GuiXT Script: GuiXT
Die HTML-Seite liest über das "guixt" Objekt den Langtext "ot" und gibt ihn aus:
Ergebnis:
|