Control Break Statements in SAP ABAP
Control Break Statements in ABAP
There are enormous uses of control break statements in ABAP development, these control break statements are very useful in reports with multiple table usage and reporting calculations like sum.Control break statements are used to control the sequence data flow inside loops in SAP ABAP.The below is the example report of using control break statements.
REPORT ZCONTROL_BREAK
NO STANDARD PAGE HEADING.
DATA: BEGIN OF ITAB OCCURS 1,
MATNR LIKE MARA-MATNR,
MAKTX LIKE MAKT-MAKTX,
WERKS LIKE MARD-WERKS,
LGORT LIKE MARD-LGORT,
LABST LIKE MARD-LABST,
END OF ITAB.
SELECT-OPTIONS: S_MATNR FOR ITAB-MATNR.
START-OF-SELECTION.
PERFORM GET_DATA.
IF NOT ITAB[] IS INITIAL.
PERFORM SHOW_LIST.
ENDIF.
*&---------------------------------------------------------------------*
*& Form GET_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM GET_DATA .
SELECT A~MATNR
MAKTX
WERKS
LGORT
LABST
INTO TABLE ITAB
FROM MARA AS A
JOIN MAKT AS B
ON B~MATNR = A~MATNR
JOIN MARD AS C
ON C~MATNR = A~MATNR
WHERE A~MATNR IN S_MATNR
AND SPRAS = SY-LANGU.
ENDFORM. " GET_DATA
*&---------------------------------------------------------------------*
*& Form SHOW_LIST
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM SHOW_LIST .
SORT ITAB BY MATNR.
LOOP AT ITAB.
AT FIRST.
WRITE:/50 'Material Stock List'.
ULINE.
ENDAT.
AT NEW MATNR.
READ TABLE ITAB INDEX SY-TABIX.
FORMAT INTENSIFIED OFF COLOR COL_HEADING.
WRITE:/ 'Material :', ITAB-MATNR, ITAB-MAKTX.
FORMAT RESET.
ENDAT.
WRITE:/50 ITAB-WERKS,
ITAB-LGORT,
ITAB-LABST.
AT END OF MATNR.
SUM.
FORMAT INTENSIFIED ON COLOR COL_TOTAL.
WRITE:/ 'Sub Total: ',60 ITAB-LABST.
FORMAT RESET.
ENDAT.
AT LAST.
SUM.
FORMAT INTENSIFIED ON COLOR COL_GROUP.
WRITE:/ 'Total: ',60 ITAB-LABST.
FORMAT RESET.
ENDAT.
ENDLOOP.
ENDFORM. " SHOW_LIST