通常我們聲明表字段作爲像下面的數據類型。ABAP動態地選擇表字段作爲數據類型
DATA:key TYPE VBAK-VBELN。
,但我想在聲明中動態地給字段名。 Like,
DATA:key TYPE VBAK- fieldname。
任何幫助?
通常我們聲明表字段作爲像下面的數據類型。ABAP動態地選擇表字段作爲數據類型
DATA:key TYPE VBAK-VBELN。
,但我想在聲明中動態地給字段名。 Like,
DATA:key TYPE VBAK- fieldname。
任何幫助?
你可以做到這一點很容易地,如果你使用任何類型的字段符號。
DATA: lt_line type vbak.
Field-Symbols: <dat> type any.
Assign component (fieldname) of Structure lt_line to <dat>.
如果你提供關於你正在嘗試做更多的信息,或許我可以提供一個更好的選擇:
然後,它是那樣簡單。
感謝您的幫助。它幫助了我。我也發佈了我的最終答案。 – user10 2013-03-12 05:54:43
在我的情況下,兩個表和字段名稱是未知的。所以這是我最終的解決方案。
DATA: T_REF TYPE REF TO DATA,
TAB(20) TYPE c VALUE 'VBAP',
TAB_COMP(20) TYPE c VALUE 'WERKS'.
FIELD-SYMBOLS: <T> TYPE ANY,
<COMP> TYPE ANY.
CREATE DATA T_REF TYPE (TAB).
ASSIGN T_REF->* TO <T>.
ASSIGN COMPONENT TAB_COMP OF STRUCTURE <T> TO <COMP>.
SELECT WERKS FROM VBAP INTO <COMP> UP TO 5 ROWS.
WRITE:/<COMP>.
ENDSELECT.
@vwegert我可以從我的用戶界面傳遞任何表中的任何字段。 – user10 2013-03-12 09:24:44
您能否嘗試描述爲什麼要動態聲明類型? – vwegert 2013-03-11 13:41:28
檢查了這一點,試圖獲得一個SAP堆棧交換開始http://area51.stackexchange.com/proposals/41621/sap-systems-applications-and-products – Jared 2013-03-13 16:31:53