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.