GetGridValues

 Input Assistant 

目的
GetGridValuesを使用すると、SAPグリッドコントロールのセルを読み取ることができます。

 

別の方法(より複雑な方法ですが)は、SAP GUIスクリプトを使用することです。 これには、SAPプロファイルでのSAP GUIスクリプトのアクティブ化が必要ですが、GetGridValuesでは必要ありません。 内部的には、GuiXTはキーボードコマンド「Ctrl + C」を使用して、結果のWindowsクリップボードのコンテンツを解析し、GuiXT変数に入力します。 コマンドを実行すると、Windowsクリップボードが保存および復元されます。

例1
GetGridValues selectedCells=“gx”

 

GuiXT変数V[gx.i.k]は、選択されたグリッドセルのコンテンツを受け取ります。 ここで、i = 1,2,3、…は行番号、k = 1,2,3、…はカラム番号です。

例2
// InputScript
Enter
“/niw38”Screen RIAUFK20.1000

// optionally: set parameters for selection

// start selection
Enter “/8”

Screen SAPLSLVC_FULLSCREEN.0500
GetGridValues -prepare
Enter “/5” // Select all

Screen SAPLSLVC_FULLSCREEN.0500
GetGridValues selectedcells=“iw38grid” selectedrowcount=“r”

// Test message
Message &V[r] rows selected” -statusline

Enter “/N”

書式
GetGridValues selectedCells=“name”
オプション
selectedRowCount= 選択された行の数が指定された変数に入れられます。
-prepare グリッドがすべての行を選択する機能を提供する場合(Ctrl + Aまたは機能コード=&ALLまたはF5)、すべての行は「選択済み」としてマークされますが、行が多数ある場合、まだ表示されていない行のセルコンテンツは空のままです。 -prepareを使用すると、GuiXTはグリッドをスクロールして、SAPアプリケーションサーバーからすべてのセルをロードします。

 

グリッドコントロールで複数の行を選択できない場合は、-prepareは必要ありません。

 

GetGridValues -prepareGetGridValues selectedCells=の間には、少なくとも1つのScreenコマンドが必要です。

 

&row and &col in
selectedCells=
“&row”“&col” をselectedCells=で指定できます。

例:
GetGridValues selectedCells=“orders.cell.&col.&row”

その後、変数名は指示どおりに作成されます。つまり、&row&colは対応する行とカラムの番号に置き換えられます。 これは、標準の表記ではselectedCells=“orders.cell”の行とカラムが交換されるため、独自のテーブルで変数を使用する場合に便利です。

ヒントとコツ
Ÿ   ユーザーがグリッド用に独自のレイアウトを選択した場合、グリッドには予想とは異なる列が含まれる可能性があるため、追加のメジャーがないとGetGridValuesは適用できません。 特定のデフォルトレイアウトがアクティブであることを組織的な方法で確認(通常はSAP標準レイアウト)する、または、InputScriptで選択パラメータ”Layout”としてのIW38等、特定のレイアウトを設定する必要があります。

前の記事

GetTableAttribute

次の記事

GetFieldAttribute