You are on page 1of 7

TABLES: MARA, MAKT. TYPES: BEGIN OF TY_MARA, MATNR TYPE MARA-MATNR, ERSDA TYPE MARA-ERSDA, END OF TY_MARA.

TYPES: BEGIN OF TY_MAKT, MATNR TYPE MAKT-MATNR, MAKTX TYPE MAKT-MAKTX, END OF TY_MAKT. DATA: IT_MARA TYPE TABLE OF TY_MARA. DATA: IT_MAKT TYPE TABLE OF TY_MAKT. DATA: O_CONTAINER O_GRID O_CNTNR2 O_TREE O_CNTNR3 O_GRID3 TYPE-POOLS: SLIS. DATA: S_LIST_H IT_FCAT WA_FCAT IT_FCAT2 WA_FCAT2 TYPE TYPE TYPE TYPE TYPE SLIS_T_LISTHEADER, LVC_T_FCAT, LVC_S_FCAT, LVC_T_FCAT, LVC_S_FCAT. TYPE TYPE TYPE TYPE TYPE TYPE REF REF REF REF REF REF TO TO TO TO TO TO CL_GUI_CUSTOM_CONTAINER, CL_GUI_ALV_GRID, CL_GUI_CUSTOM_CONTAINER, CL_GUI_ALV_TREE_SIMPLE, CL_GUI_CUSTOM_CONTAINER, CL_GUI_ALV_GRID.

SELECT-OPTIONS: S_MATNR FOR MARA-MATNR. CLASS LC_IN DEFINITION. PUBLIC SECTION. METHODS: MATNR_INTER FOR EVENT DOUBLE_CLICK OF CL_GUI_ALV_GRID IMPORTING E_ROW E_COLUMN. ENDCLASS. CLASS LC_IN IMPLEMENTATION. METHOD MATNR_INTER. DATA: WA_MARA TYPE TY_MARA. READ TABLE IT_MARA INTO WA_MARA INDEX E_ROW. SET PARAMETER ID 'MAT' FIELD WA_MARA-MATNR. CALL TRANSACTION 'MM02'. ENDMETHOD. ENDCLASS. DATA: O_LC TYPE REF TO LC_IN. START-OF-SELECTION. PERFORM FILL_FCAT_4_1ALV. PERFORM FILL_FCAT_4_2ALV. PERFORM EXTRACT_DATA. CALL SCREEN 600. ********************************************************************

******* PAI OF 600. ******************************************************************** MODULE LIST_USR_COM_0600 INPUT. CASE SY-UCOMM. WHEN 'BACK' OR 'EXIT' OR 'CANCEL'. LEAVE TO SCREEN 0. ENDCASE. ENDMODULE. ******************************************************************** *******PBO OF 600. ******************************************************************** MODULE LIST_0600 OUTPUT. SET PF-STATUS 'PF_4_600'. CREATE OBJECT O_CNTNR2 EXPORTING * PARENT = CONTAINER_NAME = 'CONTAINER2' * STYLE = * LIFETIME = lifetime_default * REPID = * DYNNR = * NO_AUTODEF_PROGID_DYNNR = * 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 O_TREE EXPORTING * I_LIFETIME = I_PARENT = O_CNTNR2 * I_SHELLSTYLE = * I_NODE_SELECTION_MODE = cl_gui_column_Tree=>NODE_SEL_MODE_SIN * I_HIDE_SELECTION = * I_ITEM_SELECTION = 'X' * I_NO_TOOLBAR = * I_NO_HTML_HEADER = * I_PRINT = * EXCEPTIONS * CNTL_ERROR = 1 * CNTL_SYSTEM_ERROR = 2 * CREATE_ERROR = 3 * LIFETIME_ERROR = 4 * ILLEGAL_NODE_SELECTION_MODE = 5 * FAILED = 6

* *

ILLEGAL_COLUMN_NAME others

= 7 = 8

