【点击跳转事件用法】

用户希望点击ALV报表上某个字段值跳转到详情界面,如点击工单号跳转到CO03工单详情界面,点击采购编号跳转到ME23N查看采购订单详情界面

步骤

1.在fieldcat设置热点效果,不设置也行
在这里插入图片描述
在这里插入图片描述
为AUFNR字段的热点属性赋值
在这里插入图片描述
实现效果:
在这里插入图片描述
2.点击跳转事件
在USER_COMMAND事件中设置断点
在这里插入图片描述
点击工单号进入DEBUG,可以看到p_ucomm参数的值
在这里插入图片描述
2.编写用户操作
p_rs_selfield-fieldname 赋值为字段名称;
进入co03在需要的字段处按F1,查看技术信息中该字段的参数ID;
在这里插入图片描述
AND SKIP FIRST SCREEN能够跳过输入工单号直接执行程序
代码如下:

FORM frm_user_command USING p_ucomm TYPE sy-ucomm
      p_rs_selfield TYPE slis_selfield.

  DATA:
        ls_grid     TYPE REF TO cl_gui_alv_grid.         "GRID定义
* 取得屏幕更新数据
  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
    IMPORTING
      e_grid = ls_grid.
  CALL METHOD ls_grid->check_changed_data.

  CASE p_ucomm.
    WHEN '&IC1'."用户在表格上做了操作
      IF p_rs_selfield-fieldname = 'AUFNR'.
        SET PARAMETER ID 'ANR' FIELD p_rs_selfield-value.
        CALL TRANSACTION 'CO03' AND SKIP FIRST SCREEN.
      ENDIF.
  ENDCASE .

*-同时内表中的数据也随之刷新
  p_rs_selfield-col_stable = 'X' .   " 行
  p_rs_selfield-row_stable = 'X' .   " 列
  p_rs_selfield-refresh    = 'X' .   " 当用户在显式界面上对数据进行修改时,
ENDFORM.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值