一、MEMORY ID 基础
- 定义:ABAP 内存 ID(MEMORY ID)是 SAP 会话级的临时数据共享区域,类比电脑 “剪贴板”,用于同一 SAP 登录会话内跨程序共享数据,是 ABAP 中跨程序传递批量数据最便捷的方式。
- 核心关键字:
EXPORT:将数据 “存入” 内存 ID;IMPORT:从内存 ID “读取” 数据;FREE:清空指定内存 ID 的数据。
- 生命周期:仅存在于当前 SAP 会话(单个登录窗口),关闭窗口 / 登出 SAP 后,内存 ID 中的数据自动清空。
- 适用场景:当程序 A 需要调用程序 B,且要给 B 传递内表数据时,无需通过复杂参数传递,只需 A 先存数据到内存 ID,B 再读取即可EXPORT <数据对象名> FROM <源内表[]> TO MEMORY ID '<自定义内存ID>'.
IMPORT s_zrecv TO s_zrecv[] FROM MEMORY ID 'ZPRODUCT_ORDER_RECVSYS'.EXPORT <内存中数据名> FROM <源内表[]> TO MEMORY ID '<自定义内存ID>'.IMPORT <内存中数据名> TO <目标内表[]> FROM MEMORY ID '<自定义内存ID>'.