Control Break statements in SAP ABAP

Example program for using control break statements in SAP ABAP.
REPORT  ZCONTROL_BREAK
        NO STANDARD PAGE HEADING.

DATA: BEGIN OF ITAB OCCURS 1,
        MATNR LIKE MARD-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.

SELECT A~MATNR
         MAKTX
         WERKS
         LGORT
         LABST
   INTO CORRESPONDING FIELDS OF TABLE ITAB
   FROM MARA AS A
   INNER JOIN MAKT AS B
   ON B~MATNR = A~MATNR
   INNER JOIN MARD AS C
   ON C~MATNR = A~MATNR
   WHERE A~MATNR IN S_MATNR
   AND SPRAS = SY-LANGU.

IF NOT ITAB[] IS INITIAL.
  SORT ITAB BY MATNR.
  LOOP AT ITAB.
    AT FIRST .
      WRITE:/50 'MATERIAL INFO'.
      ULINE.
    ENDAT.

    AT NEW MATNR.
      READ TABLE ITAB INDEX SY-TABIX.
      FORMAT INTENSIFIED ON COLOR COL_KEY.
      WRITE:/ 'Material:', ITAB-MATNR, ITAB-MAKTX.
      FORMAT RESET.
    ENDAT.
    FORMAT INTENSIFIED OFF COLOR COL_KEY.
    WRITE:/40 ITAB-WERKS,
           47 ITAB-LGORT,
           55 ITAB-LABST.
    FORMAT RESET.

    AT END OF MATNR.
      SUM.
      FORMAT INTENSIFIED ON COLOR COL_TOTAL.
      WRITE:/ 'SUB TOTAL:', 55 ITAB-LABST.
      FORMAT RESET.
    ENDAT.

    AT LAST.
      SUM.
      FORMAT INTENSIFIED ON COLOR COL_GROUP.
      WRITE:/ 'TOTAL:', 55 ITAB-LABST.
      FORMAT RESET.
    ENDAT.

  ENDLOOP.

ENDIF.

Popular posts from this blog

ALV with field catalog merge

SAP ABAP real-time Interview Questions with answers

Using GUI Upload in SAP ABAP