You are on page 1of 4

*&---------------------------------------------------------------------*

*& Report ZB9_MM_R_SALES_GRID


*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT ZB9_MM_R_SALES_GRID.
TYPES : BEGIN OF TY_VBAP,
VBELN TYPE VBELN_VA,
POSNR TYPE POSNR_VA,
MATNR TYPE MATNR,
MATKL TYPE MATKL,
NETWR TYPE NETWR_AP,
END OF TY_VBAP.

"Sales Document
"Sales Document Item
"Material Number
"Material Group
"Net value

DATA : IT_VBAP TYPE STANDARD TABLE OF TY_VBAP.


*******Fieldcatlog Declarations
DATA : IT_FIELDCATLOG TYPE SLIS_T_FIELDCAT_ALV,
WA_FIELDCATLOG LIKE LINE OF IT_FIELDCATLOG,
IT_SORT TYPE SLIS_T_SORTINFO_ALV,
WA_SORT LIKE LINE OF IT_SORT.
DATA G_VBELN TYPE VBELN_VA.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.
SELECT-OPTIONS : S_VBELN FOR G_VBELN.
SELECTION-SCREEN END OF BLOCK B1.
START-OF-SELECTION.
PERFORM
PERFORM
PERFORM
PERFORM

GET_VBAP.
PREPARE_FIELDCTLOG.
DO_SUBTOTALS.
DISP_GRID.

*&---------------------------------------------------------------------*
*&
Form GET_VBAP
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM GET_VBAP .
SELECT VBELN
POSNR
MATNR
MATKL

"Sales Document
"Sales Document Item
"Material Number
"Material Group

NETWR
"Net value
FROM VBAP
INTO TABLE IT_VBAP
WHERE VBELN IN S_VBELN.

ENDFORM.
" GET_VBAP
*&---------------------------------------------------------------------*
*&
Form PREPARE_FIELDCTLOG
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM PREPARE_FIELDCTLOG .
***Column 1
WA_FIELDCATLOG-COL_POS
WA_FIELDCATLOG-FIELDNAME
WA_FIELDCATLOG-TABNAME
WA_FIELDCATLOG-SELTEXT_L

=
=
=
=

'1'.
'VBELN'.
'IT_VBAP'.
'Sales Doc'.

APPEND WA_FIELDCATLOG TO IT_FIELDCATLOG.


CLEAR WA_FIELDCATLOG .

***Column 2
WA_FIELDCATLOG-COL_POS
WA_FIELDCATLOG-FIELDNAME
WA_FIELDCATLOG-TABNAME
WA_FIELDCATLOG-SELTEXT_L

=
=
=
=

'2'.
'POSNR'.
'IT_VBAP'.
'Item No'.

APPEND WA_FIELDCATLOG TO IT_FIELDCATLOG.


CLEAR WA_FIELDCATLOG .
***Column 3
WA_FIELDCATLOG-COL_POS
WA_FIELDCATLOG-FIELDNAME
WA_FIELDCATLOG-TABNAME
WA_FIELDCATLOG-SELTEXT_L

=
=
=
=

'3'.
'MATNR'.
'IT_VBAP'.
'Material'.

APPEND WA_FIELDCATLOG TO IT_FIELDCATLOG.


CLEAR WA_FIELDCATLOG .
***Column 4
WA_FIELDCATLOG-COL_POS
WA_FIELDCATLOG-FIELDNAME
WA_FIELDCATLOG-TABNAME
WA_FIELDCATLOG-SELTEXT_L

=
=
=
=

'4'.
'MATKL'.
'IT_VBAP'.
'Material Group'.

APPEND WA_FIELDCATLOG TO IT_FIELDCATLOG.


CLEAR WA_FIELDCATLOG .

***Column 5
WA_FIELDCATLOG-COL_POS
WA_FIELDCATLOG-FIELDNAME
WA_FIELDCATLOG-TABNAME
WA_FIELDCATLOG-SELTEXT_L
WA_FIELDCATLOG-DO_SUM
WA_FIELDCATLOG-EMPHASIZE

=
=
=
=
=
=

'5'.
'NETWR'.
'IT_VBAP'.
'Net Value'.
'X'. " GRANDTOTAL
'C510'. "Coloring

APPEND WA_FIELDCATLOG TO IT_FIELDCATLOG.


CLEAR WA_FIELDCATLOG .

ENDFORM.
" PREPARE_FIELDCTLOG
*&---------------------------------------------------------------------*
*&
Form DISP_GRID
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM DISP_GRID .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK
= ' '
* I_BYPASSING_BUFFER
= ' '
* I_BUFFER_ACTIVE
= ' '
* I_CALLBACK_PROGRAM
= ' '
* I_CALLBACK_PF_STATUS_SET
= ' '
* I_CALLBACK_USER_COMMAND
= ' '
* I_CALLBACK_TOP_OF_PAGE
= ' '
* 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
= IT_FIELDCATLOG
* IT_EXCLUDING
=
* IT_SPECIAL_GROUPS
=
IT_SORT
= 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
= IT_VBAP
* EXCEPTIONS
* PROGRAM_ERROR
= 1
* OTHERS
= 2
.
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.

ENDFORM.
" DISP_GRID
*&---------------------------------------------------------------------*
*&
Form DO_SUBTOTALS
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
* --> p1
text
* <-- p2
text
*----------------------------------------------------------------------*
FORM DO_SUBTOTALS .
WA_SORT-SPOS = '1'.
WA_SORT-FIELDNAME = 'VBELN'.
WA_SORT-TABNAME = 'IT_VBAP'.
WA_SORT-UP
= 'X'.
WA_SORT-SUBTOT
= 'X'.
APPEND WA_SORT TO IT_SORT.
CLEAR WA_SORT.
ENDFORM.

" DO_SUBTOTALS

You might also like