SAP ABAP RANGES語句用法

2021-07-24 07:14:29 字數 2843 閱讀 2942

ranges

語句:要用與選擇表相同的結構建立內錶

,可使用

ranges語句,

如下所示

語法

ranges for .

該語句建立選擇表

,該錶參考資料庫表的列

或內部字段

。選擇表必須在程式中填充。不必在程式中再用tables語句宣告資料庫表。

ranges

語句是下列語句的短格式:

data: begin of occurs 10,

sign(1),

option(2)

lowlike ,

high like ,

end of .

用ranges建立的內錶與選擇表結構相同,但功能不同。

用ranges語句建立的選擇表: ø

不是選擇螢幕的一部分:它們在程式中不能用於資料傳遞,該程式由下列語句啟動:

submit with in .

請注意,表

可以在呼叫程式中用

ranges

建立(參見《呼叫報表》)。

ø不與資料庫表相鏈結。這意味著:

ü它們不被傳遞給連線資料庫(參見《

自定義選擇標準與邏輯資料庫》)。

ü它們不能與邏輯表示式的短格式一起使用(參見《

在邏輯表示式中使用選擇表》) ü

它們不能與《在

get事件中與

check

語句一起使用選擇表

》中描述的變體

check select-options

一起使用。

您可以象使用真正的選擇表一樣在開放式sql語句的where子句中和在帶in引數(參見《使用報表的選擇標準》)的邏輯表示式中使用這些內錶。

ranges s_carrid for spfli-carrid.

s_carrid-sign

= 'i'.

s_carrid-option = 'eq'.

s_carrid-low

= 'lh'.

該示例中,內錶

s_carrid

按選擇表的結構建立,並參考資料庫表spfli的列carrid。欄位s_carrid-low和s_carrid-high具有相同的型別carrid。內錶s_carrid的表頭行被填充並新增到表中。表中定義的選擇條件與下列邏輯表示式的功能相同:

spfli-carrid eq 'lh'

選擇表:

系統為每個select-options語句建立選擇表。選擇表的目的是按標準化的方式儲存復合選擇限制。它們可按多種方式使用。它們的主要目的是使用open sql語句的where子句(參見《使用報表的選擇標準》)把選擇標準直接傳輸到資料庫表。

選擇表是乙個帶表頭行的內錶。它的行結構是字段字串,由四個元件構成,即sign、option、low和high。每個選擇錶行表示資料選擇的條件:

øsign

:sign

的資料型別是c,

長度為1

。sign

是標誌,

表示儲存在

option

中的運算子是否需要翻轉。允許值是i和e。üi

表示「包含」(包含標準-運算子不翻轉) ü

e表示「排除」(排除標準-運算子翻轉) ø

option

:option的資料型別是c,長度為2。option包含選擇運算子。如果sign包含e,運算子的作用就象它的前面有not(有關not的詳細資訊,參見《組合幾個邏輯表示式》)一樣。下列運算子是可用的:ü如果

high

是空的,

您可以使用eq、

ne、gt、

le、lt、

cp和np。

這些運算子在《程式設計邏輯表示式》中描述。運算子cp和np沒有它們在通常邏輯表示式中所具有的範圍。只有當在輸入欄位中使用了萬用字元(「*」或「+」)時它們才是有效的。沒有定義退出符號。ü如果

high

已被填充,則可以使用

bt(位於)和

nb(不位於

)。這些運算子的功能與

between

和not between一樣(

參見《檢查字段是否屬於某一範圍》)

。ølow:low的資料型別與資料庫表的列型別相同,該錶與選擇標準相連線。ü如果

high

為空,low的內容定義單值選擇。它與option中的運算子相結合,為資料庫選擇指定了條件。ü如果

high

已填充,low和high中的內容為間隔選擇指定上界和下界。與option中的運算子相結合,該間隔為資料庫選擇指定了條件。

øhigh

:high的資料型別與資料庫表的列型別相同,該錶與選擇標準相連線。high中的內容為間隔選擇指定了上界。與option中的運算子相結合,該間隔為資料庫選擇指定了條件。

如果選擇表包含多行,系統將按下列規則執行資料選擇:

ø組成在sign字段值為i(包含)的行上定義的集合聯合。

ø去掉在sign字段值為e(排除)的行上定義的集合聯合。

ø選擇結果集合。

如果選擇表只具有sign欄位等於e的行,系統將選擇這些行所指定的集合之外的所有資料。

除了用select-options

語句建立選擇表

,您可以用在

《建立和處理內錶

》中描述的語句或

ranges語句,

按相同的結構建立內錶。這些表可以用與

select-options

語句建立的真正的選擇表相似方法使用

,但是有限制。

有關ranges

語句的詳細資訊

,參見《

ranges

語句》

語句 switch語句

switch語句的特點如下 1 switch x 被選擇的內容 即x 只能是byte,short,int,char這四種型別 2 備選答案並沒有指定的順序,但是執行肯定是從第乙個case開始的,如果其中有匹配的case,執行完,通過該case的break就結束了switch。如果沒有匹配的case,...

Python while語句,for語句

usr bin python coding utf 8 filename whiletest.py num 23running true while running i int raw input input a number if i num print right running false e...

迴圈for語句 if語句

if語句 if 表示式 else if 表示式 for迴圈 for var i 0 i 10 i if語句 if 表示式 else if 表示式 for迴圈 for var i 0 i 10 i while迴圈 while 表示式 使用場景 for 次數確定的時候使用 while 直到滿足摸個條件的...