コンテンツフレーム起動

選択基準の基本書式 文書を SAP ライブラリストラクチャに組み込む

SELECT-OPTIONS 文を使用すると、選択テーブルを宣言し、対応する入力項目を、関連付けられた選択画面上に作成することができます。関連するテキストは、ストラクチャのリンク選択テキストとして修正できます。選択画面の処理時には、ユーザが入力項目に入力した値が選択テーブルのヘッダ行に割り当てられ、テーブルにアペンドされます。プログラムの宣言部分におけるこの文の位置によって、入力項目が属する選択画面が決まります。

SELECT-OPTIONS 文の基本書式は以下のとおりです。

SELECT-OPTIONS <seltab> FOR <f>.

この文は、プログラム内でローカルに宣言されている <f> 項目にリンクされた<seltab> 選択基準を宣言します。選択基準の名前は、現時点では 8 文字に制限されています。<f> の有効なデータ型は、F データ型を除く、すべての ABAP 基本型が該当します。F データ型、参照、および集約タイプは使用できません。選択基準を使用してデータベース選択を制限するには、<f> の宣言で、該当するデータベーステーブルの列を参照することをお奨めします。これで、ABAP ディクショナリですでに定義されたデータ型の全属性が継承されます。特に、ユーザは選択画面上で、これらの項目に対してディクショナリで定義された項目ヘルプ (F1) および入力可能値ヘルプ(F4) を利用できます。

選択テーブルは、選択基準と同じ名前 <seltab> であり、通常は選択画面でユーザによって設定されるか、または呼出元プログラムによって設定されます。選択テーブルは、プログラム内の他の内部テーブルと同様に処理することもできます。

例

REPORT DEMO.

DATA WA_CARRID TYPE SPFLI-CARRID.

SELECT-OPTIONS AIRLINE FOR WA_CARRID.

LOOP AT AIRLINE.
   WRITE: / 'SIGN:',   AIRLINE-SIGN,
           'OPTION:', AIRLINE-OPTION,
           'LOW:',    AIRLINE-LOW,
           'HIGH:',   AIRLINE-HIGH.

ENDLOOP.

実行可能プログラム DEMO が起動すると、次の標準選択画面が表示されます。

このグラフィックは添付のテキストに説明されています

2 つの入力項目と、選択基準の追加値を入力するための押ボタンが表示されます。ユーザが最初の入力項目に入力した値は、選択テーブルの AIRLINE-LOW コンポーネントに書き込まれます。ユーザが 2 番目の入力項目に入力した値は、選択テーブルの AIRLINE-HIGH コンポーネントに書き込まれます。

たとえば、ユーザが次のように入力したとします。

このグラフィックは添付のテキストに説明されています

出力結果は以下のとおりです。

SIGN: I OPTION: EQ LOW: AA HIGH:

ユーザが 2 番目の項目を空白のままにした場合 ( 単一項目比較)SIGN および OPTION のデフォルト設定は I および EQ となります。

たとえば、ユーザが次のように入力したとします。

このグラフィックは添付のテキストに説明されています

出力結果は以下のとおりです。

SIGN: I OPTION: BT LOW: AA  HIGH: LH

ユーザが 2 番目の項目に値を入力すると ( 範囲選択)SIGN および OPTION のデフォルト設定は I および BT となります。

より複雑な選択パターンを設定するには、ユーザは選択画面右側の このグラフィックは添付のテキストに説明されています  押ボタンを使用して、複合選択ウィンドウを表示し、以下の値を入力することができます。

このグラフィックは添付のテキストに説明されています

および

このグラフィックは添付のテキストに説明されています

ユーザが複合選択を採用した場合は、選択画面の矢印が緑色になり、複合選択が入力されたことを示します。

出力結果は次のとおりです。

SIGN: I OPTION: EQ LOW: AA HIGH:
SIGN: I OPTION: EQ LOW: AF HIGH:
SIGN: I OPTION: BT LOW: DL HIGH: LH
SIGN: I OPTION: BT LOW: SA HIGH: UA

複合選択の使用は、選択テーブルに複数行を追加することを意味します。

ユーザは複合選択として、排他基準を指定することもできます。

このグラフィックは添付のテキストに説明されています

および

このグラフィックは添付のテキストに説明されています

出力結果は次のとおりです。

SIGN: E OPTION: EQ LOW: FC HIGH:
SIGN: E OPTION: BT LOW: SQ HIGH: SR

排他基準が使用されると、選択テーブルの SIGN コンポーネントには値 E が設定されます。

SIGN および OPTION 値を明示的に設定するには、ユーザは選択画面または複合選択画面で、ダブルクリックまたは F2 の押下によって、該当する入力項目を選択する必要があります。

このグラフィックは添付のテキストに説明されています

ユーザは選択オプションの更新画面 ( 単一項目比較の場合は上図のように表示される) で、OPTION 項目の演算子を選択し、画面下の行では SIGN 項目の値を I または E に切り替えることができます。選択画面では、入力項目の左側の各記号により、選択の種類が示されます。

このグラフィックは添付のテキストに説明されています

これらの記号は、SIGN 項目の値が I の場合は緑色で表示されます。SIGN 項目の値が E の場合は、記号は赤色で表示されます。

この場合、一覧は次のように表示されます。

SIGN: E OPTION: GE LOW: AA HIGH:

 

 

 

 

 

コンテンツフレーム終了