使用 SPA/GPA 参数(SAP 内存)(转载)

转载  http://jiahongguang12.blog.163.com/blog/static/33466572007112792756238/

这是在外部 程序之间传 送数据的最 常用方法。

使用 EXPORT/IMPORT 数据(ABAP/4 内存)

任何程序都 可以使用 EXPORT 语句在 ABAP/4 内存中存储数据字段簇 。因此,

该 数据就全局 有效(使用 IMPORT) ,在程序本 身中以及任 何被调事务 、

报表或其它模块中都 有效。使用 EXPORT:

    EXPORT ... TO MEMORY ID .

然后调用程 序就会检索 数据:

    IMPORT ... FROM MEMORY ID .

ID 参数标识唯 一的数据簇 。如果将同 一对象多次 输出到同一 ID,则会改写内存中

该簇的第一 个版本。如 果第二次输 出对象的子 集,则仍会 改写该组的 第一个版本

中的“所有 ”对象(不 仅是子集) 。

只有调用程 序和被调用 程序经常一 起使用时, 才用 EXPORT/IMPORT 实现参数传 送。

对于外部应用程序 可用的调用 程序不推荐 EXPORT/IMPORT, 因为这些应 用程序将根

本无法找到 调用所需的接口。

用 SPA/GPA 参数传送数 据

可使用 SPA/GPA 参数向被调 用的程序传 送数据。SPA/GPA 参数是全局 保存在内存

中的字段值 。每个参数 都用三个字 符代码标识 :通过选择 在第一个屏 幕上的“其

他对象”可 以在对象浏 览器中定义 这些参数。 SPA/GPA 存储器是用 户指定的并

在用户整个 会话期中都 有效。

有两种使用 SPA/GPA 参数的方法 :

    通过在“ 屏幕制作器 ” 中设置字段 属性

“SET 参数”、“ GET 参数”和“ 参数 ID”属性 告知系统是 向“参数 ID”存储

值还是从中 检索值。系 统使用这些值自动初始 化屏幕字段 值。

对调用屏幕 中给定字段 的“SET 参数”属性 以及被调用 屏幕中相应 字段的

“GET 参数”属性 进行标记。 系统会自动 将字段内容 从调用事务 传送给它所

触发的事务 中。

    通过使用 SET PARAMETER 或 GET PARAMETER 语句

用这些语句 可以存储和 检索来自 ABAP/4 程序的 SPA/GPA 值。如果两 个事务的选

择屏幕没有 共享同一必 需的字段, 则请使用这 些语句按名 称显式存储 屏幕字段。

在从 PAI 模块调用新 事务之前, 用一个名称 之下存储调 用程序事务 的字段:

    SET PARAMETER ID 'RID' FIELD .

系统将值存 储在 SPA 参数‘RID’ 中的 <字段 1> 中。三 个字符的标 识符‘RID’

必须在 SAP 表 TPARA 中定义。如 果 SPA 参数‘RID’ 已经包含值,

则 SET PARAMETER 语句会将其 改写掉(用 的 内容)。

在被调事务 的 PBO 模块中,在 其他名称下 检索字段:

    GET PARAMTER ID 'RID' FIELD .

系统读取‘ RID’的 内容并将其 传送给 。

例如,假定 要将屏幕字 段和其它数 据从调用事 务传送给被 调用事务。

调用事务可 以将某些值 存储在 SPA 参数中:

        SET PARAMETER ID 'RID' FIELD REPORTID.

        CALL TRANSACTION 'SE38'.

然后,被调 事务即可在 PBO 获取信息, 以便将其显 示到屏幕上 。

此处将出 现事务 SE38 的初始屏幕 ,其报表 ID 已填好。这 在使用

CALL TRANSACTION AND SKIP FIRST SCREEN 时非常有用 。除非所需 的字段值由

内存提供,否则不能取 消第一个屏 幕。

 

 

 

自我延伸: get parameter 再 call transation 后很有用,不用 在bdc 后 去调用那个messagetable了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值