2016-03-15 43 views
1

這是一個給你。如何使用新語法的VALUE關鍵字創建簡單類型的值?

可以使用VALUE句子創建初始值。

DATA(l_value) = VALUE char4(). 

但似乎沒有可能使用相同的方法創建一個具體的。

DATA(l_value) = VALUE char4('AAA'). 

我收到以下語法錯誤。

類型「C」不是結構。

任何提示?如何使用VALUE關鍵字創建簡單類型的值?

回答

2

你不能。
documentation明確地指定

基本數據類型和引用類型不能與VALUE顯式指定爲構建值創建的初始值時除外。

因此,在基本數據類型中使用VALUE的唯一正確用例是分配初始值。對於設定具體的值必須使用NEW操作:

DATA(l_value) = NEW char4('AAA'). 

雖然,這將是一個對象,而不是變量。

+0

嘿,suncatcher。你仍然有時間再次查看縮減表子集? – icbytes

+0

@icbytes,我在評論中告訴過你,我不知道原因。我建議你對常用的數據集進行廣泛的測試,而不是你引用的那些奇怪的QM BAPI結構。 – Suncatcher

+0

這不是大聲的原因。但是,無論有些結構可能會有多大,無論多久都沒有更好的選擇,或者只要客戶命名空間中的重新創建輪子耗費時間,您總是必須儘可能接近SAP標準。 – icbytes

-1

我無法清楚地理解你的問題,但是如果你想在聲明它時給任何變量一個初始值,那麼你可以使用'value'關鍵字。

data l_value type c value'A'。

+0

這不會以任何方式回答問題。它是關於新的ABAP語法中的'VALUE'關鍵字。 – Jagger

相關問題