Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 8808

Ineractive report for in ALV Display Grid.

$
0
0

Hi every one i am not able to get the the secondary screen in which HRP1001 table is displayed with reference of Hrp1000. I am using the below code for getting it.Without  any problem i am getting the records in primary screen but after double clicking i am not able to get the next secondary screen.Please find and rectify.



*&---------------------------------------------------------------------*

*& Report  ZINTER_ACTIVE_1

*&

*&---------------------------------------------------------------------*

*&

*&

*&---------------------------------------------------------------------*

REPORT  zinter_active_1.

TABLES: HRP1000,HRP1001.

TYPE-POOLS:slis.

SELECT-OPTIONS: OTYPE FOR HRP1000-OTYPE.

 

TYPES : BEGIN OF fs,

         otype TYPE hrp1000-otype,

         objid TYPE hrp1000-objid,

         begda TYPE hrp1000-begda,

         endda TYPE hrp1000-endda,

         END OF fs.

 

 

DATA: itab TYPE STANDARD TABLE OF fs,

       wa LIKE LINE OF itab.

 

TYPES : BEGIN OF fs1,

         otype TYPE hrp1001-otype,

         objid TYPE hrp1001-objid,

         sclas TYPE hrp1001-SCLAS,

         RSIGN TYPE hrp1001-RSIGN,

         END OF fs1.

 

 

DATA: itab1 TYPE STANDARD TABLE OF fs1,

       wa1 LIKE LINE OF itab1.

 

 

DATA: V_REPID TYPE SY-REPID,

       IT_fieldcat TYPE SLIS_T_FIELDCAT_ALV,

       WA_fieldcat TYPE SLIS_FIELDCAT_ALV,

       GD_LAYOUT TYPE SLIS_LAYOUT_ALV,

       GD_LAYOUT1 TYPE SLIS_LAYOUT_ALV.

 

 

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

       I_TITLE_HR1001 TYPE LVC_TITLE VALUE 'SECONDARY ALV REPORT'.

 

DATA: V_EVENTS TYPE SLIS_T_EVENT,

       WA_EVENT TYPE SLIS_ALV_EVENT.

 

 

INITIALIZATION.

V_REPID = SY-REPID.

PERFORM fieldcat.

*PERFORM BLD_LAYOUT.

PERFORM EVENT_CALL.

PERFORM POPULATE_EVENT.

 

 

START-OF-SELECTION.

 

PERFORM DATA_RETRIEVAL.

PERFORM DISPLAY_ALV_REPORT.

 

 

FORM fieldcat.

   CLEAR wa_fieldcat.

   wa_fieldcat-fieldname = 'OTYPE'.

   wa_fieldcat-tabname   = 'ITAB'.

   wa_fieldcat-seltext_m = 'OBJECT TYPE '.

   APPEND wa_fieldcat TO it_fieldcat.

 

   CLEAR wa_fieldcat.

 

   wa_fieldcat-fieldname = 'OBJID '.

   wa_fieldcat-tabname   = 'ITAB'.

   wa_fieldcat-seltext_m = 'OBJECT-ID '.

   APPEND wa_fieldcat TO it_fieldcat.

 

   CLEAR wa_fieldcat.

   wa_fieldcat-fieldname = 'BEGDA'.

   wa_fieldcat-tabname   = 'ITAB'.

   wa_fieldcat-seltext_m = 'BEGIN DATE'.

   APPEND wa_fieldcat TO it_fieldcat.

 

   CLEAR wa_fieldcat.

   wa_fieldcat-fieldname = 'ENDDA'.

   wa_fieldcat-tabname   = 'ITAB'.

   wa_fieldcat-seltext_m = 'END DATE'.

   APPEND wa_fieldcat TO it_fieldcat.

ENDFORM.

 

*FORM bLd_layout.

*GD_LAYOUT-INFO_FIELDNAME = 'L_COLOR'.

*ENDFORM.

 

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.

 

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.

 

FORM DATA_RETRIEVAL.

 

   SELECT OTYPE OBJID BEGDA ENDDA FROM HRP1000 INTO TABLE ITAB WHERE OTYPE IN OTYPE.

     ENDFORM.

FORM DISPLAY_ALV_REPORT.

     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           = '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_HRP1000

*       I_GRID_SETTINGS                   =

*       IS_LAYOUT                         ='GD_LAYOUT'

        IT_FIELDCAT                       = IT_fieldcat[]

*       IT_EXCLUDING                      =

*       IT_SPECIAL_GROUPS                 =

*       IT_SORT                           =

*       IT_FILTER                         =

*       IS_SEL_HIDE                       =

*       I_DEFAULT                         = 'X'

        I_SAVE                            = 'A'

*       IS_VARIANT                        =

        IT_EVENTS                         = V_EVENTS

*       IT_EVENT_EXIT                     =

*       IS_PRINT                          =

*       IS_REPREP_ID                      =

*       I_SCREEN_START_COLUMN             = 0

*       I_SCREEN_START_LINE               = 0

*       I_SCREEN_END_COLUMN               = 0

*       I_SCREEN_END_LINE                 = 0

*       I_HTML_HEIGHT_TOP                 = 0

*       I_HTML_HEIGHT_END                 = 0

*       IT_ALV_GRAPHICS                   =

*       IT_HYPERLINK                      =

*       IT_ADD_FIELDCAT                   =

*       IT_EXCEPT_QINFO                   =

*       IR_SALV_FULLSCREEN_ADAPTER        =

*     IMPORTING

*       E_EXIT_CAUSED_BY_CALLER           =

*       ES_EXIT_CAUSED_BY_USER            =

       TABLES

         t_outtab                          = ITAB

