Wir
beschäftigen uns als Erstes mit dem Aufruf von VBScript-Funktionen aus einem GuiXT Script, was
auch unabhängig von der Verwendung von ActiveX Controls sinnvoll ist.
Sie gehen dazu wie folgt vor:
Legen Sie
eine Datei mit der Endung .vbs an, z.B. "lib1.vbs".
In diese Datei
schreiben Sie eine VBScript Funktion, zum Beispiel:
Function test1
test1 = "Hello World"
End Function
Falls Sie ein grösseres Projekt mit GuiXT Controls realisieren wollen, empfiehlt es
sich, einen speziellen Editor für VBScript zu installieren, der
nützliche Funktionen wie Syntaxcheck, Prettyprint, Onlinehilfe u.ä.
enthält. Im Internet sind verschiedene Tools verfügbar, z.B. "VbsEdit":
Achten Sie bei der Auswahl des Tools darauf, dass auch die
Schnittstellen von ActiveX Komponenten angezeigt werden können, da das
die Einbindung komplexer Controls erheblich erleichtert.
Den Namen der
Datei tragen Sie im GuiXT Profile ein:
Sie können hier später, durch Semikolon getrennt, auch mehrere Dateien
angeben, falls eine einzelne Datei zu umfangreich wird.
Achtung: Wenn Sie nach einem Test etwas in Ihrer VBScript Datei
ändern, müssen Sie für den nächsten Test mit "/O..." einen neuen SAP GUI
Modus öffnen, da in dem alten Modus noch die alte Version Ihrer VBScript
Datei läuft. Das gesamte VBScript-Programm wird innerhalb eines Modus
nur einmal geladen, sodass z.B. globale Variablen ihren Wert behalten.
In einem
GuiXT Script oder InputScript rufen Sie die VBScript-Funktion über das
Schlüsselwort "CallVBS" auf. Den Wert können Sie testweise als "Message"
ausgeben:
CallVBS msg = test1
Message
"S: &V[msg]"
-statusline
Das heisst:
Die VBS-Funktion "test1" wird aufgerufen und das Ergebnis in die
GuiXT-Variable V[msg] gestellt. Falls Sie an dem Rückgabewert nicht
interessiert sind, können Sie eine VBScript-Funktion einfach mit
CallVBS test2
aufrufen.
Als Ergebnis
erscheint eine SAP GUI - Nachricht mit dem Text aus der VBScript
Funktion: