0
点赞
收藏
分享

微信扫一扫

ALV双击弹出新ALV,并响应新ALV事件_SAP刘梦

 

一个需求,ALV展示后,双击某行,再弹出一个ALV 某些信息,然后,响应弹出ALV的事件。

然后做了个demo

执行显示spfli数据,双击某行,根据carrid 获取sflight 表数据,弹出alv 展示sflight数据,然后双击sflight数据,弹出message显示双击了第几行。

效果图

ALV双击弹出新ALV,并响应新ALV事件_SAP刘梦_json

 

其实没什么,太久不做这类的了,做个备份吧,以后方便copy

主要代码如下;

ALV双击弹出新ALV,并响应新ALV事件_SAP刘梦_java_02

ALV双击弹出新ALV,并响应新ALV事件_SAP刘梦_ajax_03

9001空白屏幕

ALV双击弹出新ALV,并响应新ALV事件_SAP刘梦_java_04

*&---------------------------------------------------------------------*
*&  Include           ZLM_TEST_001_TOP
*&---------------------------------------------------------------------*

*--global data
DATA:
  GT_SPFLI   TYPE TABLE OF SPFLI,
  GT_SFLIGHT TYPE TABLE OF SFLIGHT.

*---alv data
DATA:
  GCL_GRID_SPFLI   TYPE REF TO CL_GUI_ALV_GRID, "ALV控件
  GCL_GRID_SFLIGHT TYPE REF TO CL_GUI_ALV_GRID, "ALV控件
  GCL_DOC_SPFLI    TYPE REF TO CL_GUI_DOCKING_CONTAINER,
  GCL_DOC_SFLIGHT  TYPE REF TO CL_GUI_DIALOGBOX_CONTAINER. "第二个弹出框alv 容器


*---the first alv event class
CLASS LCL_EVENT_SPFLI_RECEIVER DEFINITION.
  PUBLIC SECTION.
    METHODS HANDLE_DOUBLE_CLICK
                  FOR EVENT DOUBLE_CLICK OF CL_GUI_ALV_GRID
      IMPORTING E_ROW E_COLUMN.
    METHODS HANDLE_CLOSE
                  FOR EVENT CLOSE OF CL_GUI_DIALOGBOX_CONTAINER
      IMPORTING SENDER.

ENDCLASS.


CLASS LCL_EVENT_SPFLI_RECEIVER IMPLEMENTATION.

  METHOD HANDLE_DOUBLE_CLICK.
    DATA:LS_SPFLI TYPE SPFLI.

    READ TABLE GT_SPFLI INTO LS_SPFLI INDEX E_ROW.
    SELECT * FROM SFLIGHT INTO TABLE GT_SFLIGHT
      WHERE CARRID = LS_SPFLI-CARRID.

    PERFORM FRM_SHOW_SFLIGHT.
  ENDMETHOD.
  METHOD HANDLE_CLOSE.
    CALL METHOD SENDER->SET_VISIBLE
      EXPORTING
        VISIBLE = SPACE.
  ENDMETHOD.


举报

相关推荐

0 条评论