*&---------------------------------------------------------------------*
*& Report YSUFI19
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT YSUFI19.
TYPE-POOLS : LVC.
TYPES:
BEGIN OF LY_MAKT,
MATNR TYPE MATNR,
SPRAS TYPE SPRAS,
MAKTX TYPE MAKTX,
END OF LY_MAKT .
TYPES:
BEGIN OF LY_MARA,
MATNR TYPE MATNR,
ERSDA TYPE ERSDA,
ERNAM TYPE ERNAM,
MTART TYPE MTART,
MBRSH TYPE MBRSH,
MEINS TYPE MEINS,
END OF LY_MARA .
TYPES:
BEGIN OF LY_MARC,
MATNR TYPE MATNR,
WERKS TYPE WERKS_D,
MINBE TYPE MINBE,
EISBE TYPE EISBE,
END OF LY_MARC .
TYPES:
BEGIN OF LY_T001W,
WERKS TYPE WERKS_D,
NAME1 TYPE NAME1,
PSTLZ TYPE PSTLZ,
ORT01 TYPE ORT01,
END OF LY_T001W .
TYPES:
BEGIN OF LY_T134T,
SPRAS TYPE SPRAS,
MTART TYPE MTART,
MTBEZ TYPE MTBEZ,
END OF LY_T134T .
TYPES:
BEGIN OF LY_T137T,
SPRAS TYPE SPRAS,
MBRSH TYPE MBRSH,
MBBEZ TYPE MBBEZ,
END OF LY_T137T .
DATA: LT_MARA TYPE STANDARD TABLE OF LY_MARA,
LT_MARC TYPE STANDARD TABLE OF LY_MARC,
LT_MAKT TYPE STANDARD TABLE OF LY_MAKT,
LT_T134T TYPE STANDARD TABLE OF LY_T134T,
LT_T137T TYPE STANDARD TABLE OF LY_T137T,
LT_T001W TYPE STANDARD TABLE OF LY_T001W,
LS_MARA TYPE LY_MARA,
LS_MARC TYPE LY_MARC,
LS_MAKT TYPE LY_MAKT,
LS_T134T TYPE LY_T134T,
LS_T137T TYPE LY_T137T,
LS_T001W TYPE LY_T001W.
DATA: V_REF1 TYPE REF TO ZCL_SRS_SUPERCLASS,
V_REF2 TYPE REF TO ZCL_SRS_CHILDCLASS,
V_REF3 TYPE REF TO ZCL_SRS_FRIENDCLASS.
DATA: E_REF TYPE REF TO ZCX_MYCLASS.
DATA: GR_MAIN TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
GR_EVENT TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
GR_SPLIT TYPE REF TO CL_GUI_SPLITTER_CONTAINER.
DATA: GR_CONT_MARA TYPE REF TO CL_GUI_CONTAINER,
GR_CONT_MARC TYPE REF TO CL_GUI_CONTAINER,
GR_CONT_MAKT TYPE REF TO CL_GUI_CONTAINER,
GR_CONT_T134T TYPE REF TO CL_GUI_CONTAINER,
GR_CONT_T137T TYPE REF TO CL_GUI_CONTAINER,
GR_CONT_T001W TYPE REF TO CL_GUI_CONTAINER,
GR_ALV_MARA TYPE REF TO CL_GUI_ALV_GRID,
GR_ALV_MARC TYPE REF TO CL_GUI_ALV_GRID,
GR_ALV_MAKT TYPE REF TO CL_GUI_ALV_GRID,
GR_ALV_T134T TYPE REF TO CL_GUI_ALV_GRID,
GR_ALV_T137T TYPE REF TO CL_GUI_ALV_GRID,
GR_ALV_T001W TYPE REF TO CL_GUI_ALV_GRID.
DATA: LT_FCAT1 TYPE LVC_T_FCAT,
LT_FCAT2 TYPE LVC_T_FCAT,
LT_FCAT3 TYPE LVC_T_FCAT,
LT_FCAT4 TYPE LVC_T_FCAT,
LT_FCAT5 TYPE LVC_T_FCAT,
LT_FCAT6 TYPE LVC_T_FCAT,
LS_FCAT1 TYPE LVC_S_FCAT,
LS_FCAT2 TYPE LVC_S_FCAT,
LS_FCAT3 TYPE LVC_S_FCAT,
LS_FCAT4 TYPE LVC_S_FCAT,
LS_FCAT5 TYPE LVC_S_FCAT,
LS_FCAT6 TYPE LVC_S_FCAT.
PARAMETERS: P_MATNR TYPE MARA-MATNR,
P_WERKS TYPE MARC-WERKS,
P_MTART TYPE T134T-MTART,
P_MBRSH TYPE T137T-MBRSH,
P_SPRAS TYPE MAKT-SPRAS.
START-OF-SELECTION.
CREATE OBJECT E_REF.
TRY.
CALL METHOD ZCL_SRS_SUPERCLASS=>GET_MARA
EXPORTING
IV_MATNR = P_MATNR
IMPORTING
ET_MARA = LT_MARA.
CATCH ZCX_MYCLASS INTO E_REF.
CALL METHOD E_REF->GET_TEXT
RECEIVING
RESULT = DATA(LV_RESULT).
MESSAGE 'No data found' TYPE 'E'.
ENDTRY.
TRY.
CREATE OBJECT V_REF1.
IF V_REF1 IS NOT INITIAL.
CALL METHOD V_REF1->GET_T134T
EXPORTING
IV_MTART = P_MTART
IMPORTING
ET_T134T = LT_T134T.
ENDIF.
CATCH ZCX_MYCLASS INTO E_REF.
CALL METHOD E_REF->GET_TEXT
RECEIVING
RESULT = LV_RESULT.
MESSAGE 'No data found' TYPE 'E'.
ENDTRY.
TRY.
CALL METHOD ZCL_SRS_CHILDCLASS=>GET_MARC1
EXPORTING
IV_WERKS = P_WERKS
IMPORTING
ET_MARC = LT_MARC.
CATCH ZCX_MYCLASS INTO E_REF.
CALL METHOD E_REF->GET_TEXT
RECEIVING
RESULT = LV_RESULT.
MESSAGE 'No data found' TYPE 'E'.
ENDTRY.
TRY.
CREATE OBJECT V_REF2.
CALL METHOD V_REF2->GET_T137T1
EXPORTING
IV_MBRSH = P_MBRSH
IMPORTING
ET_T137T = LT_T137T.
CATCH ZCX_MYCLASS INTO E_REF.
CALL METHOD E_REF->GET_TEXT
RECEIVING
RESULT = LV_RESULT.
MESSAGE 'No data found' TYPE 'E'.
ENDTRY.
TRY.
CALL METHOD ZCL_SRS_FRIENDCLASS=>GET_MAKT1
EXPORTING
IV_SPRAS = P_SPRAS
IMPORTING
ET_MAKT = LT_MAKT.
CATCH ZCX_MYCLASS INTO E_REF.
CALL METHOD E_REF->GET_TEXT
RECEIVING
RESULT = LV_RESULT.
MESSAGE 'No data found' TYPE 'E'.
ENDTRY.
TRY.
CREATE OBJECT V_REF3.
CALL METHOD V_REF3->GET_T001W1
EXPORTING
IV_WERKS = P_WERKS
IMPORTING
ET_T001W = LT_T001W.
CATCH ZCX_MYCLASS INTO E_REF.
CALL METHOD E_REF->GET_TEXT
RECEIVING
RESULT = LV_RESULT.
MESSAGE 'No data found' TYPE 'E'.
ENDTRY.
PERFORM FEILDCATLOG.
INCLUDE YSUFI19_FEILDCATLOGF01.
END-OF-SELECTION.
CALL SCREEN 9001.
INCLUDE YSUFI19_DOTHISO01.