選択画面プログラムの構文
1.パラメータ(1.6を参照)
SSCRFIELDSは、画面上のフィールドを選択しました
COMMAND-FCodeのUSER :プッシュボタンで前加工することができ、マスト。TABLESのsscrfields文構造は、ワークスペースを定義するSSCRFIELDS ABAP辞書データインターフェイスです。ユーザがボタントリガAT SELECTION-SCREENイベント、およびコード機能をクリックしたとき のFCodeは sscrfields-UCOMMのフィールドに格納されます。
パラメータ:A1(10)TYPE C、
A2 TYPE I.
WRITE:/ A1、/ A2。
2.SELECT-OPTIONS
SELECT-OPTIONSはselcrit {|(名)dobj}の
[ screen_options ]
[ value_options ]
[ ldb_options ]。
リットルのscreen_options
... [義務| NO-DISPLAY]
[VISIBLE LENGTH VLEN]
[NO-EXTENSION] "リミット選択テーブルの単一ラインに、input要素はボタンの後ろに表示されません。
[NO INTERVALS] "フィールドは、LOWを表示され、
[MODIF ID MODID ] .... 選択画面パラメータオプションで メモリIDの関数に相当するダイアログ画面効果であるSETに/ GETパラメータは、同じである(両方のSAPメモリ用)、選択画面を除き、ダイアログ画面のため。
リットルのvalue_options
... [DEFAULTのVAL1 [TOとval2] [OPTIONオプト] [SIGN SGN]]
[LOWER CASE]
[マッチコードオブジェクトのsearch_help]
[MEMORY IDは、PID] ...。
SELECT-OPTIONS {dobj |(名)}のselcrit
文は行以下の条件テーブル内で選択名付けselcrit、グローバルテーブル構造の種類を生成します。
DATAは:BEGIN selcritが原因で発生0、
サイン(1)、「Cサイン長フィールドは、1ビットのフラグ、許可される値であるデータ型であるザIおよびEの
オプション(2)、」データタイプオプションフィールドがCであり、長さは、「オペレータ選択含むOPTION 2、である
低MATNR LIKEマラ、同じタイプの低Fフィールドのデータタイプは、値の範囲が選択され、下限指定されている
同じデータタイプフィールドタイプHIGH F、MARA-MATNR LIKEハイ」値の範囲を選択し、上限指定さ
selcritの終了を。
構文例:
FOR s_werks 1007 SIGN IのOPTION BTにOBLIGATORY DEFAULT 1001 MARC-WERKS
3.SELECT-SCREEN。
SELECTION-SCREEN - 画面のBEGIN。
- 1. SELECTION-SCREENは、画面dynnr [TITLEタイトル] OF BEGIN
[ウィンドウとして]。
SCREENのdynnr OF SELECTION-SCREENのEND - SELECTION-SCREENは、AS SUBSCREEN dynnr画面のBEGIN
[NO間隔は】创建的框架中限制選択只有一个输入项
[ネスティング・レベルN]。それに含まれるべきである場合従属の幅を調整タブストリップコントロール 1つ以上のフレームで。あなたは0と4の間の数nとして直接指定する必要があります。
SCREENのdynnr OF SELECTION-SCREENのEND。
SELECTION-SCREEN - screen_elements
1. 選択画面-SKIP [N] [ldb_additions]。空間のn行
2 選択画面-ULINE [/] [POS](LEN)] [MODIF ID MODID]
[ldb_additions]。位置と長さ、水平線を描画しますそれは、ブロック効果を使用しなければならない
。3. 選択画面-COMMENT [/] [POS](LEN)
| {FIELD SEL FOR {[テキスト]}テキスト}
[LENGTH VLEN VISIBLE]
[MODIF ID MODID]
[ldb_additions]。
4。 。選択画面の押ボタン、[/] [POS](LEN)BUTTON_TEXT位置と長さ、名前
、ユーザCOMMAND UCOM指定された文字コードときにユーザ選択画面上のトリガーボタン
[VISIBLE長VLEN]
【MODIF ID MODID]
[ldb_additions]。
5. SELECTION-SCREEN BEGIN。ライン。行に生成された画面の制御要素。
[SELECTION-SCREENの位置posは[ldb_additions ]。 でBLOCK空間で生成されます。
END。LINE-SCREENの選択。
6. BEGIN選択画面OF-ブロックブロック
[フレーム[TITLEタイトル]タイトルフレームと
[NO INTERVALS]。
選択画面END。OF-BLOCKブロック。
7. BEGIN選択画面OF-BLOCK TBLOCKタブN-LINES FOR。
...
選択画面-TAB(LEN)USER-COMMANDタブUCOM
[DEFAULT [プログラムprog] SCREENのdynnr]。
...
ブロックTBLOCK OF SELECTION-SCREENのEND。
8. SELECTION-SCREENファンクションキーN [ldb_additions]。アプリケーションツールバーには 5非アクティブ含まれ、プッシュボタン、機能コードFC05にFC01が割り当てられているが。この文は、機能コードの押ボタン活性化FC0nの間の値となる、1及び5は、 nに入力する必要があります。
構文例:
例1:
SELECTION-SCREEN SUBSCREENように、画面100のBEGIN。
パラメータ:P1 C型LENGTH 10、
P2 C型LENGTH 10、
P3 C型LENGTH 10
SCREEN 100のSELECTION-SCREEN端
SELECTION-SCREEN画面200 AS SUBSCREEN OF BEGIN。
パラメータ:Q1 C型LENGTH 10、
Q2 C型LENGTH 10、
Q3 C型LENGTH 10
SCREEN 200のSELECTION-SCREEN端
SELECTION-SCREEN:10ライン分のタブブロックMyタブOF BEGIN、
TAB(20)のButton1のUSER-COMMAND PUSH1 、
TAB(20)ボタン2 USER-COMMANDのPUSH2、
ブロックMyタブの終わり。
初期化。
ボタン1 =「選択画面1」。
ボタン2 =「選択画面2」。
Myタブ-PROG = SY-REPID。
Myタブ-dynnr = 100
Myタブ-activetab = 'PUSH1'。
AT SELECTION-SCREEN。
CASEのSY-dynnr。「当前屏幕号
WHEN 1000
CASEのSY-UCOMM。
WHEN 'PUSH1'。
Myタブ-dynnr = 100
WHEN 'PUSH2'。
Myタブ-dynnr = 200
OTHERS。
ENDCASE。
ENDCASE。
例2:
TYPE-POOLSアイコン。
TABLESのsscrfields。「选择屏幕上的字段
データfunctxtタイプsmp_dyntxt。「动态文本的程序接口
パラメータ:p_carrid TYPEのs_carr_id、
p_cityfr TYPEのs_from_cit。
SELECTION-SCREEN:ファンクションキー1、「FC01
ファンクションキー2.「FC02
初期化。
functxt-icon_id = icon_ws_plane。
functxt-quickinfo = '事前に選択された運送人。
functxt-icon_text = 'LH'。
sscrfields-functxt_01 = functxt。
functxt-icon_text = 'UA'。
sscrfields-functxt_02 = functxt。
AT SELECTION-SCREEN。
CASEのsscrfields-UCOMM。
WHEN 'FC01'。
p_carrid = 'LH'。
p_cityfr = 'フランクフルト'。
WHEN 'FC02'。
p_carrid = 'UA'。
p_cityfr = 'シカゴ'。
WHEN OTHERS。
ENDCASE。
SELECTION-SCREEN INCLUDE
(既存の画面要素を呼び出します)
PARAMETERSのパラ
[OBLIGATORY [OFF]
[MODIF ID MODID]
[ID番号]。
SELECT-OPTIONSのselcrit
[OBLIGATORY [OFF]
[NO INTERVALS [OFF]
[NO-EXTENSIONS
[OFF]
[MODIF ID MODID]
[ID番号]。
COMMENT [/] [POS](LEN)テキスト
[FIELDのSEL FOR]
[MODIF ID MODID]
[ID番号]。
プッシュボタン[/] [POS](LEN)BUTTON_TEXT
[USER-COMMAND UCOM]
[MODIF ID MODID]
[ID番号]。
ブロックは、[ID番号をブロック。
構文例:
SELECTION-SCREEN:BLOCKブロックのBEGIN、
COMMENT / 1(40)テキスト、
ULINE。
パラメータ:P1(10)C型、
P2(10)C型、
P3(10)タイプC。
BLOCKブロックのSELECTION-SCREENのEND。
SELECTION-SCREEN:ウィンドウとして画面500のBEGIN
ブロックブロック、INCLUDE
SCREEN 500のEND
初期化。
テキスト=「標準の選択」。
START-OF-SELECTION。
CALL SELECTION-SCREEN '0500'「10 10で始まる调用屏幕
CALL SELECTION-SCREEN
CALL SELECTION-SCREENのdynnr
[COL1 LIN1から始まるは、
[COL2 LIN2]で終了]
[SELECTION-SET変異体を用いました]。
STARTINGのCALL SELECTION-SCREEN '0500' 10 10 "AT 通話画面
AT SELECTION-SCREEN
PAIは、輸送、F8、F1、F4及び他のイベントに応答して、選択画面の後に、処理されます。
(1)変数はローカル変数を宣言している選択画面イベント、。
(2)チェックSY-UCOMMは、ユーザコマンドを決定します。
(3)この事件を受けて、検査の有効性は、画面のフィールド上で実行されることができますが、選択画面を変更することはできません。
{OUTPUT} コントロール(PBO処理は、各画面の選択画面要素値の前に呼び出された画面が出力され、応答画面に入射し、ユーザ入力またはF8も呼ばれた後、修正画面によって選択画面のフィールドを修正することができます)
| {{パラON |}} selcrit特定入力フィールドをチェックする完全または正確です
| {ON selcrit OF END}
|} {ON BLOCKブロックのトリガ・イベント・フレームワーク(画面の制御入力要素値のフレームワーク)
| RADIOBUTTON GROUPラディ} {ONラジオボタンイベント、あなたが全体的な検査を入力する必要があります
| {}
| { VALUEのREQUEST- | {-the REQUEST HELP ON}値- <F4>トリガーキーヘルプ-結合<フロリダ>
| FOR {パラ| selcrit低 | selcrit高}}は、特定の入力フィールドのチェックが完了または正しいです
| { EXIT-COMMAND} ON応答"BACK"、 "キャンセル"、 "EXIT" の他のイベント
構文例:
パラメータは、TYPEのSPFLI-CARRIDをp_carrid。
p_carrid ON AT SELECTION-SCREEN。
p_carridはINITIALされた場合。