1.SELECT-OPTIONS基本文法及定義
SELECT-OPTIONS通常用于參照一資料庫字段來建立資料輸入域,其定義對象命名長度不能超過8位,其産生的螢幕對象最大輸入長度為18位,文法如下:
SELECT-OPTIONS <sel> FOR <f>.
[For Example]
SELECT-OPTIONS:DATA FOR SY-DATUM.
*運作界面如下:

SELECT-OPTIONS内表結構:
名稱
參考值
描述
SIGN
I或者E
輸入類型,顯示圖示顔色會有所不同
OPTION
EQ,NE,CP,NP,GE,LT,LE,GT
表示前後輸入欄關系,EQ(等于),NE(不等于),CP(參考判斷格式,如"ABC*"),NP(排除參考格式),LT(小于),LE(小于或者等于),GT(大于),GE(大于或者等于)
LOW
輸入欄前字段
HIGH
輸入欄後字段
2.SELECT-OPTIONS的文法擴充
(1)預設值的設定
...DEFAULT g:定義單一預設值。
...DEFAULT g...OPTION xxx ... SIGN s:定義含判斷條件的單一預設值。
...DEFAULT g TO h:定義預設值的取值範圍。
...DEFAULT g TO h ... OPTION op ... SIGN s:設定預設值的聚會範圍及判斷條件。
建立一個SELECT-OPTIONS螢幕,預設值前一位等于“1”,如下:
SELECT-OPTIONS:mymatnr FOR MARA-matnr DEFAULT '1*' OPTION CP SIGN E.
*運作界面如下:
(2)...MEMORY ID pid:将SELECT-OPTIONS配置設定參數名并存儲在SAP記憶體,參數名長度不能超過三位。
(3)...NO-DISPLAY:将SELECT-OPTIONS設定為隐藏,不會在螢幕上輸出。
(4)...LOWER CASE:輸入值中不允許輸入小寫字元,否則會自動轉換為大寫。
(5)...OBLIGATORY:限制該SELECT-OPTIONS為必須輸入的項目,執行中系統會提示。
(6)...NO-EXTENSION:限制該SELECT-OPTIONS隻能輸入一行資料,輸入多行按鈕(上圖最右邊按鈕)被隐藏。
(7)...VISIBLE LENGTH vlen:定義所顯示資料的長度。
Open SQL可以直接調用SELECT-OPTIONS中輸入值作為參數。如下所示:
SELECT-OPTIONS:matnr FOR MARA-matnr OBLIGATORY NO INTERVALS.
SELECT SINGLE * INTO MARA FROM MARA WHERE MATNR IN matnr.
WRITE MARA-matnr.
*查詢結果如下