如何Call系统标准TCODE

本文介绍如何在自定义SAP程序中调用标准事务代码TCODE,并通过示例展示了具体的ABAP代码实现方法。此外,还讲解了如何确定PARAMETER ID的名称及其数量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  如何Call系统标准TCODE

 

经常用户会有需求,比如在自开发的报表中双击物料凭证号就可以进入到系统标准的物料凭证界面去,下面就是实现代码:

例子1:

FORM link_mb03  USING p_mblnr.
  IF p_mblnr IS NOT INITIAL.
    SET PARAMETER ID 'MBN' FIELD p_mblnr.
    CALL TRANSACTION 'MB03' AND SKIP FIRST SCREEN.
  ENDIF.
ENDFORM.   

 

例子2:

 FORM layout_init  CHANGING  is_layout  TYPE slis_layout_alv.
  is_layout-colwidth_optimize = 'X'" ALV¸  width
  is_layout-f2code = 'ZDET'.
ENDFORM.                    " layout_init

FORM eventtab_build  CHANGING   it_events   TYPE slis_t_event .
  DATA: ls_event TYPE slis_alv_event.
  MOVE 'USER_COMMAND' TO ls_event-name.
  MOVE 'USER_COMMAND' TO ls_event-form.
  APPEND ls_event TO it_events.
  CLEAR ls_event.
ENDFORM.                    "eventtab_build

 

 FORM user_command USING rf_ucomm    LIKE sy-ucomm
                        rs_selfield TYPE slis_selfield.
  CASE rf_ucomm.
    WHEN 'ZDET'.
      CASE rs_selfield-fieldname.
        WHEN 'LIFNR'.
          READ TABLE it_result INTO wa_result INDEX rs_selfield-tabindex.
          IF sy-subrc = 0.
            SET PARAMETER ID 'LIF' FIELD wa_result-lifnr .
            SET PARAMETER ID 'BUK' FIELD wa_result-bukrs .
            SET PARAMETER ID 'EKO' FIELD wa_result-ekorg .
            CALL TRANSACTION 'XK03'.
          ENDIF.
      ENDCASE.
  ENDCASE.
ENDFORM.                    "user_command

 

 

如何知道PARAMETER ID 的名字,及有几个PARAMETER ID ?

 

手工键入TCODE,在屏幕可能是或者需要PARAMETER ID 的地方(文本框等)按F1, 在其中的技术信息中如果有PARAMETER ID 一栏,说明有此PARAMETER ID ,那么文本框里的就是他的名字,在程序中直接给他赋值就好了。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值