Beruflich Dokumente
Kultur Dokumente
BEGIN OF TY_MAKT,
MATNR LIKE MAKT-MATNR,
SPRAS LIKE MAKT-SPRAS,
MAKTX LIKE MAKT-MAKTX,
END OF TY_MAKT.
TYPES:
BEGIN OF TY_MARD,
MATNR LIKE MARD-MATNR,
WERKS LIKE MARD-WERKS,
LGORT LIKE MARD-LGORT,
END OF TY_MARD.
*PROGRAM NAME
DATA : I_PROGRAM TYPE SY-REPID.
*LAYOUT DECLARATION
DATA : W_LAYOUT TYPE SLIS_LAYOUT_ALV.
START-OF-SELECTION.
I_PROGRAM = SY-REPID.
PERFORM BUILD_FACT.
PERFORM MY_LAYOUT.
PERFORM INIT_BLOCK.
PERFORM SELECT_DATA.
PERFORM BLOCK_LIST.
*&---------------------------------------------------------------------*
*&
Form BUILD_FACT
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM BUILD_FACT .
*FIELDCAT FOR MARA TABLE
W_FCAT_MARA-col_pos =
W_FCAT_MARA-fieldname
W_FCAT_MARA-tabname =
W_FCAT_MARA-seltext_m
APPEND W_FCAT_MARA TO
CLEAR W_FCAT_MARA.
'1'.
= 'MATNR'.
'MARA'.
= 'MATERIAL NO'.
I_FCAT_MARA.
W_FCAT_MARA-col_pos = '2'.
W_FCAT_MARA-fieldname = 'ERSDA'.
W_FCAT_MARA-tabname = 'MARA'.
W_FCAT_MARA-seltext_m = 'CREATION DATE'.
APPEND W_FCAT_MARA TO I_FCAT_MARA.
CLEAR W_FCAT_MARA.
W_FCAT_MARA-col_pos = '3'.
W_FCAT_MARA-fieldname = 'ERNAM'.
W_FCAT_MARA-tabname = 'MARA'.
W_FCAT_MARA-seltext_m = 'PERSON CREATED'.
APPEND W_FCAT_MARA TO I_FCAT_MARA.
CLEAR W_FCAT_MARA.
W_FCAT_MARA-col_pos = '4'.
W_FCAT_MARA-fieldname = 'LAEDA'.
W_FCAT_MARA-tabname = 'MARA'.
W_FCAT_MARA-seltext_m = 'DATE OF LAST CHANGE'.
APPEND W_FCAT_MARA TO I_FCAT_MARA.
CLEAR W_FCAT_MARA.
* FIELDCAT FOR MAKT
W_FCAT_MAKT-col_pos =
W_FCAT_MAKT-fieldname
W_FCAT_MAKT-tabname =
W_FCAT_MAKT-seltext_m
APPEND W_FCAT_MAKT TO
CLEAR W_FCAT_MAKT.
'1'.
= 'MATNR'.
'MAKT'.
= 'MATERIAL NO'.
I_FCAT_MAKT.
W_FCAT_MAKT-col_pos = '2'.
W_FCAT_MAKT-fieldname
W_FCAT_MAKT-tabname =
W_FCAT_MAKT-seltext_m
APPEND W_FCAT_MAKT TO
CLEAR W_FCAT_MAKT.
= 'SPRAS'.
'MAKT'.
= 'LANGUAGE'.
I_FCAT_MAKT.
W_FCAT_MAKT-col_pos = '3'.
W_FCAT_MAKT-fieldname = 'MAKTX'.
W_FCAT_MAKT-tabname = 'MAKT'.
W_FCAT_MAKT-seltext_m = 'MATERIAL DESCRIPTION'.
APPEND W_FCAT_MAKT TO I_FCAT_MAKT.
CLEAR W_FCAT_MAKT.
* FIELDCAT FOR MARD
W_FCAT_MARD-col_pos =
W_FCAT_MARD-fieldname
W_FCAT_MARD-tabname =
W_FCAT_MARD-seltext_m
APPEND W_FCAT_MARD TO
CLEAR W_FCAT_MARD.
'1'.
= 'MATNR'.
'MARD'.
= 'MATERIAL NO'.
I_FCAT_MARD.
W_FCAT_MARD-col_pos = '2'.
W_FCAT_MARD-fieldname = 'WERKS'.
W_FCAT_MARD-tabname = 'MARD'.
W_FCAT_MARD-seltext_m = 'PLANT'.
APPEND W_FCAT_MARD TO I_FCAT_MARD.
CLEAR W_FCAT_MARD.
W_FCAT_MARD-col_pos = '3'.
W_FCAT_MARD-fieldname = 'LGORT'.
W_FCAT_MARD-tabname = 'MARD'.
W_FCAT_MARD-seltext_m = 'STORAGE LOCATION'.
APPEND W_FCAT_MARD TO I_FCAT_MARD.
CLEAR W_FCAT_MARD.
ENDFORM.
" BUILD_FACT
*&---------------------------------------------------------------------*
*&
Form INIT_BLOCK
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM INIT_BLOCK .
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'
EXPORTING
I_CALLBACK_PROGRAM
= I_PROGRAM
* I_CALLBACK_PF_STATUS_SET
= ' '
* I_CALLBACK_USER_COMMAND
= ' '
* IT_EXCLUDING
=
.
ENDFORM.
" INIT_BLOCK
*&---------------------------------------------------------------------*
*&
Form MY_LAYOUT
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM MY_LAYOUT .
W_LAYOUT-zebra = 'X'.
ENDFORM.
" MY_LAYOUT
*&---------------------------------------------------------------------*
*&
Form SELECT_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM SELECT_DATA .
SELECT MATNR
ERSDA
ERNAM
LAEDA
INTO TABLE IT_MARA FROM MARA UP TO 20 ROWS.
SELECT MATNR
SPRAS
MAKTX
INTO TABLE IT_MAKT FROM MAKT UP TO 20 ROWS.
SELECT MATNR
WERKS
LGORT
INTO TABLE IT_MARD FROM MARD UP TO 20 ROWS.
ENDFORM.
" SELECT_DATA
FORM BLOCK_LIST .
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'
EXPORTING
IS_LAYOUT
= W_LAYOUT
IT_FIELDCAT
= I_FCAT_MARA
I_TABNAME
= 'MARA'
IT_EVENTS
= I_EVENT
* IT_SORT
=
* I_TEXT
= ' '
TABLES
T_OUTTAB
= IT_MARA
* EXCEPTIONS
* PROGRAM_ERROR
= 1
* MAXIMUM_OF_APPENDS_REACHED
= 2
* OTHERS
= 3
.
IF SY-SUBRC <> 0.
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.
*&---------------------------------------------------------------------*
*&
Form BLOCK_LIST
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
ENDFORM.
" BLOCK_LIST