Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

ALV Grid display using classes

Former Member
0 Likes
3,759

I am having a problem while displaying data using ALV grid by the method of classes.I am not able display data for the top-of-page event (which is a protected method in the ALV class - Z class).How do I access this method for display of information in Top of Page and feed the data there? The Display ALV grid( all data from an internal table ) meanwhile is a Public method in the same class.

Moreover I am also not able to provide any description for field headings(columns) just as we do while filling field catalog in the normal AL grid display.They appear only if they are dictionary fields.How do I provide my own descriptions?

6 REPLIES 6
Read only

Former Member
0 Likes
1,307

Hi Savitha,

To change the headings: get a reference to all columns by calling method get_columns( ) of CL_SALV_TABLE. Then select your column and change the headings with methods: set_short_text, set_medium_text and set_long_text.

Regards.

John.

Read only

Former Member
0 Likes
1,307

Hi savitha,

to top-of-page look at this:

/people/vijaybabu.dudla/blog/2006/07/21/topofpage-in-alv-using-clguialvgrid

Regards, Dieter

Read only

Former Member
Read only

Former Member
0 Likes
1,307

Hi Savitha , Use this program.





* ======================================================
* This program is an example of two ALV Grid controls
* with Drag and Drop effects between them
*
*   Developer Name; Chidanand Chauhan
*   Date: 09-Aug-2006
*   Company: Rapidigm (I) Ltd.
*   Purpose : Dummy Program for future references related to
*             Drag n Drop.
* ======================================================

REPORT Z7CC_OOPS_ALV_DRAG_N_DROP .

* -------------------------------------------------
* CREATED ONE PHYSICAL TABLE IN TRANSACTION: SE11
* NAMED: Z7CCTRANSACTIONS* WITHTHE THE FOLLOWING STRUCTURE.
* -------------------------------------------------
* FIELD NAME  |  DATA ELEMENT  |  KEY
* -------------------------------------------------
* MANDT       |  MANDT         |  yes
* KUNNR       |  KUNNR         |  yes
* BELNR       |  MBLNR         |  yes
* BLDAT       |  BLDAT         |
* DMBTR       |  DMBTR         |
* WAERS       |  WAERS         |
* -------------------------------------------------

*&---------------------------LOGIC OF THE PROGRAM----------------------*
*  We have used one Class for the Drag and drop is DND_TOOLS.
*
*  When the user drag and drop the line item from left alv to right alv
*  method flows in this fashion.
*                HANDLE_DRAG_FROM_LEFT
*                HANDLE_DROP_TO_RIGHT
*                HANDLE_DROPCOMPLETE_FROM_LEFT
*
*  and Event flows in this fashion.
*                ONDRAG,  ONDROP, ONDROPCOMPLETE.
*
*  When the user drag and drop the line item from right alv to left alv
*  method flows in this fashion.
*                HANDLE_DRAG_FROM_RIGHT
*                HANDLE_DROP_TO_LEFT
*                HANDLE_DROPCOMPLETE_FROM_RIGHT
*&---------------------------------------------------------------------*

*&---------------------------------------------------------
*       DECLARATION OF THE INTERNAL TABLE.
*&---------------------------------------------------------

DATA   : I_Z7CCTRANSACTIONS  TYPE TABLE OF Z7CCTRANSACTIONS
                               WITH HEADER LINE.
DATA   : I_Z7CCTRANSACTIONS2 TYPE TABLE OF Z7CCTRANSACTIONS
                               WITH HEADER LINE.

DATA   : OK_CODE LIKE SY-UCOMM .

*declaration of the container
DATA : MCONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER .
*declaration of the container for left alv
DATA : MCONTLEFT  TYPE REF TO CL_GUI_CONTAINER .
* declaration of the container for right alv.
DATA : MCONTRIGHT TYPE REF TO CL_GUI_CONTAINER .
* var used to split the container into two parts.
DATA : MSPLITCONT TYPE REF TO
                        CL_GUI_EASY_SPLITTER_CONTAINER .
