ABAP/SET CURSOR
画面の項目にカーソル(フォーカス)を当てる命令。 この命令+エラーメッセージで、「この項目に入力した値が変だよ」なんかが代表的な使い方。
概要 †
用法~DynproでのSET CURSOR †
PBO処理中では、その時点のDynproの画面レイアウトの中でカーソルが設定される。 カーソルの位置を指定するには、 FIELDの後にDynproエレメントを入力するか、オプションを使用して特定の位置を入力する。 PBO処理中でない場合は、次に画面上に表示される一覧の中でカーソルの位置が指定される。
SET CURSOR命令を指定しないと、PBOの定義に応じて、以下の階層に従ってカーソルが設定されることとなる。
1.Dynproプロパティで静的に決定されたカーソル位置 2.画面の第1入力項目 3.画面の第1Dynproエレメント 4.システムツールバーにある入力項目
なお、通常の選択画面の中でも利用可能で、AT SELECTION-SCREENで使ったりする。
サンプル †
基本形 †
SET CURSOR FIELD (項目名).
基本の「き」。
オプション †
SET CURSOR FIELD (項目名) LINE n.
テーブルコントロールの場合、LINEで行を指定する。
SET CURSOR FIELD (項目名) OFFSET n.
その項目の中でオフセットを指定する場合。
SET CURSOR (列) (行).
列と行を直接指定する場合。
用法~一覧画面でのSET CURSOR †
基本的には、上記Dynproの場合と使い方は一緒。 一覧画面が故の使い方のみ注記。
サンプル †
WRITE: / flag AS CHECKBOX, inp INPUT. SET CURSOR FIELD 'inp' LINE sy-linno.
Helpからのコピペ。
SET CURSOR LINE n MEMORY OFFSET m.
「MEMORYオプションと共にOFFSETを指定すると、一覧バッファ内で指定した位置にある文字上にカーソルが配置されます。」とのこと。
その他 †
画面処理に関連する命令は、SET SCREEN、CALL SCREEN、SET PF-STATUS、GET PF-STATUS、SET TITLEBAR、LOOP AT SCREEN、MODIFY SCREEN、SUPPRESS DIALOG、LEAVE TO SCREEN、GET CURSOR、SET HOLD DATA、CONTROLS、REFRESH CONROLなどがある。
コメントはありません。 Comments/ABAP/SET CURSOR