Create A Report For Following Detail: Requirement
Create A Report For Following Detail: Requirement
REQUIREMENT:
IT_lipscopy (VBELN, TOt del item qty, Corresponding Sales ord.no VGBEL)
4) Get Data From VBAP table for the fields VBELN POSNR kwmeng
where vbap-VBELN = for all entries IT_lips-vgbel and
vbap-posnr = for all entries IT_lips-vgpos
From 4th Step populate Data in IT_vbap.
IT_vbapcopy (VBELN, TOt sord item qty,)
1
it_final-Delidocno = IT_lipscopy-vbeln
it_final-Tot Item qty for Del.NO = IT_lipscopy-TOt del item qty.
read it_vbrpcopy with key vgbel = IT_lipscopy-vbeln.
if record found then populate
it_final-Billdocno = it_vbrpcopy-vbeln
it_final-Tot Item qty for Bill Doc.NO = it_vbrpcopy-TOTBILL qty.
Add Record to it_final internal table
endloop.
CODING:
2
*&---------------------------------------------------------------------*
*& Report ZROUGH3
*& package name : zrproject
*&---------------------------------------------------------------------*
*&transport request number: e01k901774
*&
*&---------------------------------------------------------------------*
REPORT ZPROJECT_12 LINE-COUNT 20(2) LINE-SIZE 255.
TYPES: BEGIN OF TY_VBRK,
VBELN TYPE VBRK-VBELN,
"BILLING DOCUMENT NUMBER
END OF TY_VBRK.
DATA: TA_VBRK TYPE TABLE OF TY_VBRK,
WA_VBRK TYPE TY_VBRK.
TYPES: BEGIN OF TY_VBRP,
VBELN TYPE VBRP-VBELN,
POSNR TYPE VBRP-POSNR,
FKIMG TYPE VBRP-FKIMG,
VGBEL TYPE VBRP-VGBEL,
VGPOS TYPE VBRP-VGPOS,
END OF TY_VBRP.
"DELIVERY NUMBER
"DELIVERY ITEM
"ACTUAL QUAN DELIVERED
"DOC NUMB OF REF DOC
"ITEM NUMB OF REF ITEM
"SALES DOC NO
"SALES DOC ITEM
"CUMULATIVE ORDER QUANTITY IN SALES
END OF TY_VBAPCOPY.
DATA: TA_VBAPCOPY TYPE TABLE OF TY_VBAPCOPY,
WA_VBAPCOPY TYPE TY_VBAPCOPY.
***DECLARATION OF FINAL TABLE***
TYPES: BEGIN OF TY_FINAL,
VBELN TYPE VBAP-VBELN,
TOT_SIQ TYPE VBAP-KWMENG,
P_VBELN TYPE LIPS-VBELN,
TOT_DIQ TYPE LIPS-LFIMG,
Q_VBELN TYPE VBRP-VBELN,
TOT_BQ TYPE VBRP-FKIMG,
END OF TY_FINAL.
DATA: TA_FINAL TYPE TABLE OF TY_FINAL,
WA_FINAL TYPE TY_FINAL.
***DESIGNING SELECTION SCREEN***
wa_vbrpcopy-vbeln = wa_vbrp-vbeln.
ENDAT.
wa_vbrpcopy-vgbel = wa_vbrp-vgbel.
wa_vbrpcopy-tot_bq = wa_vbrpcopy-tot_bq + wa_vbrp_n-fkimg.
*tot_bq = tot_bq + sub_tot_bq.
at END OF vbeln.
append wa_vbrpcopy to ta_vbrpcopy.
clear wa_vbrpcopy-tot_bq.
ENDAT.
ENDLOOP.
***FOR DELIVERY DOCUMENT***
sort ta_LIPS by vbeln.
delete ADJACENT DUPLICATES FROM ta_LIPS COMPARING ALL FIELDS.
loop at ta_LIPS into wa_LIPS.
clear wa_LIPS_n.
wa_LIPS_n = wa_LIPS.
at new vbeln.
wa_LIPScopy-vbeln = wa_LIPS-vbeln.
ENDAT.
wa_LIPScopy-vgbel = wa_LIPS-vgbel.
wa_LIPScopy-tot_DIq = wa_LIPScopy-tot_DIq + wa_LIPS-LFImg.
*tot_bq = tot_bq + sub_tot_bq.
at END OF vbeln.
append wa_LIPScopy to ta_LIPScopy.
clear wa_LIPScopy-tot_DIq.
ENDAT.
ENDLOOP.
***SALES DOCUMENT***
sort ta_VBAP by vbeln.
delete ADJACENT DUPLICATES FROM ta_VBAP COMPARING ALL FIELDS.
loop at ta_VBAP into wa_VBAP.
clear wa_VBAP_n.
wa_VBAP_n = wa_VBAP.
at new vbeln.
wa_VBAPcopy-vbeln = wa_VBAP-vbeln.
ENDAT.
wa_VBAPcopY-tot_SIq = wa_VBAPcopy-tot_SIq + wa_VBAP-KWMENG.
*tot_bq = tot_bq + sub_tot_bq.
at END OF vbeln.
append wa_VBAPcopy to ta_VBAPcopy.
clear wa_VBAPcopy-tot_SIq.
ENDAT.
ENDLOOP.
loop at ta_vbapcopy into wa_vbapcopy.
wa_final-vbeln = wa_vbapcopy-vbeln.
wa_final-tot_siq = wa_vbapcopy-tot_siq.
read TABLE ta_lipscopy into wa_lipscopy with key vgbel = wa_vbapcopy-vbeln.
if sy-subrc = 0.
wa_final-p_vbeln = wa_lipscopy-vbeln.
wa_final-tot_diq = wa_lipscopy-tot_diq.
endif.
read TABLE ta_vbrpcopy into wa_vbrpcopy with key vgbel = wa_lipscopy-vbeln.
if sy-subrc = 0.
wa_final-q_vbeln = wa_vbrpcopy-vbeln.
wa_final-tot_bq = wa_vbrpcopy-tot_bq.
ENDIF.
OUTPUT:
NEGATIVE TESTING:
10
11
12