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.
*查詢結果如下