* declaration for the alv grid( left and right side.
DATA : MALV_LEFT  TYPE REF TO CL_GUI_ALV_GRID .
DATA : MALV_RIGHT TYPE REF TO CL_GUI_ALV_GRID .
* count the no of rows in the alv.
DATA : MROW TYPE LVC_S_ROW .
* declaration of the layout structure.
DATA:  GS_LAYOUT TYPE LVC_S_LAYO ,
       G_BEHAVIOUR_ALV TYPE REF TO CL_DRAGDROP.

DATA : MLINES TYPE I .
*&-----------------------------------------------------------
* Name of the custom control added on the screen
DATA GC_CUSTOM_CONTROL_NAME TYPE SCRFNAME VALUE 'mcontainer'.

*-----------------------------------------------------*
*       CLASS lcl_dragdropobj DEFINITION
*-----------------------------------------------------*
* This is the Class of Drag Drop Object .
* This Object is used as a temporary storage means
* of the information extracted with drag
*-----------------------------------------------------*
CLASS LCL_DRAGDROPOBJ DEFINITION.
  PUBLIC SECTION.
    DATA: I_Z7CCTRANSACTIONS  TYPE Z7CCTRANSACTIONS ,
          INDEX TYPE I ,
          ORIGINAL_TABLE(5) TYPE C ,
          PROCEED_TRANS(1) TYPE C .
ENDCLASS.
* declare object for dragdrop object.
DATA : MDATA TYPE REF TO LCL_DRAGDROPOBJ .

*-----------------------------------------------------*
*       CLASS DND_TOOLS DEFINITION
*-----------------------------------------------------*
* This class contains the methods responding to the
* events ONDRAG , ONDROP , ONDROPCOMPLETE
* of the ALV Grid Controls
*-----------------------------------------------------*
CLASS DND_TOOLS DEFINITION .
  PUBLIC SECTION .
    METHODS : HANDLE_DRAG_FROM_LEFT
                          FOR EVENT ONDRAG OF
                          CL_GUI_ALV_GRID
                          IMPORTING
                          E_ROW
                          E_DRAGDROPOBJ .

    METHODS : HANDLE_DROPCOMPLETE_FROM_LEFT
                          FOR EVENT ONDROPCOMPLETE  OF
                          CL_GUI_ALV_GRID
                          IMPORTING
                          E_ROW
                          E_DRAGDROPOBJ .

    METHODS : HANDLE_DRAG_FROM_RIGHT
                          FOR EVENT ONDRAG OF
                          CL_GUI_ALV_GRID
                          IMPORTING
                          E_ROW
                          E_DRAGDROPOBJ .

    METHODS : HANDLE_DROPCOMPLETE_FROM_RIGHT
                          FOR EVENT ONDROPCOMPLETE  OF
                          CL_GUI_ALV_GRID
                          IMPORTING
                          E_ROW
                          E_DRAGDROPOBJ .

    METHODS : HANDLE_DROP_TO_LEFT
                          FOR EVENT ONDROP OF
                          CL_GUI_ALV_GRID
                          IMPORTING
                          E_DRAGDROPOBJ .

    METHODS : HANDLE_DROP_TO_RIGHT
                          FOR EVENT ONDROP OF
                          CL_GUI_ALV_GRID
                          IMPORTING
                          E_DRAGDROPOBJ .

    METHODS: HANDLE_DOUBLE_CLICK
                          FOR EVENT DOUBLE_CLICK OF
                          CL_GUI_ALV_GRID
                          IMPORTING
                          E_ROW
                          E_COLUMN.



ENDCLASS .

*-----------------------------------------------------*
*       CLASS DND_TOOLS IMPLEMENTATION
*-----------------------------------------------------*
CLASS DND_TOOLS IMPLEMENTATION .
* ----------------------------------------------------
  METHOD HANDLE_DRAG_FROM_LEFT .

    MROW = E_ROW-INDEX .
    READ TABLE I_Z7CCTRANSACTIONS INDEX MROW INTO
               I_Z7CCTRANSACTIONS .

    CREATE OBJECT MDATA .
    MOVE I_Z7CCTRANSACTIONS TO MDATA->I_Z7CCTRANSACTIONS .
    MOVE MROW TO MDATA->INDEX .
    MOVE 'LEFT' TO MDATA->ORIGINAL_TABLE .

    E_DRAGDROPOBJ->OBJECT = MDATA .
  ENDMETHOD .
* ----------------------------------------------------
  METHOD HANDLE_DROPCOMPLETE_FROM_LEFT .

*   NB : the following data object MDATA is local to
*   the method and contains the information from the
*   import parameter of the method E_DRAGDROPOBJ


*& Creation of the funtions SAPGUI_PROGRESS_INDICATOR for the
*    progress bar.
      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
       EXPORTING
         PERCENTAGE       = 50
         TEXT             = ''
         .

    DATA : MDATA TYPE REF TO LCL_DRAGDROPOBJ .

    MDATA  ?= E_DRAGDROPOBJ->OBJECT .
    CHECK MDATA->PROCEED_TRANS = 'X' .

    MROW = MDATA->INDEX .
    DELETE I_Z7CCTRANSACTIONS INDEX MROW .

    APPEND MDATA->I_Z7CCTRANSACTIONS TO I_Z7CCTRANSACTIONS2 .
    SORT I_Z7CCTRANSACTIONS2 BY KUNNR BELNR .
    DELETE I_Z7CCTRANSACTIONS2 WHERE KUNNR IS INITIAL .

    DESCRIBE TABLE I_Z7CCTRANSACTIONS LINES MLINES .
    IF MLINES EQ 0 .
      CLEAR  I_Z7CCTRANSACTIONS .
      APPEND I_Z7CCTRANSACTIONS TO I_Z7CCTRANSACTIONS .
    ENDIF .

    CALL METHOD MALV_LEFT->REFRESH_TABLE_DISPLAY.
    CALL METHOD MALV_RIGHT->REFRESH_TABLE_DISPLAY.

  ENDMETHOD .
* ----------------------------------------------------
  METHOD HANDLE_DRAG_FROM_RIGHT.

    MROW = E_ROW-INDEX .
    READ TABLE I_Z7CCTRANSACTIONS2 INDEX MROW INTO
               I_Z7CCTRANSACTIONS2 .

    CREATE OBJECT MDATA .
    MOVE I_Z7CCTRANSACTIONS2 TO MDATA->I_Z7CCTRANSACTIONS .
    MOVE MROW TO MDATA->INDEX .
    MOVE 'RIGHT' TO MDATA->ORIGINAL_TABLE .

    E_DRAGDROPOBJ->OBJECT = MDATA .
  ENDMETHOD .
* ----------------------------------------------------
  METHOD HANDLE_DROPCOMPLETE_FROM_RIGHT .

*& Creation of the funtions SAPGUI_PROGRESS_INDICATOR for the
*    progress bar.
      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
       EXPORTING
         PERCENTAGE       = 50
         TEXT             = ''
         .

    DATA : MDATA TYPE REF TO LCL_DRAGDROPOBJ .

    MDATA  ?= E_DRAGDROPOBJ->OBJECT .

    CHECK MDATA->PROCEED_TRANS = 'X' .
    MROW = MDATA->INDEX .
    DELETE I_Z7CCTRANSACTIONS2 INDEX MROW .

    APPEND MDATA->I_Z7CCTRANSACTIONS TO I_Z7CCTRANSACTIONS .
    SORT I_Z7CCTRANSACTIONS BY KUNNR BELNR .
    DELETE I_Z7CCTRANSACTIONS WHERE KUNNR IS INITIAL .
    DESCRIBE TABLE I_Z7CCTRANSACTIONS2 LINES MLINES .
    IF MLINES EQ 0 .
      CLEAR  I_Z7CCTRANSACTIONS2 .
      APPEND I_Z7CCTRANSACTIONS2 TO I_Z7CCTRANSACTIONS2 .
    ENDIF .

    CALL METHOD MALV_LEFT->REFRESH_TABLE_DISPLAY.
    CALL METHOD MALV_RIGHT->REFRESH_TABLE_DISPLAY.

  ENDMETHOD .
* ----------------------------------------------------
  METHOD HANDLE_DROP_TO_LEFT .
    DATA : MDATA TYPE REF TO LCL_DRAGDROPOBJ .

*&    '?='  This is Casting Operator used to check at the runtime.

    MDATA  ?= E_DRAGDROPOBJ->OBJECT .

    IF MDATA->ORIGINAL_TABLE = 'RIGHT' .
      MDATA->PROCEED_TRANS = 'X' .
    ELSE .
      MDATA->PROCEED_TRANS = ' ' .
    ENDIF .

    E_DRAGDROPOBJ->OBJECT = MDATA .

  ENDMETHOD .
* ----------------------------------------------------
  METHOD HANDLE_DROP_TO_RIGHT .
    DATA : MDATA TYPE REF TO LCL_DRAGDROPOBJ .

    MDATA  ?= E_DRAGDROPOBJ->OBJECT .

    IF MDATA->ORIGINAL_TABLE = 'LEFT' .
      MDATA->PROCEED_TRANS = 'X' .
    ELSE .
      MDATA->PROCEED_TRANS = ' ' .
    ENDIF .

    E_DRAGDROPOBJ->OBJECT = MDATA .

  ENDMETHOD .

*------------------------------------------------------
  METHOD HANDLE_DOUBLE_CLICK.

  DATA: VAL(1).  " value used to store the value of the Popup Button.

*&    Call funtion POPUP_TO_CONFIRM for the message.

    CALL FUNCTION 'POPUP_TO_CONFIRM'
      EXPORTING
       TITLEBAR                    = 'Message for the Confirmation.'
*       DIAGNOSE_OBJECT             = ' '
        TEXT_QUESTION    =  ' Are you sure u want to delete this'
*       TEXT_BUTTON_1               = 'Ja'(001)
*       ICON_BUTTON_1               = ' '
*       TEXT_BUTTON_2               = 'Nein'(002)
*       ICON_BUTTON_2               = ' '
*       DEFAULT_BUTTON              = '1'
*       DISPLAY_CANCEL_BUTTON       = 'X'
*       USERDEFINED_F1_HELP         = ' '
*       START_COLUMN                = 25
*       START_ROW                   = 6
*       POPUP_TYPE                  =
     IMPORTING
       ANSWER                      = VAL
*     TABLES
*       PARAMETER                   =
*     EXCEPTIONS
*       TEXT_NOT_FOUND              = 1
*       OTHERS                      = 2
              .
    IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.

*& condition is button is yes then value would be 1.
    IF VAL = '1'.

*& Creation of the funtions SAPGUI_PROGRESS_INDICATOR for the
*    progress bar.
      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
       EXPORTING
         PERCENTAGE       = 50
         TEXT             = ''
                .


      MROW = E_ROW-INDEX .
      DELETE I_Z7CCTRANSACTIONS INDEX MROW.
      CALL METHOD MALV_LEFT->REFRESH_TABLE_DISPLAY.
      CALL METHOD MALV_RIGHT->REFRESH_TABLE_DISPLAY.
    ENDIF.

  ENDMETHOD.

ENDCLASS .
*& Create a refrence of  DND_TOOLS Class
DATA : MLISTENER TYPE REF TO DND_TOOLS .

* ======================================================
* START OF SELECTION
* ======================================================
START-OF-SELECTION .

  PERFORM GET_DATA .

  CALL SCREEN 100 .
* ----------------------------------------------------
* The screen 100 has the custom control MCONTAINER and
* on the flow logic has the following modules :
*
* PROCESS BEFORE OUTPUT.
*
*   MODULE STATUS_0100.
*
*   MODULE PREPARE_SCREEN .
*
* PROCESS AFTER INPUT.
*
*   MODULE USER_COMMAND_0100.
*
* ----------------------------------------------------
* (Off course not commented out in the real flow logic)
* ----------------------------------------------------

*-----------------------------------------------------*
*       FORM GET_DATA                                 *
*-----------------------------------------------------*
* FOR THIS EXAMPLE THE DATA SELECTION IS HARD CODED
* ----------------------------------------------------*
FORM GET_DATA .

  CLEAR : I_Z7CCTRANSACTIONS , I_Z7CCTRANSACTIONS[] .
  I_Z7CCTRANSACTIONS-MANDT = SY-MANDT .
  I_Z7CCTRANSACTIONS-WAERS = 'EUR  ' .
  I_Z7CCTRANSACTIONS-KUNNR = '0000000001' .

  I_Z7CCTRANSACTIONS-BELNR = '0000000001' .
  I_Z7CCTRANSACTIONS-BLDAT = '20030101' .
  I_Z7CCTRANSACTIONS-DMBTR = '1000' .
  APPEND I_Z7CCTRANSACTIONS .
  I_Z7CCTRANSACTIONS-BELNR = '0000000002' .
  I_Z7CCTRANSACTIONS-BLDAT = '20030202' .
  I_Z7CCTRANSACTIONS-DMBTR = '1010' .
  APPEND I_Z7CCTRANSACTIONS .
  I_Z7CCTRANSACTIONS-BELNR = '0000000003' .
  I_Z7CCTRANSACTIONS-BLDAT = '20030323' .
  I_Z7CCTRANSACTIONS-DMBTR = '1020' .
  APPEND I_Z7CCTRANSACTIONS .
  I_Z7CCTRANSACTIONS-BELNR = '0000000004' .
  I_Z7CCTRANSACTIONS-BLDAT = '20030404' .
  I_Z7CCTRANSACTIONS-DMBTR = '1030' .
  APPEND I_Z7CCTRANSACTIONS .
  I_Z7CCTRANSACTIONS-BELNR = '0000000005' .
  I_Z7CCTRANSACTIONS-BLDAT = '20030505' .
  I_Z7CCTRANSACTIONS-DMBTR = '1040' .
  APPEND I_Z7CCTRANSACTIONS .
  I_Z7CCTRANSACTIONS-BELNR = '0000000006' .
  I_Z7CCTRANSACTIONS-BLDAT = '20030606' .
  I_Z7CCTRANSACTIONS-DMBTR = '1050' .
  APPEND I_Z7CCTRANSACTIONS .
  I_Z7CCTRANSACTIONS-BELNR = '0000000007' .
  I_Z7CCTRANSACTIONS-BLDAT = '20030707' .
  I_Z7CCTRANSACTIONS-DMBTR = '1060' .
  APPEND I_Z7CCTRANSACTIONS .
  I_Z7CCTRANSACTIONS-BELNR = '0000000008' .
  I_Z7CCTRANSACTIONS-BLDAT = '20030808' .
  I_Z7CCTRANSACTIONS-DMBTR = '1070' .
  APPEND I_Z7CCTRANSACTIONS .
  I_Z7CCTRANSACTIONS-BELNR = '0000000009' .
  I_Z7CCTRANSACTIONS-BLDAT = '20030909' .
  I_Z7CCTRANSACTIONS-DMBTR = '1080' .
  APPEND I_Z7CCTRANSACTIONS .
  I_Z7CCTRANSACTIONS-BELNR = '0000000010' .
  I_Z7CCTRANSACTIONS-BLDAT = '20031010' .
  I_Z7CCTRANSACTIONS-DMBTR = '1090' .
  APPEND I_Z7CCTRANSACTIONS .

  CLEAR : I_Z7CCTRANSACTIONS2 , I_Z7CCTRANSACTIONS2[] .
  APPEND I_Z7CCTRANSACTIONS2 .


 CREATE OBJECT MCONTAINER
 EXPORTING
              CONTAINER_NAME              =    GC_CUSTOM_CONTROL_NAME
        .
  IF SY-SUBRC <> 0.
*          MESSAGE ID SY-MSGID TYPE  SY-MSGTY NUMBER SY-MSGNO
*                     WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

ENDFORM .

*&-----------------------------------------------------*
*&      Module  STATUS_0100  OUTPUT
*&-----------------------------------------------------*
* -----------------------------------------------------
* The PF STATUS STATUS100 called from the module below,
* has on the Standard toolbar the buttons
* BACK , EXIT and CANCEL .
* These buttons are provided with function code = 'EXIT'
* -----------------------------------------------------
MODULE STATUS_0100 OUTPUT.
*  set titlebar 'TITLEDRAGDROP' .
  SET PF-STATUS 'STATUS100'.
ENDMODULE.                 " STATUS_0100  OUTPUT

* -----------------------------------------------------*
*      Module  USER_COMMAND_0100  INPUT
* -----------------------------------------------------*
* The following module checks the User Command and ends
* the program
* ------------------------------------------------------
MODULE USER_COMMAND_0100 INPUT.

  IF OK_CODE = 'EXIT' .
    CLEAR : MCONTAINER ,
           MCONTLEFT  ,
           MCONTRIGHT ,
           MSPLITCONT ,
           MALV_LEFT  ,
           MALV_RIGHT .
    LEAVE TO SCREEN 0  .
  ENDIF .

ENDMODULE.                 " USER_COMMAND_0100  INPUT

*&----------------------------------------------------*
*&      Module  PREPARE_SCREEN  OUTPUT
*&----------------------------------------------------*
MODULE PREPARE_SCREEN OUTPUT.

*  if mcontainer is initial .
    CREATE OBJECT MCONTAINER
                  EXPORTING
                  CONTAINER_NAME = 'MCONTAINER' .
    CREATE OBJECT MSPLITCONT
                  EXPORTING
                  PARENT = MCONTAINER
                  ORIENTATION = 1 .
    MCONTLEFT = MSPLITCONT->TOP_LEFT_CONTAINER .
    MCONTRIGHT = MSPLITCONT->BOTTOM_RIGHT_CONTAINER .

    CREATE OBJECT MALV_LEFT
                  EXPORTING I_PARENT = MCONTLEFT .
    CREATE OBJECT MALV_RIGHT
                  EXPORTING I_PARENT = MCONTRIGHT .

    PERFORM SET_LAYOUT_CAPABLE_OF_DRAG_DRO
                  USING 'X' 'X' .

    CALL METHOD MALV_LEFT->SET_TABLE_FOR_FIRST_DISPLAY
               EXPORTING
               I_STRUCTURE_NAME = 'Z7CCTRANSACTIONS'
               IS_LAYOUT = GS_LAYOUT
               CHANGING
               IT_OUTTAB = I_Z7CCTRANSACTIONS[] .

    CALL METHOD MALV_RIGHT->SET_TABLE_FOR_FIRST_DISPLAY
               EXPORTING
               I_STRUCTURE_NAME = 'Z7CCTRANSACTIONS'
               IS_LAYOUT = GS_LAYOUT
               CHANGING
               IT_OUTTAB = I_Z7CCTRANSACTIONS2[] .

    CREATE OBJECT MLISTENER .
    SET HANDLER MLISTENER->HANDLE_DRAG_FROM_LEFT
                FOR MALV_LEFT .
    SET HANDLER MLISTENER->HANDLE_DROPCOMPLETE_FROM_LEFT
                FOR MALV_LEFT .

    SET HANDLER MLISTENER->HANDLE_DRAG_FROM_RIGHT
                FOR MALV_RIGHT.
    SET HANDLER MLISTENER->HANDLE_DROPCOMPLETE_FROM_RIGHT
                 FOR MALV_RIGHT.
    SET HANDLER MLISTENER->HANDLE_DROP_TO_RIGHT
                 FOR MALV_RIGHT.
    SET HANDLER MLISTENER->HANDLE_DROP_TO_LEFT
                 FOR MALV_LEFT .

    SET HANDLER MLISTENER->HANDLE_DOUBLE_CLICK
                 FOR MALV_LEFT  .
    SET HANDLER MLISTENER->HANDLE_DOUBLE_CLICK
                 FOR MALV_RIGHT .

*  endif .
ENDMODULE.                 " PREPARE_SCREEN  OUTPUT

* -----------------------------------------------------*
*       Form  SET_LAYOUT_CAPABLE_OF_DRAG_DRO
* -----------------------------------------------------*
*  Definition of a Drag & Drop behaviour for the ALV
*  grid
* ------------------------------------------------------
FORM SET_LAYOUT_CAPABLE_OF_DRAG_DRO  USING DRAG DROP.

  DATA : EFFECT TYPE I ,
         HANDLE_ALV TYPE I .

  CREATE OBJECT G_BEHAVIOUR_ALV.
  EFFECT = CL_DRAGDROP=>MOVE + CL_DRAGDROP=>COPY .

  CALL METHOD G_BEHAVIOUR_ALV->ADD
    EXPORTING
      FLAVOR =  'Line'
      DRAGSRC =     DRAG
      DROPTARGET =  DROP
      EFFECT = EFFECT.
  CALL METHOD G_BEHAVIOUR_ALV->GET_HANDLE
    IMPORTING HANDLE = HANDLE_ALV.

  GS_LAYOUT-S_DRAGDROP-ROW_DDID = HANDLE_ALV.


ENDFORM.              " SET_LAYOUT_CAPABLE_OF_DRAG_DRO

Read only

Former Member
0 Likes
1,307

Thanks a lot for the info.

But how do I access the ON_TOP_OF_PAGE(Top-of-Page Event Handler) method in a custom class where it is a protected method?

Thanks,

Savitha

Read only

0 Likes
1,307

By changing the method to public (it's a custom class) or by adding a public method. Or by creating a sub class of this one.

Regards,

John.