. 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 O_TREE->CREATE_REPORT_HEADER EXPORTING IT_LIST_COMMENTARY = S_LIST_H I_LOGO = 'WIPRO' * I_BACKGROUND_ID = * I_SET_SPLITTER_HEIGHT = * I_MODEL_MODE = . CREATE OBJECT O_CONTAINER EXPORTING PARENT = CONTAINER_NAME = 'CONTAINER' STYLE = LIFETIME = lifetime_default REPID = DYNNR = NO_AUTODEF_PROGID_DYNNR = 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 O_GRID EXPORTING I_SHELLSTYLE = 0 I_LIFETIME = I_PARENT = O_CONTAINER I_APPL_EVENTS = space I_PARENTDBG = I_APPLOGPARENT = I_GRAPHICSPARENT = I_NAME = I_FCAT_COMPLETE = SPACE 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 O_GRID->SET_TABLE_FOR_FIRST_DISPLAY EXPORTING I_BUFFER_ACTIVE = I_BYPASSING_BUFFER = I_CONSISTENCY_CHECK = I_STRUCTURE_NAME = 'IT_MARA' IS_VARIANT = I_SAVE = I_DEFAULT = 'X' IS_LAYOUT = IS_PRINT = IT_SPECIAL_GROUPS = IT_TOOLBAR_EXCLUDING = IT_HYPERLINK = IT_ALV_GRAPHICS = IT_EXCEPT_QINFO = IR_SALV_ADAPTER = CHANGING IT_OUTTAB = IT_MARA IT_FIELDCATALOG = IT_FCAT IT_SORT = IT_FILTER = EXCEPTIONS INVALID_PARAMETER_COMBINATION = 1 PROGRAM_ERROR = 2 TOO_MANY_LINES = 3 others = 4 . 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 O_LC. SET HANDLER O_LC->MATNR_INTER FOR O_GRID. CREATE OBJECT O_CNTNR3 EXPORTING * PARENT = CONTAINER_NAME = 'CONTAINER3' * STYLE = * LIFETIME = lifetime_default * REPID = * DYNNR = * NO_AUTODEF_PROGID_DYNNR = * 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 O_GRID3 EXPORTING * I_SHELLSTYLE = 0 * I_LIFETIME = I_PARENT = O_CNTNR3 * I_APPL_EVENTS = space * I_PARENTDBG = * I_APPLOGPARENT = * I_GRAPHICSPARENT = * I_NAME = * I_FCAT_COMPLETE = SPACE * 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 O_GRID3->SET_TABLE_FOR_FIRST_DISPLAY EXPORTING * I_BUFFER_ACTIVE = * I_BYPASSING_BUFFER = * I_CONSISTENCY_CHECK = I_STRUCTURE_NAME = 'IT_MAKT' * IS_VARIANT = * I_SAVE = * I_DEFAULT = 'X' * IS_LAYOUT = * IS_PRINT = * IT_SPECIAL_GROUPS = * IT_TOOLBAR_EXCLUDING = * IT_HYPERLINK = * IT_ALV_GRAPHICS = * IT_EXCEPT_QINFO = * IR_SALV_ADAPTER = CHANGING IT_OUTTAB = IT_MAKT IT_FIELDCATALOG = IT_FCAT2 * IT_SORT = * IT_FILTER = * EXCEPTIONS * INVALID_PARAMETER_COMBINATION = 1 * PROGRAM_ERROR = 2 * TOO_MANY_LINES = 3 * others = 4 . IF SY-SUBRC <> 0. * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. SET HANDLER O_LC->MATNR_INTER FOR O_GRID3.

ENDMODULE. *&---------------------------------------------------------------------* *& Form EXTRACT_DATA *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM EXTRACT_DATA . SELECT MATNR ERSDA FROM MARA INTO TABLE IT_MARA WHERE MATNR IN S_MATNR. SELECT MATNR MAKTX FROM MAKT INTO TABLE IT_MAKT FOR ALL ENTRIES IN IT_MARA WHERE MATNR = IT_MARA-MATNR. ENDFORM. " EXTRACT_DATA *&---------------------------------------------------------------------* *& Form FILL_FCAT_4_1ALV *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM FILL_FCAT_4_1ALV . CLEAR : WA_FCAT. WA_FCAT-FIELDNAME WA_FCAT-TABNAME WA_FCAT-SCRTEXT_L APPEND WA_FCAT TO = 'MATNR'. = 'IT_MARA'. = 'MATERIAL'. IT_FCAT.

WA_FCAT-FIELDNAME = 'ERSDA'. WA_FCAT-TABNAME = 'IT_MARA'. WA_FCAT-SCRTEXT_L = 'Created on'. APPEND WA_FCAT TO IT_FCAT. ENDFORM. " FILL_FCAT_4_1ALV *&---------------------------------------------------------------------* *& Form FILL_FCAT_4_2ALV *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM FILL_FCAT_4_2ALV . CLEAR : WA_FCAT. WA_FCAT2-FIELDNAME WA_FCAT2-TABNAME WA_FCAT2-SCRTEXT_L APPEND WA_FCAT2 TO = 'MATNR'. = 'IT_MAKT'. = 'Material'. IT_FCAT2.

WA_FCAT2-FIELDNAME WA_FCAT2-TABNAME WA_FCAT2-SCRTEXT_L APPEND WA_FCAT2 TO ENDFORM.

= 'MAKTX'. = 'IT_MAKT'. = 'TEXT'. IT_FCAT2.

You might also like