Abap SAP读取功能模块中的结构导入参数
我是SAP ABAP新手,希望实现以下目标:我有一个自定义的Z函数模块(SE37),它应该有一个表作为导入参数。我想在代码中读取/循环这个表,解析值并将其传递回导出参数(也是[same]表)。 到目前为止我所做的:Abap SAP读取功能模块中的结构导入参数,abap,function-module,Abap,Function Module,我是SAP ABAP新手,希望实现以下目标:我有一个自定义的Z函数模块(SE37),它应该有一个表作为导入参数。我想在代码中读取/循环这个表,解析值并将其传递回导出参数(也是[same]表)。 到目前为止我所做的: 在SE11中,我创建了一个包含所有必填字段的结构ZCOLLECTSTRUCT 同样在SE11中,我创建了一个新的表类型ZCOLLECTTYPE,它引用了这个结构 在导入参数的功能模块中,我输入了类型ZCOLLECTTYPE 现在我想循环这个表的条目(将通过RFC调用传递给函数模块
- 在SE11中,我创建了一个包含所有必填字段的结构
ZCOLLECTSTRUCT
- 同样在SE11中,我创建了一个新的表类型
,它引用了这个结构ZCOLLECTTYPE
- 在导入参数的功能模块中,我输入了
类型ZCOLLECTTYPE
DATA: itabImport LIKE ZCOLLECTTYPE.
DATA: itabExport LIKE ZCOLLECTTYPE.
DATA: wa_itabImport TYPE ZCOLLECTTYPE.
DATA: wa_itabExport TYPE ZCOLLECTTYPE.
loop at itabImport into wa_itabImport.
MOVE-CORRESPONDING itabImport TO itabExport.
APPEND wa_itabExport.
endloop.
欣赏任何见解
编辑:
我不知道如何从导入参数表到内部表中获取数据(值)。
从这里开始:
对于我的
itabImport
?导入参数就像变量一样。你能行
itabImport = import_batch.
或者完全避免使用itabImport
LOOP AT import_batch INTO wa_itabImport.
请注意,您的工作区域需要使用结构类型,而不是表格类型:
DATA: wa_itabImport TYPE ZCOLLECTSTRUCT.
DATA: wa_itabExport TYPE ZCOLLECTSTRUCT.
在您的功能模块中使用类似的功能
LOOP AT import_batch INTO DATA(wa_itab).
不要费心打字。你能解释一下你现在得到了什么,你期望得到什么,你不理解什么吗?请提供一个最小的可复制示例(参见StackOverflow帮助)。目前,功能模块的上下文是多余的,您的问题只是内部表之间的纯ABAP传输。是的,在上面的代码中,缺少从导入参数表获取数据的部分(将由用户在RFC调用时分别填写)到内部表。在上面添加了更多信息。一个参数将像变量一样处理:
导入时循环…
这是您感兴趣的答案吗?是的,谢谢。不幸的是,如果使用LOOP语句,会出现以下错误:WA_ITABIMPORT无法转换为“IMPORT_BATCH”的行类型。也不可能反转。
。而且:WA_ITABIMPORT是一个没有标题行的表,因此没有组件NODEREF。
如果我想访问循环中工作区的字段。在我的回答中包含注释。您的类型定义是错误的。使用ZCOLLECTSTRUCT
键入wa_
s,而不是ZCOLLECTTYPE
。