AT LINE SELECTION的用法

1 篇文章 0 订阅

用AT LINE SELECTION在报表的输出时,点击某行响应相应的事件和位置

*&---------------------------------------------------------------------*
*& Report  ZTEST_LINE
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT  ZTEST_LINE.

*AT LINE-SELECTION用于在报表输出时,点击某行时所产生的操作,响应的位置在整行。

DATA:SQUARE TYPE I,
     CUBE TYPE I.
START-OF-SELECTION.
FORMAT HOTSPOT."鼠标呈现手型
DO 10 TIMES.
  SQUARE = SY-INDEX ** 2.
  CUBE = SY-INDEX ** 3.
  WRITE:/ SY-INDEX.
  HIDE:SQUARE,CUBE."HIDE的功能是抓取某个field在某行中的值,与sy-linno相关
ENDDO.
AT LINE-SELECTION.
  WRITE:SQUARE,CUBE.

*如果在应用中希望只是对某个field,点击有效,而不是整行
DATA:L_MBLNR LIKE MKPF-MBLNR.
DATA:I_MKPF LIKE TABLE OF MKPF WITH HEADER LINE.
START-OF-SELECTION.
FORMAT HOTSPOT."鼠标呈现手型
SELECT MBLNR MJAHR
  INTO CORRESPONDING FIELDS OF TABLE I_MKPF
  FROM MKPF.
  ULINE (29).
WRITE:/1 '|',2 'MBLNR',20 '|',21 'MJAHR',29 '|'.
LOOP AT I_MKPF.
    ULINE /(29).
    WRITE:/1 '|',2 I_MKPF-MBLNR,20 '|',21 I_MKPF-MJAHR,29 '|'.
ENDLOOP.
    ULINE /(29).
AT LINE-SELECTION.
  GET CURSOR FIELD I_MKPF-MBLNR VALUE L_MBLNR.
  READ TABLE I_MKPF WITH KEY MBLNR = L_MBLNR.
  IF SY-SUBRC = 0.
     SET PARAMETER ID 'MBN' FIELD I_MKPF-MBLNR.
     CALL TRANSACTION 'MB03' AND SKIP FIRST SCREEN.
  ENDIF.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值