從 ABAP SAP 中的表或結構中獲取欄位


如果您需要識別結構中的欄位和欄位數量,那麼您應該使用執行時型別服務。在這種情況下,使用執行時型別服務更有意義,原因是,如果我們的環境中存在一些資料,那麼呼叫資料庫來獲取相同的資料並不是理想選擇。

DATA(structure) = VALUE <your structure>( )
DATA(Descriptor) = CAST cl_abap_structdescr( cl_abap_datadescr=>describe_by_data
                   (structure) )
DATA(Fields = LINES(Descriptor ->components ) 

這將為您提供表或結構的元件計數。

如果您不想使用執行時型別服務,也可以嘗試另一個選項。以下查詢可以得到您的計數

SELECT COUNT(*) INTO @data(count)
FROM DD03l (// this table stores the fields information of SAP tables)
WHERE tabname = <Structure name>
                AND AS4LOCAL = 'A'

更新日期:2020 年 2 月 14 日

3K+ 檢視

啟動你的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.