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

Popular posts from this blog

ALV with field catalog merge

SAP ABAP real-time Interview Questions with answers

Using GUI Upload in SAP ABAP