Silk4J で SAP コントロールに対する操作を記録できない場合、SAP で利用できるレコーダーで操作を記録してから、記録されたメソッドを Silk4J スクリプトで動的に呼び出すことができます。これによって、記録できない SAP コントロールに対する操作を再生できます。
- コントロールに対して実行する操作を記録するには、SAP で利用できる SAP GUI スクリプト作成 ツールを使用できます。 SAP GUI スクリプト作成 ツールの詳細については、SAP のドキュメントを参照してください。
- 記録された操作を SAP GUI スクリプト作成 ツールによって保存された場所から開き、記録されたメソッドを確認します。
- Silk4J で、記録されたメソッドをスクリプトから動的に呼び出します。
使用例
たとえば、SAP UI で
Test というラベルが付いた、ボタンとリスト ボックスの組み合わせである特別なコントロールを押し、コントロールのサブメニュー
subsub2 を選択する操作を再生したい場合、SAP で利用できるレコーダーでこの操作を記録できます。結果のコードは、以下のようになります。
session.findById("wnd[0]/usr/cntlCONTAINER/shellcont/shell").pressContextButton "TEST"
session.findById("wnd[0]/usr/cntlCONTAINER/shellcont/shell").selectContextMenuItem "subsub2"
ここで、メソッド
pressContextButton と
selectContextMenuItem を
Silk4J のスクリプトから動的に呼び出すには、次のコードを使用できます。
.SapToolbarControl("shell ToolbarControl").invoke("pressContextButton", "TEST")
.SapToolbarControl("shell ToolbarControl").invoke("selectContextMenuItem", "subsub2")
このコードを再生すると、SAP UI のコントロールが押下され、サブメニューが選択されます。