Skip to Content
avatar image
Former Member

Basic Interactive ALV Report

Can anyone show me the coding of the Basic Interactive ALV Report ?

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

5 Answers

  • avatar image
    Former Member
    May 14, 2008 at 08:12 AM

    Hi,

    Have a look on the following interactive ALV Grid display report.

    It displays the second level grid based on the field selected.

    TYPE-POOLS SLIS.

    TYPES: BEGIN OF I_EKKO,

    EBELN LIKE EKKO-EBELN,

    AEDAT LIKE EKKO-AEDAT,

    BUKRS LIKE EKKO-BUKRS,

    BSART LIKE EKKO-BSART,

    LIFNR LIKE EKKO-LIFNR,

    END OF I_EKKO.

    DATA: IT_EKKO TYPE STANDARD TABLE OF I_EKKO INITIAL SIZE 0,

    WA_EKKO TYPE I_EKKO.

    TYPES: BEGIN OF I_EKPO,

    EBELN LIKE EKPO-EBELN,

    EBELP LIKE EKPO-EBELP,

    MATNR LIKE EKPO-MATNR,

    MENGE LIKE EKPO-MENGE,

    MEINS LIKE EKPO-MEINS,

    NETPR LIKE EKPO-NETPR,

    END OF I_EKPO.

    DATA: IT_EKPO TYPE STANDARD TABLE OF I_EKPO INITIAL SIZE 0,

    WA_EKPO TYPE I_EKPO.

    DATA: V_REPID TYPE SY-REPID,

    I_FLDCAT TYPE SLIS_T_FIELDCAT_ALV,

    WA_FLDCAT TYPE SLIS_FIELDCAT_ALV,

    I_FLDCAT1 TYPE SLIS_T_FIELDCAT_ALV,

    WA_FLDCAT1 TYPE SLIS_FIELDCAT_ALV.

    DATA: I_TITLE_EKKO TYPE LVC_TITLE VALUE 'FIRST ALV REPORT',

    I_TITLE_EKPO TYPE LVC_TITLE VALUE 'SECONDARY ALV REPORT'.

    INITIALIZATION.

    V_REPID = SY-REPID.

    PERFORM FLDCATALOG.

    START-OF-SELECTION.

    PERFORM DATA_RETRIEVAL.

    PERFORM DISPLAY_ALV_REPORT.

    FORM FLDCATALOG.

    WA_FLDCAT-TABNAME = 'IT_EKKO'.

    WA_FLDCAT-FIELDNAME = 'EBELN'.

    WA_FLDCAT-SELTEXT_M = 'PO NUMBER'.

    APPEND WA_FLDCAT TO I_FLDCAT.

    CLEAR WA_FLDCAT.

    WA_FLDCAT-TABNAME = 'IT_EKKO'.

    WA_FLDCAT-FIELDNAME = 'AEDAT'.

    WA_FLDCAT-SELTEXT_M = 'DATE'.

    APPEND WA_FLDCAT TO I_FLDCAT.

    CLEAR WA_FLDCAT.

    WA_FLDCAT-TABNAME = 'IT_EKKO'.

    WA_FLDCAT-FIELDNAME = 'BUKRS'.

    WA_FLDCAT-SELTEXT_M = 'DOCUMENT TYPE'.

    APPEND WA_FLDCAT TO I_FLDCAT.

    CLEAR WA_FLDCAT.

    WA_FLDCAT-TABNAME = 'IT_EKKO'.

    WA_FLDCAT-FIELDNAME = 'LIFNR'.

    WA_FLDCAT-SELTEXT_M = 'VENDOR CODE'.

    APPEND WA_FLDCAT TO I_FLDCAT.

    CLEAR WA_FLDCAT.

    ENDFORM.

    FORM DATA_RETRIEVAL.

    SELECT EBELN AEDAT BUKRS BSART LIFNR

    FROM EKKO INTO TABLE IT_EKKO.

    ENDFORM.

    FORM DISPLAY_ALV_REPORT.

    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

    EXPORTING

    I_CALLBACK_PROGRAM = V_REPID

    I_CALLBACK_USER_COMMAND = 'USER_COMMAND'

    I_GRID_TITLE = I_TITLE_EKKO

    IT_FIELDCAT = I_FLDCAT[]

    I_SAVE = 'A'

    TABLES

    T_OUTTAB = IT_EKKO.

    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.

    FORM USER_COMMAND USING R_COMM TYPE SY-UCOMM

    RS_SELFIELD TYPE SLIS_SELFIELD.

    CASE R_COMM.

    WHEN '&IC1'.

    IF RS_SELFIELD-FIELDNAME = 'EBELN'.

    SET PARAMETER ID 'BES' FIELD WA_EKKO-EBELN. " BES is data element of EBELN

    READ TABLE IT_EKKO INTO WA_EKKO INDEX RS_SELFIELD-TABINDEX.

    PERFORM FLDCAT_EKPO.

    PERFORM DATA_RETRIEVAL_EKPO.

    PERFORM DISPLAY_ALV_REPORT_EKPO.

    ENDIF.

    ENDCASE.

    ENDFORM.

    FORM FLDCAT_EKPO.

    WA_FLDCAT1-TABNAME = 'IT_EKPO'.

    WA_FLDCAT1-FIELDNAME = 'EBELN'.

    WA_FLDCAT1-SELTEXT_M = 'PO NUMBER'.

    APPEND WA_FLDCAT1 TO I_FLDCAT1.

    CLEAR WA_FLDCAT1.

    WA_FLDCAT1-TABNAME = 'IT_EKPO'.

    WA_FLDCAT1-FIELDNAME = 'EBELP'.

    WA_FLDCAT1-SELTEXT_M = 'LINE NO'.

    APPEND WA_FLDCAT1 TO I_FLDCAT1.

    CLEAR WA_FLDCAT1.

    WA_FLDCAT1-TABNAME = 'IT_EKPO'.

    WA_FLDCAT1-FIELDNAME = 'MATNR'.

    WA_FLDCAT1-SELTEXT_M = 'MATERIAL NUMBER'.

    APPEND WA_FLDCAT1 TO I_FLDCAT1.

    CLEAR WA_FLDCAT1.

    WA_FLDCAT1-TABNAME = 'IT_EKPO'.

    WA_FLDCAT1-FIELDNAME = 'MENGE'.

    WA_FLDCAT1-SELTEXT_M = 'QUANTITY'.

    APPEND WA_FLDCAT1 TO I_FLDCAT1.

    CLEAR WA_FLDCAT1.

    WA_FLDCAT1-TABNAME = 'IT_EKPO'.

    WA_FLDCAT1-FIELDNAME = 'MEINS'.

    WA_FLDCAT1-SELTEXT_M = 'BASE UNIT OF MEASURE'.

    APPEND WA_FLDCAT1 TO I_FLDCAT1.

    CLEAR WA_FLDCAT1.

    WA_FLDCAT1-TABNAME = 'IT_EKPO'.

    WA_FLDCAT1-FIELDNAME = 'NETPR'.

    WA_FLDCAT1-SELTEXT_M = 'PRICE'.

    APPEND WA_FLDCAT1 TO I_FLDCAT1.

    CLEAR WA_FLDCAT1.

    ENDFORM.

    FORM DATA_RETRIEVAL_EKPO.

    SELECT EBELN EBELP MATNR MENGE MEINS NETPR

    INTO TABLE IT_EKPO

    FROM EKPO.

    ENDFORM.

    FORM DISPLAY_ALV_REPORT_EKPO.

    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

    EXPORTING

    I_CALLBACK_PROGRAM = V_REPID

    I_GRID_TITLE = I_TITLE_EKPO

    IT_FIELDCAT = I_FLDCAT1[]

    I_SAVE = 'A'

    TABLES

    T_OUTTAB = IT_EKPO.

    IF SY-SUBRC <> 0.

    • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

    • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

    ENDIF.

    REFRESH: IT_EKPO,I_FLDCAT1.

    ENDFORM.

    Check the following link to get more examples.

    http://www.saptechnical.com

    Reward,if useful.

    Thanks,

    Chandu

    Add comment
    10|10000 characters needed characters exceeded

  • May 14, 2008 at 07:52 AM

    Hi,

    Following report is the sample for Interactive alv report.

    REPORT  YMS_ALVINTERSAMPLE NO STANDARD PAGE HEADING LINE-SIZE 650
    MESSAGE-ID ZZ_9838.
    
    TYPE-POOLS: SLIS.
    *type declaration for values from ekko
    TYPES: BEGIN OF I_EKKO,
           EBELN LIKE EKKO-EBELN,
           AEDAT LIKE EKKO-AEDAT,
           BUKRS LIKE EKKO-BUKRS,
           BSART LIKE EKKO-BSART,
           LIFNR LIKE EKKO-LIFNR,
           END OF I_EKKO.
    
    DATA: IT_EKKO TYPE STANDARD TABLE OF I_EKKO INITIAL SIZE 0,
          WA_EKKO TYPE I_EKKO.
    
    *type declaration for values from ekpo
    TYPES: BEGIN OF I_EKPO,
           EBELN LIKE EKPO-EBELN,
           EBELP LIKE EKPO-EBELP,
           MATNR LIKE EKPO-MATNR,
           MENGE LIKE EKPO-MENGE,
           MEINS LIKE EKPO-MEINS,
           NETPR LIKE EKPO-NETPR,
           END OF I_EKPO.
    
    DATA: IT_EKPO TYPE STANDARD TABLE OF I_EKPO INITIAL SIZE 0,
          WA_EKPO TYPE I_EKPO .
    
    *variable for Report ID
    DATA: V_REPID LIKE SY-REPID .
    
    *declaration for fieldcatalog
    DATA: I_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
          WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
    
    
    DATA: IT_LISTHEADER TYPE SLIS_T_LISTHEADER.
    
    * declaration for events table where user comand or set PF status will
    * be defined
    DATA: V_EVENTS TYPE SLIS_T_EVENT,
          WA_EVENT TYPE SLIS_ALV_EVENT.
    
    * declartion for layout
    DATA: ALV_LAYOUT TYPE SLIS_LAYOUT_ALV.
    
    * declaration for variant(type of display we want)
    DATA: I_VARIANT TYPE DISVARIANT,
          I_VARIANT1 TYPE DISVARIANT,
          I_SAVE(1) TYPE C.
    
    *PARAMETERS : p_var TYPE disvariant-variant.
    
    *Title displayed when the alv list is displayed
    DATA:  I_TITLE_EKKO TYPE LVC_TITLE VALUE 'FIRST LIST DISPLAYED'.
    DATA:  I_TITLE_EKPO TYPE LVC_TITLE VALUE 'SECONDRY LIST DISPLAYED'.
    
    INITIALIZATION.
      V_REPID = SY-REPID.
      PERFORM BUILD_FIELDCATLOG.
      PERFORM EVENT_CALL.
      PERFORM POPULATE_EVENT.
    
    START-OF-SELECTION.
      PERFORM DATA_RETRIEVAL.
      PERFORM BUILD_LISTHEADER USING IT_LISTHEADER.
      PERFORM DISPLAY_ALV_REPORT.
    
    *&--------------------------------------------------------------------*
    *&      Form  BUILD_FIELDCATLOG
    *&--------------------------------------------------------------------*
    *       Fieldcatalog has all the field details from ekko
    *---------------------------------------------------------------------*
    FORM BUILD_FIELDCATLOG.
      WA_FIELDCAT-TABNAME = 'IT_EKKO'.
      WA_FIELDCAT-FIELDNAME = 'EBELN'.
      WA_FIELDCAT-SELTEXT_M = 'PO NO.'.
      APPEND WA_FIELDCAT TO I_FIELDCAT.
      CLEAR WA_FIELDCAT.
    
      WA_FIELDCAT-TABNAME = 'IT_EKKO'.
      WA_FIELDCAT-FIELDNAME = 'AEDAT'.
      WA_FIELDCAT-SELTEXT_M = 'DATE.'.
      APPEND WA_FIELDCAT TO I_FIELDCAT.
      CLEAR WA_FIELDCAT.
    
      WA_FIELDCAT-TABNAME = 'IT_EKKO'.
      WA_FIELDCAT-FIELDNAME = 'BUKRS'.
      WA_FIELDCAT-SELTEXT_M = 'COMPANY CODE'.
      APPEND WA_FIELDCAT TO I_FIELDCAT.
      CLEAR WA_FIELDCAT.
    
    WA_FIELDCAT-TABNAME = 'IT_EKKO'.
      WA_FIELDCAT-FIELDNAME = 'BUKRS'.
      WA_FIELDCAT-SELTEXT_M = 'DOCMENT TYPE'.
      APPEND WA_FIELDCAT TO I_FIELDCAT.
      CLEAR WA_FIELDCAT.
    
    WA_FIELDCAT-TABNAME = 'IT_EKKO'.
      WA_FIELDCAT-FIELDNAME = 'LIFNR'.
      WA_FIELDCAT-NO_OUT    = 'X'.
      WA_FIELDCAT-SELTEXT_M = 'VENDOR CODE'.
      APPEND WA_FIELDCAT TO I_FIELDCAT.
      CLEAR WA_FIELDCAT.
    
    
    ENDFORM.                    "BUILD_FIELDCATLOG
    
    *&--------------------------------------------------------------------*
    *&      Form  EVENT_CALL
    *&--------------------------------------------------------------------*
    *   we get all events - TOP OF PAGE or USER COMMAND in table v_events
    *---------------------------------------------------------------------*
    FORM EVENT_CALL.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
       EXPORTING
         I_LIST_TYPE           = 0
       IMPORTING
         ET_EVENTS             = V_EVENTS
    *  EXCEPTIONS
    *    LIST_TYPE_WRONG       = 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.
    ENDFORM.                    "EVENT_CALL
    
    *&--------------------------------------------------------------------*
    *&      Form  POPULATE_EVENT
    *&--------------------------------------------------------------------*
    *      Events populated for TOP OF PAGE & USER COMAND
    *---------------------------------------------------------------------*
    FORM POPULATE_EVENT.
      READ TABLE V_EVENTS INTO WA_EVENT WITH KEY NAME = 'TOP_OF_PAGE'.
      IF SY-SUBRC EQ 0.
        WA_EVENT-FORM = 'TOP_OF_PAGE'.
        MODIFY V_EVENTS FROM WA_EVENT TRANSPORTING FORM WHERE NAME =
    WA_EVENT-FORM.
      ENDIF.
    
      READ TABLE V_EVENTS INTO WA_EVENT WITH KEY NAME = 'USER_COMMAND'.
      IF SY-SUBRC EQ 0.
        WA_EVENT-FORM = 'USER_COMMAND'.
        MODIFY V_EVENTS FROM WA_EVENT TRANSPORTING FORM WHERE NAME =
    WA_EVENT-NAME.
      ENDIF.
    ENDFORM.                    "POPULATE_EVENT
    
    
    *&--------------------------------------------------------------------*
    *&      Form  data_retrieval
    *&--------------------------------------------------------------------*
    *   retreiving values from the database table ekko
    *---------------------------------------------------------------------*
    FORM DATA_RETRIEVAL.
      SELECT EBELN AEDAT BUKRS BSART LIFNR FROM EKKO INTO TABLE IT_EKKO.
    
    ENDFORM.                    "data_retrieval
    *&--------------------------------------------------------------------*
    *&      Form  bUild_listheader
    *&--------------------------------------------------------------------*
    *       text
    *---------------------------------------------------------------------*
    *      -->I_LISTHEADEtext
    *---------------------------------------------------------------------*
    FORM BUILD_LISTHEADER USING I_LISTHEADER TYPE SLIS_T_LISTHEADER.
      DATA HLINE TYPE SLIS_LISTHEADER.
      HLINE-INFO = 'this is my first alv pgm'.
      HLINE-TYP = 'H'.
    ENDFORM.                    "build_listheader
    
    *&--------------------------------------------------------------------*
    *&      Form  display_alv_report
    *&--------------------------------------------------------------------*
    *       text
    *---------------------------------------------------------------------*
    FORM DISPLAY_ALV_REPORT.
      V_REPID = SY-REPID.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
         I_CALLBACK_PROGRAM                = V_REPID
    *   I_CALLBACK_PF_STATUS_SET          = ' '
         I_CALLBACK_USER_COMMAND           = 'USER_COMMAND'
         I_CALLBACK_TOP_OF_PAGE            = 'TOP_OF_PAGE'
         I_GRID_TITLE                      = I_TITLE_EKKO
    *   I_GRID_SETTINGS                   =
    *   IS_LAYOUT                         = ALV_LAYOUT
         IT_FIELDCAT                       = I_FIELDCAT[]
    *   IT_EXCLUDING                      =
    *   IT_SPECIAL_GROUPS                 =
    *   IT_SORT                           =
    *   IT_FILTER                         =
    *   IS_SEL_HIDE                       =
    *     i_default                         = 'ZLAY1'
         I_SAVE                            = 'A'
    *     is_variant                        = i_variant
         IT_EVENTS                         = V_EVENTS
        TABLES
          T_OUTTAB                          = IT_EKKO
    * EXCEPTIONS
    *   PROGRAM_ERROR                     = 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.
    ENDFORM.                    "display_alv_report
    
    
    
    
    *&--------------------------------------------------------------------*
    *&      Form  TOP_OF_PAGE
    *&--------------------------------------------------------------------*
    *       text
    *---------------------------------------------------------------------*
    FORM TOP_OF_PAGE.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          IT_LIST_COMMENTARY       = IT_LISTHEADER
    *    i_logo                   =
    *    I_END_OF_LIST_GRID       =
                .
    
    ENDFORM.                    "TOP_OF_PAGE
    
    *&--------------------------------------------------------------------*
    *&      Form  USER_COMMAND
    *&--------------------------------------------------------------------*
    *       text
    *---------------------------------------------------------------------*
    *      -->R_UCOMM    text
    *      -->,          text
    *      -->RS_SLEFIELDtext
    *---------------------------------------------------------------------*
    FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
    RS_SELFIELD TYPE SLIS_SELFIELD.
      CASE R_UCOMM.
        WHEN '&IC1'.
          READ TABLE IT_EKKO INTO WA_EKKO INDEX RS_SELFIELD-TABINDEX.
          PERFORM BUILD_FIELDCATLOG_EKPO.
          PERFORM EVENT_CALL_EKPO.
          PERFORM POPULATE_EVENT_EKPO.
          PERFORM DATA_RETRIEVAL_EKPO.
          PERFORM BUILD_LISTHEADER_EKPO USING IT_LISTHEADER.
          PERFORM DISPLAY_ALV_EKPO.
      ENDCASE.
    ENDFORM.                    "user_command
    *&--------------------------------------------------------------------*
    *&      Form  BUILD_FIELDCATLOG_EKPO
    *&--------------------------------------------------------------------*
    *       text
    *---------------------------------------------------------------------*
    FORM BUILD_FIELDCATLOG_EKPO.
    
      WA_FIELDCAT-TABNAME = 'IT_EKPO'.
      WA_FIELDCAT-FIELDNAME = 'EBELN'.
      WA_FIELDCAT-SELTEXT_M = 'PO NO.'.
      APPEND WA_FIELDCAT TO I_FIELDCAT.
      CLEAR WA_FIELDCAT.
      WA_FIELDCAT-TABNAME = 'IT_EKPO'.
      WA_FIELDCAT-FIELDNAME = 'EBELP'.
      WA_FIELDCAT-SELTEXT_M = 'LINE NO'.
      APPEND WA_FIELDCAT TO I_FIELDCAT.
      CLEAR WA_FIELDCAT.
      WA_FIELDCAT-TABNAME = 'I_EKPO'.
      WA_FIELDCAT-FIELDNAME = 'MATNR'.
      WA_FIELDCAT-SELTEXT_M = 'MATERIAL NO.'.
      APPEND WA_FIELDCAT TO I_FIELDCAT.
      CLEAR WA_FIELDCAT.
    WA_FIELDCAT-TABNAME = 'I_EKPO'.
      WA_FIELDCAT-FIELDNAME = 'MENGE'.
      WA_FIELDCAT-SELTEXT_M = 'QUANTITY'.
      APPEND WA_FIELDCAT TO I_FIELDCAT.
      CLEAR WA_FIELDCAT.
    
    WA_FIELDCAT-TABNAME = 'I_EKPO'.
      WA_FIELDCAT-FIELDNAME = 'MEINS'.
      WA_FIELDCAT-SELTEXT_M = 'UOM'.
      APPEND WA_FIELDCAT TO I_FIELDCAT.
      CLEAR WA_FIELDCAT.
    
    WA_FIELDCAT-TABNAME = 'I_EKPO'.
      WA_FIELDCAT-FIELDNAME = 'NETPR'.
      WA_FIELDCAT-SELTEXT_M = 'PRICE'.
      APPEND WA_FIELDCAT TO I_FIELDCAT.
      CLEAR WA_FIELDCAT.
    
    
    ENDFORM.                    "BUILD_FIELDCATLOG_EKPO
    
    *&--------------------------------------------------------------------*
    *&      Form  event_call_ekpo
    *&--------------------------------------------------------------------*
    *   we get all events - TOP OF PAGE or USER COMMAND in table v_events
    *---------------------------------------------------------------------*
    FORM EVENT_CALL_EKPO.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
       EXPORTING
         I_LIST_TYPE           = 0
       IMPORTING
         ET_EVENTS             = V_EVENTS
    * EXCEPTIONS
    *   LIST_TYPE_WRONG       = 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.
    ENDFORM.                    "event_call_ekpo
    
    
    *&--------------------------------------------------------------------*
    *&      Form  POPULATE_EVENT
    *&--------------------------------------------------------------------*
    *        Events populated for TOP OF PAGE & USER COMAND
    *---------------------------------------------------------------------*
    FORM POPULATE_EVENT_EKPO.
      READ TABLE V_EVENTS INTO WA_EVENT WITH KEY NAME = 'TOP_OF_PAGE'.
      IF SY-SUBRC EQ 0.
        WA_EVENT-FORM = 'TOP_OF_PAGE'.
        MODIFY V_EVENTS FROM WA_EVENT TRANSPORTING FORM WHERE NAME =
    WA_EVENT-FORM.
      ENDIF.
    
      ENDFORM.                    "POPULATE_EVENT
    
    *&--------------------------------------------------------------------*
    *&      Form  TOP_OF_PAGE
    *&--------------------------------------------------------------------*
    *       text
    *---------------------------------------------------------------------*
    FORM F_TOP_OF_PAGE.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          IT_LIST_COMMENTARY       = IT_LISTHEADER
    *    i_logo                   =
    *    I_END_OF_LIST_GRID       =
                .
    
    ENDFORM.                    "TOP_OF_PAGE
    
    *&--------------------------------------------------------------------*
    *&      Form  USER_COMMAND
    *&--------------------------------------------------------------------*
    *       text
    *---------------------------------------------------------------------*
    *      -->R_UCOMM    text
    *      -->,          text
    *      -->RS_SLEFIELDtext
    *---------------------------------------------------------------------*
    
    *retreiving values from the database table ekko
    FORM DATA_RETRIEVAL_EKPO.
    SELECT EBELN EBELP MATNR MENGE MEINS NETPR FROM EKPO INTO TABLE IT_EKPO.
    ENDFORM.
    
    FORM BUILD_LISTHEADER_EKPO USING I_LISTHEADER TYPE SLIS_T_LISTHEADER.
    DATA: HLINE1 TYPE SLIS_LISTHEADER.
    HLINE1-TYP = 'H'.
    HLINE1-INFO = 'CHECKING PGM'.
    ENDFORM.
    
    
    FORM DISPLAY_ALV_EKPO.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
     EXPORTING
    *   I_INTERFACE_CHECK                 = ' '
    *   I_BYPASSING_BUFFER                = ' '
    *   I_BUFFER_ACTIVE                   = ' '
       I_CALLBACK_PROGRAM                = V_REPID
    *   I_CALLBACK_PF_STATUS_SET          = ' '
    *   I_CALLBACK_USER_COMMAND           = 'F_USER_COMMAND'
       I_CALLBACK_TOP_OF_PAGE            = 'TOP_OF_PAGE'
    *   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
    *   I_CALLBACK_HTML_END_OF_LIST       = ' '
    *   I_STRUCTURE_NAME                  =
    *   I_BACKGROUND_ID                   = ' '
       I_GRID_TITLE                      = I_TITLE_EKPO
    *   I_GRID_SETTINGS                   =
    *   IS_LAYOUT                         =
       IT_FIELDCAT                       = I_FIELDCAT[]
    *   IT_EXCLUDING                      =
    *   IT_SPECIAL_GROUPS                 =
    *   IT_SORT                           =
    *   IT_FILTER                         =
    *   IS_SEL_HIDE                       =
    *   I_DEFAULT                         =
       I_SAVE                            = 'A'
    *   IS_VARIANT                        =
       IT_EVENTS                         = V_EVENTS
      TABLES
        T_OUTTAB                          = IT_EKPO
     EXCEPTIONS
       PROGRAM_ERROR                     = 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.
    ENDFORM.

    Thanks,

    Sankar M

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    May 14, 2008 at 07:56 AM

    Hi

    see demo program BALV* or BCALV*

    Max

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    May 14, 2008 at 07:58 AM
    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    Jul 15, 2008 at 03:44 AM

    I Myself solved the issue.

    Add comment
    10|10000 characters needed characters exceeded