I am new to oops alv. I was practising an interactive alv report which has the following basic list:
On double clicking the Material number (first time), I am calling a subscreen below the basic list and some data from MARA table is being shown:
But, when I am clicking another line of the material number, the screen is displaying the result behind the initial secondary list (which I am obtaining after I scroll down with the scroll bar)!
I am pasting the code for the secondary list . Screen 9000 is the basic list screen and screen 9003 is the subscreen that I am calling
PROCESS BEFORE OUTPUT. MODULE status_9000. CALL SUBSCREEN REF1 INCLUDING sy-repid l_dynpro. PROCESS AFTER INPUT. MODULE user_command_9000. CALL SUBSCREEN ref1.
In the flow logic of screen 9003:
PROCESS BEFORE OUTPUT. MODULE STATUS_9003. PROCESS AFTER INPUT. MODULE USER_COMMAND_9003.
Inside MODULE status_9003 OUTPUT:
MODULE status_9003 OUTPUT.
The logic inside methods "fill_mara_fcat" and "displ_mara_list" is given below:
METHOD fill_mara_fcat. lw_fcat3-fieldname = 'MATNR'. lw_fcat3-tabname = 'LT_MARA'. lw_fcat3-coltext = 'Material Number'. lw_fcat3-tooltip = 'Material Number'. lw_fcat3-hotspot = 'X'. lw_fcat3-col_opt = ''. APPEND lw_fcat3 TO lt_fcat3. CLEAR lw_fcat3. lw_fcat3-fieldname = 'ERSDA'. lw_fcat3-tabname = 'LT_MARA'. lw_fcat3-coltext = 'Created On'. lw_fcat3-tooltip = 'Created On'. lw_fcat3-col_opt = ''. APPEND lw_fcat3 TO lt_fcat3. CLEAR lw_fcat3. lw_fcat3-fieldname = 'MTART'. lw_fcat3-tabname = 'LT_MARA'. lw_fcat3-coltext = 'Material Type'. lw_fcat3-tooltip = 'Material Type'. lw_fcat3-col_opt = ''. APPEND lw_fcat3 TO lt_fcat3. CLEAR lw_fcat3. ENDMETHOD. "fill_mara_fcat
METHOD disp_mara_list. CREATE OBJECT l_cont3 EXPORTING container_name = 'L_CONTAINER3' EXCEPTIONS cntl_error = 1 cntl_system_error = 2 create_error = 3 lifetime_error = 4 lifetime_dynpro_dynpro_link = 5 OTHERS = 6. IF sy-subrc <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. CREATE OBJECT l_grid3 EXPORTING i_parent = l_cont3 EXCEPTIONS error_cntl_create = 1 error_cntl_init = 2 error_cntl_link = 3 error_dp_create = 4 OTHERS = 5. IF sy-subrc <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. CALL METHOD l_grid3->set_table_for_first_display EXPORTING is_layout = lw_layout CHANGING it_outtab = lt_mara it_fieldcatalog = lt_fcat3 EXCEPTIONS invalid_parameter_combination = 1 program_error = 2 too_many_lines = 3 OTHERS = 4. IF sy-subrc <> 0. * Implement suitable error handling here ENDIF. ENDMETHOD. "display_mara_data
Please let me know how to solve the issue. I have debugged my code and the data is populating fine. The only problem I have is the way its getting displayed.