ALV中双击调用Transaction VA22

本文介绍了如何在ALV报告中实现双击某字段调用Transaction VA22,通过VBAK-VBELN获取Quotation并直接进入修改详情界面。详细步骤包括调用标准FM和实现子程序,以及常见参数ID的说明。

今天刚做完一个ALV的report,逻辑结构比较简单,其中一个要求是实现ALV中双击某一字段调用一个Tcode。

改功能比较简单,google一下相关的过程,例子介绍比较详细,我实现该过程也算是比较顺利,但是其中一个小问题,让我花费了较多的时间。

下面就copy和说明一下我的实现过程。通过VBAK-VBELN(这里Document Type是B:Quotation),调用VA22,并且直接进入该Quoatation 的change details界面。

1.调用Standard FM

call function 'REUSE_ALV_GRID_DISPLAY'
    exporting
      i_callback_program        = sy-repid
      i_save                                   = 'A'
      it_fieldcat                             = v_fieldcat
"USER_COMMAND是Double Click Subroutine Form
      i_callback_user_command   = 'USER_COMMAND'          
    tables
      t_outtab                              = i_output[]
    exceptions
      program_error                    = 1
      others                                 = 2.

2. 实现Subroutine Form

form user_command using r_ucomm like sy-ucomm  re_selfield type slis_selfield.
  case r_ucomm.
"这里的 '&IC1'是Standard double click event,直接使用就可以了    when '&IC1'.
      if re_selfield-fieldname = 'VBELN'.
        read table i_output index re_selfield-tabindex.
        if sy-subrc = 0.
"这里的parameter id的比较快捷的方式是google一下,当然在VA22界面在Quotation 输入框F1就出来了
          set parameter id 'AGN' field re_selfield-value.
          call transaction 'VA22' and skip first screen.
        endif.
      endif.
  endcase.
endform.

下面附上常用的parameter id值:

  • AFN - Inquiry number
  • AGN - Quotation number
  • AUN - Order number
  • LPN - Scheduling agreement number
  • KTN - Contract number
  • AMN - Assortment number

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值