Abap 错误:字段“;S_MARA-MATNR“;在FOR语句期间是未知的

Abap 错误:字段“;S_MARA-MATNR“;在FOR语句期间是未知的,abap,Abap,我试图使用FOR statement实现一个类似的代码,但是我得到一个错误,该字段在工作区中是未知的,即使它将被声明为内联的 你能告诉我出了什么问题吗?这是我第一次在FOR循环中遇到此错误。不确定,因为您没有提供太多详细信息,请尝试以下操作: DATA: t_mara type STANDARD TABLE OF mara WITH EMPTY KEY. DATA(t_data1) = VALUE ty_data( FOR s_mara IN t_mara ( s_mara–matnr ) ).

我试图使用
FOR statement
实现一个类似的代码,但是我得到一个错误,该字段在工作区中是未知的,即使它将被声明为内联的


你能告诉我出了什么问题吗?这是我第一次在FOR循环中遇到此错误。

不确定,因为您没有提供太多详细信息,请尝试以下操作:

DATA: t_mara type STANDARD TABLE OF mara WITH EMPTY KEY.
DATA(t_data1) = VALUE ty_data( FOR s_mara IN t_mara ( s_mara–matnr ) ).

不确定,因为您没有提供太多细节,但请尝试以下方法:

DATA: t_mara type STANDARD TABLE OF mara WITH EMPTY KEY.
DATA(t_data1) = VALUE ty_data( FOR s_mara IN t_mara ( s_mara–matnr ) ).

只需发布一个最小的工作示例和准确的错误消息。只需发布一个最小的工作示例和准确的错误消息。作为记录,问题代码中缺少的是
matnr=
部分。FOR语句需要知道映射到
s\u mara-matnr
t\u data1
的列。是的,这就是问题所在。我错过了表数据选择的映射字段。问题解决了。在我的代码中使用新语法真是太好了。@RaviRishie接受答案让人高兴:)请记住,问题中的代码缺少的是
matnr=
部分。FOR语句需要知道映射到
s\u mara-matnr
t\u data1
的列。是的,这就是问题所在。我错过了表数据选择的映射字段。问题解决了。在我的代码中使用新语法真是太好了。@RaviRishie接受答案让人高兴:)