ABAP RANGES 在 RFC 的應用示例

2021-07-24 03:44:57 字數 1404 閱讀 2728

寫乙個rfc,在vk11下,把條件型別是z907的一些資料輸出。

在import下入參 定義2個

it_vkorglikea907-vkorg

銷售組織 

it_kunnrlike  a907-kunnr

客戶號 

當輸入it_vkogr 或者 it_kunnr 時,或者2個都輸入都能獲取到資料。 這個看似簡單的需求,我確花費了大概1天的時間。

其中卡就卡在:

第一,對ranges基本用法的不理解;

第二,沒有進行判斷就執行;

第三,對where條件後的 and 和 or 不了解。

下面看看最後正確的做法:

定義ranges

[plain]view plain

copy

ranges : s_vkorg for itab-vkorg,  

s_kunnr for itab-kunnr.  

if it_vkorg is not initial.  "一定要判斷輸入的值是否為空。  

s_vkorg-sign = 'i'.  

s_vkorg-option = 'eq'. " 如果option='eq'.後面就不需要high  

s_vkorg-low = it_vkorg.  

endif.  

[plain]view plain

copy

if it_kunnr is not initial.  

s_kunnr-sign = 'i'.  

s_kunnr-option = 'eq'.  

s_kunnr-low = it_kunnr.  

endif.  

在where 條件下用in 

[plain]view plain

copy

into corresponding fields of table itab  

from a907 as a join konp as b on  a~knumh = b~knumh  

where a~vkorg in s_vkorg  

and a~kunnr in s_kunnr.  

ranges知識:

ranges for .

該語句建立 選擇表 , 該錶參考數 據庫表的列 或內部字段 。選 擇表 必須在程式 中填充。不 必在程式中 再用 tables 語句宣告數 據庫表。

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

data: begin of occurs 10,

sign(1),

option(2)

low  like ,

high like ,

end of .

如何找到最新的RFC文件

最近需要看一下熟知埠對應的協議。看了一下rfc1060,覺得這個文件有點老了,就嘗試著找乙個新版本的。分享一下我是如何找到對應最新的rfc文件,這其實還是蠻重要的,畢竟有的時候rfc前後的差異還是有的。檢視rfc最權威的 是在iana的protocols子頁面下面有這樣乙個鏈結,如圖1所示 圖1 圖...

rfc方式 6 RFC,用於了解網際網路的工作方式

rfc方式 閱讀源 是開源軟體的重要組成部分。這意味著使用者可以檢視 並檢視其功能。這是一本快速閱讀的書,但是了解其他rfc非常重要。rfc 2119定義了後續rfc中使用的要求級別。may 的真正含義是什麼?如果標準說 應該 您真的必須這樣做嗎?通過為需求提供明確定義的分類法,rfc 2119有助...

RFC2119 表示要求的動詞

1.must 表示絕對要求這樣做。required或者shall,與之同義。2.must not 表示絕對不要求這樣做。shall not與之同義。3.should 表示一般情況下應該這樣做,但是在某些特定情況下可以忽視這個要求。recommended與之同義。4.should not 表示一般情況...