*     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.

 

 

   FORM TOP_OF_PAGE.

     DATA: T_HEADER TYPE SLIS_T_LISTHEADER,

       WA_HEADER TYPE SLIS_LISTHEADER.

 

WA_HEADER-TYP = 'H'.

WA_HEADER-INFO = 'THIS IS MY FIRST ALV'.

APPEND WA_HEADER TO T_HEADER.

 

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

   EXPORTING

     it_list_commentary       = T_HEADER

*   I_LOGO                   =

*   I_END_OF_LIST_GRID       =

*   I_ALV_FORM               =

           .

ENDFORM.

 

FORM USER_COMMAND USING R_COMM TYPE SY-UCOMM

       RS_SELFIELD TYPE SLIS_SELFIELD.

 

   CASE R_COMM.

 

     WHEN '&1C1'.

       READ TABLE ITAB INTO WA INDEX RS_SELFIELD-TABINDEX.

 

       PERFORM Fieldcat_HRP1001.

             PERFORM EVENT_CALL_HRP1001.

       PERFORM POPULATE_EVENT_HRP1001.

       PERFORM DATA_RETRIEVAL_HRP1001.

       PERFORM DISPLAY_ALV_REPORT_HRP1001.

       endcase.

       endform.

 

       Form Fieldcat_HRP1001.

 

       CLEAR wa_fieldcat.

   wa_fieldcat-fieldname = 'OTYPE'.

   wa_fieldcat-tabname   = 'ITAB1'.

   wa_fieldcat-seltext_m = 'OBJECT TYPE '.

   APPEND wa_fieldcat TO it_fieldcat.

 

   CLEAR wa_fieldcat.

 

   wa_fieldcat-fieldname = 'OBJID '.

   wa_fieldcat-tabname   = 'ITAB1'.

   wa_fieldcat-seltext_m = 'OBJECT-ID '.

   APPEND wa_fieldcat TO it_fieldcat.

 

   CLEAR wa_fieldcat.

   wa_fieldcat-fieldname = ' SCLAS'.

   wa_fieldcat-tabname   = 'ITAB1'.

   wa_fieldcat-seltext_m = 'S-Class'.

   APPEND wa_fieldcat TO it_fieldcat.

 

   CLEAR wa_fieldcat.

   wa_fieldcat-fieldname = 'RSIGN'  .

   wa_fieldcat-tabname   = 'ITAB'.

   wa_fieldcat-seltext_m = 'END DATE'.

   APPEND wa_fieldcat TO it_fieldcat.

ENDFORM.

FORM EVENT_CALL_HRP1001.

 

 

   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.

 

 

FORM POPULATE_EVENT_HRP1001.

 

    READ TABLE V_EVENTS INTO WA_EVENT WITH KEY NAME = 'TOP_OF_PAGE1'.

   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.

 

 

 

 

 

FORM DATA_RETRIEVAL_HRP1001.

   SELECT OTYPE OBJID SCLAS RSIGN FROM HRP1001 INTO TABLE ITAB1 WHERE OTYPE IN OTYPE.

 

     ENDFORM.

 

 

     FORM DISPLAY_ALV_REPORT_HRP1001.

 

 

       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_PAGE1'

*         I_CALLBACK_HTML_TOP_OF_PAGE       = ' '

*         I_CALLBACK_HTML_END_OF_LIST       = ' '

*         I_STRUCTURE_NAME                  =

*         I_BACKGROUND_ID                   = ' '

          I_GRID_TITLE                      = ITAB1

*         I_GRID_SETTINGS                   =

*         IS_LAYOUT                         =

          IT_FIELDCAT                       = it_fieldcat[]

*         IT_EXCLUDING                      =

*         IT_SPECIAL_GROUPS                 =

*         IT_SORT                           =

*         IT_FILTER                         =

*         IS_SEL_HIDE                       =

*         I_DEFAULT                         = 'X'

          I_SAVE                            = ' A'

*         IS_VARIANT                        =

          IT_EVENTS                         = V_EVENTS

*         IT_EVENT_EXIT                     =

*         IS_PRINT                          =

*         IS_REPREP_ID                      =

*         I_SCREEN_START_COLUMN             = 0

*         I_SCREEN_START_LINE               = 0

*         I_SCREEN_END_COLUMN               = 0

*         I_SCREEN_END_LINE                 = 0

*         I_HTML_HEIGHT_TOP                 = 0

*         I_HTML_HEIGHT_END                 = 0

*         IT_ALV_GRAPHICS                   =

*         IT_HYPERLINK                      =

*         IT_ADD_FIELDCAT                   =

*         IT_EXCEPT_QINFO                   =

*         IR_SALV_FULLSCREEN_ADAPTER        =

*       IMPORTING

*         E_EXIT_CAUSED_BY_CALLER           =

*         ES_EXIT_CAUSED_BY_USER            =

         TABLES

           t_outtab                          = ITAB1

*       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.

       REFRESH: ITAB1 , it_fieldcat.

       ENDFORM.

 

       FORM TOP_OF_PAGE1.

 

       DATA: T_HEADER1 TYPE SLIS_T_LISTHEADER,

       WA_HEADER1 TYPE SLIS_LISTHEADER.

 

WA_HEADER1-TYP = 'H'.

WA_HEADER1-INFO = 'SECONDARY ALV LEVEL'.

APPEND WA_HEADER1 TO T_HEADER1.

 

   CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

   EXPORTING

     IT_LIST_COMMENTARY       = T_HEADER1.

 

   ENDFORM.


Viewing all articles
Browse latest Browse all 8808

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>