REPORT NAME: REPORT Z20382363_ALV.
QUESTION 01
REPORT Z20382363_ALV.
START-OF-SELECTION.
SELECT * FROM VBAK
INTO TABLE @DATA(LT_VBAK).
IF SY-SUBRC <> 0.
MESSAGE 'RECORD NOT FOUND' TYPE 'E'.
ENDIF.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER = ' '
* I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = SY-CPROG
I_CALLBACK_PF_STATUS_SET = 'MY_MENU'
I_CALLBACK_USER_COMMAND = 'USER_ACTION'
I_CALLBACK_TOP_OF_PAGE = 'TOP_PAGE'
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME = 'ZALV_STR'
* I_BACKGROUND_ID = ' '
* I_GRID_TITLE =
* I_GRID_SETTINGS =
* IS_LAYOUT =
* IT_FIELDCAT =
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
* I_SAVE = ' '
* IS_VARIANT =
* IT_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 = LT_VBAK
* EXCEPTIONS
* PROGRAM_ERROR = 1
* OTHERS = 2
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.
FORM TOP_PAGE.
DATA(LT_HEAD) = VALUE SLIS_T_LISTHEADER(
( TYP = 'H' INFO = 'RECORDS FOR SALES HEADER TABLE' )
).
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = LT_HEAD
* I_LOGO =
* I_END_OF_LIST_GRID =
* I_ALV_FORM =
.
ENDFORM.
FORM MY_MENU USING LT_EX_BUT TYPE SLIS_T_EXTAB.
SET PF-STATUS 'ZMENU'.
ENDFORM.
FORM USER_ACTION USING I_FCODE TYPE SY-UCOMM
I_SELFIELD TYPE SLIS_SELFIELD.
CASE I_FCODE.
WHEN 'VBAPDATA'.
SELECT * FROM VBAP
INTO TABLE @DATA(LT_VBAP)
FOR ALL ENTRIES IN @LT_VBAK
WHERE VBELN = @LT_VBAK-VBELN.
DATA(LT_VBAP_TYPE) = VALUE SLIS_T_FIELDCAT_ALV(
( FIELDNAME = 'VBELN' SELTEXT_M = 'SALES DOCUMENT' )
( FIELDNAME = 'POSNR' SELTEXT_M = 'SALES DOCUMENT ITEM' )
( FIELDNAME = 'MATNR' SELTEXT_M = 'MATERIAL NUMBER' )
( FIELDNAME = 'MATKL' SELTEXT_M = 'MATERIAL GROUP' )
( FIELDNAME = 'POSAR' SELTEXT_M = 'ITEM TYPE' )
( FIELDNAME = 'STLNR' SELTEXT_M = 'BILL OF MATERIAL' )
( FIELDNAME = 'NETPR' SELTEXT_M = 'NET PRICE' )
).
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER = ' '
* I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = SY-CPROG
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = 'TOP_PAGE1'
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
* I_STRUCTURE_NAME = ' '
* I_BACKGROUND_ID = ' '
* I_GRID_TITLE =
* I_GRID_SETTINGS =
* IS_LAYOUT =
IT_FIELDCAT = LT_VBAP_TYPE
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
* I_SAVE = ' '
* IS_VARIANT =
* IT_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 = LT_VBAP
* EXCEPTIONS
* PROGRAM_ERROR = 1
* OTHERS = 2
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.
WHEN 'MARADATA'.
SELECT * FROM MARA
INTO TABLE @DATA(LT_MARA).
DATA(LT_MARA_TYPE) = VALUE SLIS_T_FIELDCAT_ALV(
( FIELDNAME = 'MATNR' SELTEXT_M = 'MATERIAL NUMBER' )
( FIELDNAME = 'MTART' SELTEXT_M = 'MATERIAL TYPE' )
( FIELDNAME = 'MBRSH' SELTEXT_M = 'INDUSTRY SECTOR' )
( FIELDNAME = 'MATKL' SELTEXT_M = 'MATERIAL GROUP' )
( FIELDNAME = 'MEINS' SELTEXT_M = 'UNIT OF MEASURE' )
).
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
* I_BYPASSING_BUFFER = ' '
* I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = SY-CPROG
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = 'TOP_PAGE2'
* I_CALLBACK_HTML_TOP_OF_PAGE = ' '
* I_CALLBACK_HTML_END_OF_LIST = ' '
* I_STRUCTURE_NAME =
* I_BACKGROUND_ID = ' '
* I_GRID_TITLE =
* I_GRID_SETTINGS =
* IS_LAYOUT =
IT_FIELDCAT = LT_MARA_TYPE
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_DEFAULT = 'X'
* I_SAVE = ' '
* IS_VARIANT =
* IT_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 = LT_MARA
* EXCEPTIONS
* PROGRAM_ERROR = 1
* OTHERS = 2
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.
WHEN 'EXIT'.
LEAVE PROGRAM.
ENDCASE.
ENDFORM.
FORM TOP_PAGE1.
DATA(LT_HEAD1) = VALUE SLIS_T_LISTHEADER(
( TYP = 'H' INFO = 'RECORDS FOR SALES DOCUMENT ITEM TABLE' )
).
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = LT_HEAD1
* I_LOGO =
* I_END_OF_LIST_GRID =
* I_ALV_FORM =
.
ENDFORM.
FORM TOP_PAGE2.
DATA(LT_HEAD2) = VALUE SLIS_T_LISTHEADER(
( TYP = 'H' INFO = 'RECORDS FOR MATERIAL MASTER TABLE' )
).
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = LT_HEAD2
* I_LOGO =
* I_END_OF_LIST_GRID =
* I_ALV_FORM =
.
ENDFORM.
Comments
Post a Comment