介绍一个使用 cl_abap_corresponding 进行两个内表不同名称字段赋值的快捷方法

简介: 介绍一个使用 cl_abap_corresponding 进行两个内表不同名称字段赋值的快捷方法

假设我们有两个 ABAP 内表,每个内表分别包含 a, b 和 a’, b’ 字段。


我们希望把内表1 的 a 和 b 字段,分别赋给内表2 的 a’ 和 b’ 字段。因为字段名称不相同,所以无法使用 MOVE-CORRESPONDING.


image.png


传统的做法,是写一个 LOOP,在循环体内,手动把表1每一行的字段a,赋给表2每一行的字段a’:



image.png

其实有一种更简单高效的方法。


使用 cl_abap_corresponding,创建一个映射表,这个映射表,指定如下规则:


将内表的字段值 focus_language ,赋给另一个内表的 focus_area 字段。

将内表的字段值 salary,赋给另一个内表的 salary_plus_bonous.

image.png


create 方法传入这个映射表,返回一个执行器。调用该执行器的 execute 方法,指定需要进行字段赋值的源内表和目标内表,赋值操作就自动完成了,无需开发人员手动使用 LOOP 赋值。


Execute 方法是在 ABAP 内核中完成的,比在 ABAP 应用中使用 LOOP 要高效。image.png


image.pngimage.png

相关文章
|
存储 XML BI
SAP ABAP 标准表和其字段的命名规则讲解
SAP ABAP 标准表和其字段的命名规则讲解
|
5月前
|
监控
介绍一种不使用 SM50 来调试 ABAP workflow 的方法
介绍一种不使用 SM50 来调试 ABAP workflow 的方法
|
5月前
|
开发者 UED
ABAP Dynpro 编程里 groups 字段的作用介绍
ABAP Dynpro 编程里 groups 字段的作用介绍
|
开发者
SAP ABAP 中,if_http_extension 接口的flow_rc 字段含义
SAP ABAP 中,if_http_extension 接口的flow_rc 字段含义
|
存储 数据库
ABAP 数据库表 Size Category 字段的准确含义
ABAP 数据库表 Size Category 字段的准确含义
|
5月前
|
存储
ABAP 代码从十进制转二进制的方法
ABAP 代码从十进制转二进制的方法
|
5月前
|
存储
Google Gemini 对于 CL_ABAP_CONV_IN_CE 类中的 UCCP 方法解释,完全不能看
Google Gemini 对于 CL_ABAP_CONV_IN_CE 类中的 UCCP 方法解释,完全不能看
|
5月前
|
BI
如何获取一个 ABAP 类所有方法源代码行数的列表试读版
如何获取一个 ABAP 类所有方法源代码行数的列表试读版
|
5月前
|
存储 数据库
SAP ABAP 里如何高效找到修改某个数据库表字段的 ABAP 程序的三种思路介绍试读版
SAP ABAP 里如何高效找到修改某个数据库表字段的 ABAP 程序的三种思路介绍试读版
|
11月前
|
JSON JavaScript 前端开发
一种在 ABAP 端扩展 SAP Fiori 应用的方法介绍
一种在 ABAP 端扩展 SAP Fiori 应用的方法介绍
下一篇
无影云桌面