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.
HIDE: LS_VBAK.
ENDLOOP.
AT USER-COMMAND.
CASE SY-UCOMM.
WHEN 'EXIT'.
LEAVE PROGRAM.
WHEN 'VBAPDATA'.
SELECT VBELN, POSNR, MATNR, MATKL, POSAR, STLNR, NETPR
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-POSNR, 60 LS_VBAP-MATNR, 80 LS_VBAP-MATKL, 100 LS_VBAP-STLNR, 120 LS_VBAP-NETPR.
HIDE: LS_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-MTART, 40 LS_MARA-MBRSH, 60 LS_MARA-MATKL, 80 LS_MARA-MEINS.
ENDLOOP.
ENDCASE.
Comments
Post a Comment