我已經聲明瞭具有引用數據類型的類型。所以它看起來像這樣ABAP,將類型引用指定爲數據
my_type type ref to data.
然後我聲明一個內部表,我想分配給my_type。
Data:
ref_data type my_type.
itable type it_table.
ref_data = itable.
爲什麼我不能分配給itable ref_data,是不是裁判的數據是一個通用的數據類型,並且可以被分配到什麼?
我已經聲明瞭具有引用數據類型的類型。所以它看起來像這樣ABAP,將類型引用指定爲數據
my_type type ref to data.
然後我聲明一個內部表,我想分配給my_type。
Data:
ref_data type my_type.
itable type it_table.
ref_data = itable.
爲什麼我不能分配給itable ref_data,是不是裁判的數據是一個通用的數據類型,並且可以被分配到什麼?
這不是數據引用的工作方式。數據引用必須鍵入,但在運行時鍵入它。
data: ref_data type ref to data.
data: itable type it_table.
"you access the data in a data reference via a field symbol
field-symbols: <dref> type any.
create data ref_data type it_table.
assign ref_data->* to <dref>.
<dref> = itable.
我現在在我的動態類型變量ref_data中有一個可用副本,由字段符號訪問。
這與其他編程語言非常相似,它不是鍵入變量或引用的問題。你正試圖給一個指針變量賦值 - 這在任何地方都不起作用。您需要使用GET REFERENCE OF itable INTO ref_data。