DESCRIBE TABLE


DESCRIBE TABLE

語法:DESCRIBE TABLE itab [KIND knd] [LINES lin] [OCCURS n]

 

作用:判斷內表itab的某些屬性並把它們指定到指定的變量中。不同的選項使你能夠判斷表         類型,當前字段行數 和 初始化需要的內存大小。

另外,系統字段sy-tfill 和 sy-tleng 保存着當前表行數量 和 以字節計的表行長度。

 

注:

為了更詳細的關於內表的信息,應 用RTTS的方法代替語句describe table。

沒有指定一個附加項,語句describe table 只設置系統字段sy-tfill 和sy-tleng的值。

 

1.·····KIND knd

判斷內表itab的表類型,並把一個相應的字符的標識賦給字符型數據類型的數據對象knd。標識為T 時代表標准表,為S時代表排序表,為H時代表哈希表。

這些值在類型組SYDES中也被定義成常量sydes_kind-standed ,sydes_kind-sorted,sydes_kind-hashed。

 

例:在一個子程序中對一個一般內表進行遞減排序。因為排序表不能降序排列,所以會進          行表類型檢查來避免不能處理的異常。
              TYPE-POOLS sydes.
           ...
           FORM sort_descending CHANGING itab TYPE ANY TABLE.
             DATA tabkind(1) TYPE c.
             DESCRIBE TABLE itab KIND tabkind.
             IF tabkind = sydes_kind-standard OR
                tabkind = sydes_kind-hashed.
                SORT itab DESCENDING.
             ELSEIF tabkind = sydes_kind-sorted.
                MESSAGE '...' TYPE 'E'.
             ELSE.
                MESSAGE '...' TYPE 'E'.
             ENDIF.
           ENDFORM.

 

2.·····LINES lin

決定內表表行的當前數量並且把值賦給數據對象lin。

Lin為I類型的數據對象。

注:

在版本6.10中,內表表行的當前數量也可以用內建函數lines來判斷。

 

3.·····OCCURS n

在內表用選項initial size 或者 老式的選項ocurs創建期間決定內表所需要的初始化內存大小,並把值賦給數據對象n,n為I類型的數據對象。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM