VB.NET関数を呼び出す
簡単な例から始めます。”Hello VB!”というテキストを返すVB.NET関数を呼び出します。
以下の手順で行います。
- Visual Studioにて、”クラスライブラリ”として新規VB.NETプロジェクトを作成します。
- 例えば”testclass.vb”クラスにて、以下の関数を実装します。
1
2 3 4 5 6 7 |
Public Function hellovb() As String
Dim returnstring As String = “Hello VB!”
Return returnstring
End Function |
- プロジェクトをコンパイルしてDLLを作成します。
- プロジェクトのプロパティにて、”ターゲットフレームワーク”を.NET 4.0に設定します。GuiXTは、VBインターフェイスにて.NET framework 4.0を想定します。
- このDLL(およびその他必要なDLL)を適切なディレクトリにコピーし、GuiXTのプロファイルにてそのパスを指定します。
注: GuiXTのセットアップに含まれるインターフェイスクラスライブラリ”guinet.dll”も、このフォルダーにコピーする必要があります。
テストに関する注意事項: 作成したVB関数を呼び出すと、作成したDLLがSAP GUIに読み込まれますが、SAP GUI(saplogon.exeプロセス)が実行されている間は、新しいバージョンで上書きできません。作成した最新のバージョンを使用するには、すべてのSAP GUIウィンドウおよびSAPログオンウィンドウを閉じるか、Windowsタスクマネージャーでsaplogon.exeを終了してから、そのDLLをコピーする必要があります。
- GuiXT ScriptまたはInputScriptにて、作成したVB.NET関数を”CallVB”コマンドで呼び出します。
CallVB msg = utilities.testclass.hellovb
message “&V[msg]” -statusline
クラスライブラリ”utilities.dll”の”testclass”クラスのVB.NET関数”hellovb”が実行され、その結果がGuiXT変数V[msg]に設定されます。
戻り値を受け取りたくない場合は、以下のように関数を呼び出します。
CallVB hellovb
- SAP GUIのステータス行に、作成したVB.NET関数により返された文字列が表示されます。