ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 向其他屏幕栏位传递参数

向其他屏幕栏位传递参数

原创 Linux操作系统 作者:hzq2010 时间:2011-05-04 22:37:40 0 删除 编辑

向其他屏幕栏位传递参数

在项目中有时会用到A程序调用B程序,且需要A向B传递一定的参数输入到B程序的屏幕上,(B程序是用户自定义程序或者SAP标准程序)。

这样参数传递的方法,我用过的有三种:

1.BDC方式

批量导入数据的时候,经常使用这种方式,这种方式多是后台运行,一般不前台操作,因为这种录屏方式,是记录的操作的屏幕和鼠标点击序列,前台操作不当的话,程序就跑不动了。
不是批量导入的时候也可以。如果传的参数只是放到第一个屏幕上,也可以使用bdc方式,有的时候也特别好用,但是有的屏幕,BDC录屏的操作界面和正常操作的不太一样,这会让用户感觉不爽。
CALL TRANSACTION 'IE01'
                         USING BDCDATA MODE CTUMODE

2.submit方式

使用submit也可以向一个程序的屏幕栏位上传递参数,但它只能向report或program 传递参数,如果碰上MODULPOOL之类的,submit就搞不定了。

SUBMIT RQMELL30 WITH SELECTION-TABLE SELTAB
                      WITH DY_OFN EQ 'X'
                      WITH DY_IAR EQ 'X'
                       VIA SELECTION-SCREEN
                       AND RETURN.
RQMELL30是程序名,SELTAB是字段列表

3.set parameter ID方式

这是最好用的一种方式。如调用标准程序IE01,向设备栏位上传递设备号时,可以通过F1,tech info 查看此栏位的parameter ID,如下图

image

然后通过以下代码,就能将参数传递到相应栏位上。这是标准程序,如果是自己写的程序,可以通过SET PARAMETER ID和GET PARAMETER ID来做,PARAMETER ID自己定义。

SET PARAMETER ID 'EQN' FIELD EQUCODE.
  CALL TRANSACTION 'IE01'  .

call 标准事务码时, 有的屏幕的栏位只有SET PARAMETER ID,没有GET的设置,如IE01的这个屏幕,见下图

image

这样,就惨了,通过以上两句话,是没有办法将参数传递到对应栏位的,不过可以修改标准程序,把GET的那个勾打上,就OK了。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23495244/viewspace-694455/,如需转载,请注明出处,否则将追究法律责任。

下一篇: SapScript Form 语法
请登录后发表评论 登录
全部评论

注册时间:2010-03-11

  • 博文量
    196
  • 访问量
    168053