MODULE - 2 | LIST GENERATION TECHNIQUES ( CLASSICAL & INTERACTIVE REPORT.PDF )

 REPORT NAME: REPORT Z20382363_IR1.

QUESTION - 01


REPORT Z20382363_IR1.

START-OF-SELECTION.
SELECT FROM VBAK
  INTO TABLE @DATA(LT_VBAK).

AT SELECTION-SCREEN.
  IF SY-SUBRC <> 0.
    MESSAGE 'RECORD NOT FOUND' TYPE 'E'.
  ENDIF.

START-OF-SELECTION.
SET PF-STATUS 'ZMENU'.
   LOOP AT LT_VBAK INTO DATA(LS_VBAK).
     AT FIRST.
       ULINE.
       WRITE'SALES DOCUMENT'20 'DOCUMENT DATE'40 'SALES DOCUMENT TYPE'60 'SALES ORGANIZATION'90 'DISTRIBUTION CHANNEL'120 'DIVISION',
                 140 'SALES OFFICE'160 'CUSTOMER PO NUMBER'180 'SOLD TO PARTY'.
       ULINE.
       SKIP.
     ENDAT.

       WRITE/ LS_VBAK-VBELN,20 LS_VBAK-AUDAT,40 LS_VBAK-AUART,60 LS_VBAK-VKORG,90 LS_VBAK-VTWEG,120 LS_VBAK-SPART,140 LS_VBAK-VKBUR,
              160 LS_VBAK-BSTNK,180 LS_VBAK-KUNNR.
       HIDELS_VBAK.
   ENDLOOP.

AT USER-COMMAND.
  CASE SY-UCOMM.

    WHEN 'EXIT'.
      LEAVE PROGRAM.

    WHEN 'VBAPDATA'.
      SELECT VBELNPOSNRMATNRMATKLPOSARSTLNRNETPR
        FROM VBAP
        INTO TABLE @DATA(LT_VBAP)
        WHERE VBELN @LS_VBAK-VBELN.
       IF SY-SUBRC <> 0.
         MESSAGE 'RECORD NOT FOUND' TYPE 'E'.
       ENDIF.
      LOOP AT LT_VBAP INTO DATA(LS_VBAP).
        AT FIRST.
          ULINE.
          WRITE'SALES DOCUMENT'20 'SALES DOCUMENT ITEM'60 'MATERIAL NUMBER'80 'ITEM TYYPE'100 'BILL OF MATERIAL'120 'NET PRICE'.
          ULINE.
          SKIP.
        ENDAT.
        WRITE/ LS_VBAP-VBELN,20 LS_VBAP-POSNR60 LS_VBAP-MATNR80 LS_VBAP-MATKL100 LS_VBAP-STLNR120 LS_VBAP-NETPR.
        HIDELS_VBAP.
      ENDLOOP.

     WHEN 'MARADATA'.
       SELECT FROM MARA
         INTO TABLE @DATA(LT_MARA)
         WHERE MATNR @LS_VBAP-MATNR.
     IF SY-SUBRC <> 0.
         MESSAGE 'RECORD NOT FOUND' TYPE 'E'.
     ENDIF.
       LOOP AT LT_MARA INTO DATA(LS_MARA).
         AT FIRST.
           ULINE.
           WRITE'MATERIAL NUMBER'20 'MATERIAL TYPE'40 'INDUSTRY SECTOR'60 'MATERIAL GROUP'80 'UNIT OF MEASURE'.
           ULINE.
           SKIP.
         ENDAT.
         WRITE/ LS_MARA-MATNR,20 LS_MARA-MTART40 LS_MARA-MBRSH60 LS_MARA-MATKL80 LS_MARA-MEINS.
        ENDLOOP.

   ENDCASE.

Comments