Go on link..

link us with ...

Tuesday, December 21, 2010

Consumption Report of the R.M./P.M. which are consumed against the Process Orders required on Daily/

REPORT ZVVF_CR_004_CONSREP NO STANDARD PAGE HEADING LINE-SIZE 150.
*---------------------------------------------------------------------*
* *
* MODULE : Production Planning *
* *
*---------------------------------------------------------------------*
* Objective : Consumption Report of the R.M./P.M. which are *
* consumed against the Process Orders required on *
* Daily/Weekly basis. *
* *
* Program : Update Tables ( ) Download Data ( ) Outputs List (X)*
* Technical Specs No : *
* LDB : *
* *
*---------------------------------------------------------------------*

*---------------------------------------------------------------------*
* Tables *
*---------------------------------------------------------------------*
TABLES :MSEG, "Document Segment Material: Item Data
MKPF, "Material Document: Header Data
MARA. "Material Master

*----------------------------------------------------------------------*
* INTERNAL TABLES: Begin with IT_ *
*----------------------------------------------------------------------*
DATA: it_plant1 type standard table of ZCT004_01 with header line,
it_plant2 type standard table of ZCT004_01 with header line,
it_mseg type standard table of ZCT004_01 with header line.

*----------------------------------------------------------------------*
* STRUCTURES : Begin with WA_ *
*----------------------------------------------------------------------*
DATA: wa_plant type ZCT004_01,
wa_plant1 type ZCT004_01,
wa_mseg type ZCT004_01.

*----------------------------------------------------------------------*
* DATA : Begin with W_ *
*----------------------------------------------------------------------*
DATA: w_totqty type MENGE_D,
w_batchqty type MENGE_D,
w_matqty type MENGE_D,
w_wtotqty type MENGE_D,
w_wbatchqty type MENGE_D,
w_wmatqty type MENGE_D,
w_rtotqty type MENGE_D,
w_rbatchqty type MENGE_D,
w_rmatqty type MENGE_D,
w_var type p decimals 3,
w_batchvar type p decimals 3,
w_matvar type p decimals 3,
w_totvar type p decimals 3,
w_maktx type maktx,
w_numlin type i,
w_name type t001w-name1.

*----------------------------------------------------------------------*
* SELECT-OPTIONS: Begin with SO_ *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK ConMat WITH FRAME TITLE TEXT-001.
PARAMETERS: PR_WERK LIKE MARC-WERKS OBLIGATORY. "Werk
SELECT-OPTIONS: so_bldat FOR MKPF-BLDAT OBLIGATORY. "Document Date
SELECT-OPTIONS: so_matnr FOR mseg-matnr. "Material
SELECT-OPTIONS: so_mtart for MARA-mtart OBLIGATORY. "Material Type
SELECT-OPTIONS: so_bwart FOR MSEG-BWART. "Movement Type
SELECT-OPTIONS: so_lgort FOR MSEG-LGORT. "Storage Location
SELECT-OPTIONS: so_usnam FOR MKPF-USNAM. "UserName
SELECTION-SCREEN END OF BLOCK ConMat.

*----------------------------------------------------------------------*
* START-OF-SELECTION *
*----------------------------------------------------------------------*
START-OF-SELECTION.
PERFORM F001_FETCH_DATA.

*----------------------------------------------------------------------*
* END-OF-SELECTION *
*----------------------------------------------------------------------*
END-OF-SELECTION.
PERFORM F002_DISPLAY_DATA.
FORMAT RESET.
WRITE : /1(175) TEXT-002 CENTERED.

*----------------------------------------------------------------------*
* TOP-OF-PAGE *
*----------------------------------------------------------------------*
TOP-OF-PAGE.
PERFORM F003_HEADER.

*&---------------------------------------------------------------------*
*& Form F001_FETCH_DATA *
*&---------------------------------------------------------------------*
FORM F001_FETCH_DATA .

*fetching records from MKPF table on document date and username.
SELECT distinct mblnr mjahr bldat
into corresponding fields of table it_plant2
from mkpf where bldat in so_bldat and usnam in so_usnam.

if sy-subrc = 0.
select m~mblnr m~mjahr m~aufnr m~werks m~lgort m~matnr m~charg
mtart m~bwart m~ebeln menge m~meins m~erfmg m~erfme b~bdmng
b~enmng maktx
into corresponding fields of table it_mseg
from mseg as m
left join makt as t on t~matnr = m~matnr
left join resb as b on m~rsnum = b~rsnum and m~rspos = b~rspos
and m~rsart = b~rsart
inner join mara as r on r~matnr = m~matnr
where m~werks = pr_werk and m~matnr in so_matnr and m~bwart in
so_bwart and m~lgort in so_lgort and r~mtart in so_mtart.

select single name1 into w_name
from t001w where werks = pr_werk.

loop at it_plant2 into wa_plant.

loop at it_mseg into wa_mseg where mblnr = wa_plant-mblnr
and mjahr = wa_plant-mjahr.
if wa_mseg-mblnr = wa_plant-mblnr and
wa_mseg-mjahr = wa_plant-mjahr.
* if sy-subrc = 0.
wa_mseg-mblnr = wa_plant-mblnr.
wa_mseg-mjahr = wa_plant-mjahr.
wa_mseg-bldat = wa_plant-bldat.
insert wa_mseg into table it_plant1.
endif.
endloop.
endloop.
sort it_plant1 by werks matnr charg.
endif.

ENDFORM. " F001_FETCH_DATA
*&---------------------------------------------------------------------*
*& Form F002_DISPLAY_DATA *
*&---------------------------------------------------------------------*
FORM F002_DISPLAY_DATA .

DESCRIBE TABLE IT_PLANT1 LINES W_NUMLIN.

if W_NUMLIN > 0.

LOOP AT IT_PLANT1.

w_totqty = w_totqty + it_plant1-menge.
w_matqty = w_matqty + it_plant1-menge.
w_batchqty = w_batchqty + it_plant1-menge.

w_wtotqty = w_wtotqty + it_plant1-enmng.
w_wmatqty = w_wmatqty + it_plant1-enmng.
w_wbatchqty = w_wbatchqty + it_plant1-enmng.

w_rtotqty = w_rtotqty + it_plant1-bdmng.
w_rmatqty = w_rmatqty + it_plant1-bdmng.
w_rbatchqty = w_rbatchqty + it_plant1-bdmng.

w_var = ( ( it_plant1-enmng - it_plant1-bdmng ) / it_plant1-bdmng
) * 100.
w_totvar = w_totvar + w_var.
w_matvar = w_matvar + w_var.
w_batchvar = w_batchvar + w_var.

WRITE : /1 sy-vline, 8 sy-vline.

AT NEW werks.
WRITE : 2(5) it_plant1-werks CENTERED.
ENDAT.

WRITE : 9(4) it_plant1-lgort,sy-vline.

w_maktx = it_plant1-maktx.

AT NEW matnr.
FORMAT COLOR 3 INTENSIFIED OFF.
WRITE : 15(10) it_plant1-matnr.
FORMAT COLOR 3 OFF.
WRITE : 27(25) w_maktx."35(40)
ENDAT.

WRITE 26 sy-vline.
WRITE 53 sy-vline.

AT NEW charg.
FORMAT COLOR 3 INTENSIFIED OFF.
WRITE : 54(10) it_plant1-charg.
FORMAT COLOR 3 OFF.
ENDAT.


WRITE : 65 sy-vline, 66(10) it_plant1-bldat, sy-vline, 78(10)
it_plant1-aufnr,
sy-vline, 90(13) it_plant1-menge, sy-vline,
105(3) it_plant1-meins, sy-vline, 110(13) it_plant1-bdmng,
sy-vline, 125(13) it_plant1-enmng, sy-vline, 140(9) w_var,
150 sy-vline.

AT END OF charg.
WRITE : /1 sy-uline, 2(148) SY-ULINE,150 sy-vline.
FORMAT COLOR 3 INTENSIFIED OFF.
WRITE : /1 sy-vline, 2 text-025, 28(10) it_plant1-charg.
WRITE : 90(13) w_batchqty, 110(13) w_rbatchqty,
125(13) w_wbatchqty, 140(9) w_batchvar.

w_batchqty = 0.
w_rbatchqty = 0.
w_wbatchqty = 0.
w_batchvar = 0.

FORMAT COLOR 3 OFF.
WRITE : 150 sy-vline.
WRITE : /1(149) SY-ULINE,150 sy-vline.
ENDAT.

AT END OF matnr.
WRITE : 1 sy-uline, 2(148) SY-ULINE,150 sy-vline.
FORMAT COLOR 3 INTENSIFIED OFF.
WRITE : /1 sy-vline, 2 text-026.
WRITE : 28(10) it_plant1-matnr .
WRITE : 90(13) w_matqty, 110(13) w_rmatqty, 125(13)
w_wmatqty,140(9) w_matvar.

w_matqty = 0.
w_rmatqty = 0.
w_wmatqty = 0.
w_matvar = 0.

FORMAT COLOR 3 OFF.
WRITE : 150 sy-vline.
WRITE : /1(149) SY-ULINE,150 sy-vline.
ENDAT.

AT LAST.
WRITE : 1(149) SY-ULINE, 150 sy-vline.
WRITE : /1 sy-vline, 3(12) text-024,90(13) w_totqty,
110(13) w_rtotqty,125(13) w_wtotqty, 140(9) w_totvar,
150 sy-vline.
WRITE : /1(149) SY-ULINE, 150 sy-vline.
ENDAT.

******START BLOCK FOR WRAPPING MAT. DESC.
IF W_MAKTX+25(15) <> ''.
WRITE : /1 sy-vline, 2(5) TEXT-011 CENTERED,
8 sy-vline,
14 sy-vline,
26 sy-vline,
53 sy-vline,
65 sy-vline,
77 sy-vline,
89 sy-vline,
104 sy-vline,
109 sy-vline,
124 sy-vline,
139 sy-vline,
150 sy-vline.
ENDIF.
******END BLOCK FOR WRAPPING MAT. DESC.

ENDLOOP.

write : /1 sy-vline, 150 sy-vline.
WRITE : /1 sy-vline, TEXT-003, 12(130) sy-uline, 150 sy-vline.
WRITE :/1 sy-vline, 12(130) sy-uline, 150 sy-vline.
WRITE :/1 sy-vline, 12(130) sy-uline, 150 sy-vline.

write : /1 sy-vline, 150 sy-vline.
write : /1 sy-vline, 150 sy-vline.

write : /1 sy-vline, 4(13) TEXT-004,
120(15) TEXT-005, 150 sy-vline.
write : /1 sy-vline, 4(6) TEXT-006, 12(10) sy-datum,
120(6) TEXT-006,128(10) sy-datum, 150 sy-vline.
else.
write :/1 sy-vline, 2(100) TEXT-007 centered, 150
sy-vline.
endif.

ULINE.
ENDFORM. " F002_DISPLAY_DATA


*&---------------------------------------------------------------------*
*& Form F003_HEADER *
*&---------------------------------------------------------------------*
FORM F003_HEADER .

FORMAT COLOR 1 INTENSIFIED OFF.
ULINE.
IF PR_WERK = 'P071'.
WRITE : /1 sy-vline, 2(150) text-027 CENTERED, 150 sy-vline.
ELSE.
WRITE : /1 sy-vline, 2(150) text-023 CENTERED, 150 sy-vline.
ENDIF.
WRITE : /1 sy-vline, 2(172) TEXT-008 CENTERED, 150 sy-vline.

WRITE : /1 sy-vline, 2(7) text-028, 10(4) pr_werk, 110(6) TEXT-009,
117(10) so_bldat-low, 129(4) TEXT-010, 133(10) so_bldat-high ,
150 sy-vline.

WRITE : /1 sy-vline, 2(12) text-029, 15(30) w_name, 150 sy-vline.

FORMAT COLOR 1 INVERSE ON.

FORMAT RESET.
FORMAT COLOR 1 INTENSIFIED ON.
ULINE.
WRITE : /1 sy-vline, 2(5) TEXT-011,
sy-vline, 9(4) TEXT-012,
sy-vline, 15(10) TEXT-013,"18
sy-vline, 27(25) TEXT-014,"25
sy-vline, 54(10) TEXT-015,
sy-vline, 66(10) TEXT-016 CENTERED,
sy-vline, 78(10) TEXT-017 CENTERED,
sy-vline, 90(13) TEXT-018 CENTERED,
sy-vline, 105(3) TEXT-019 CENTERED,
sy-vline, 110(13) TEXT-020 CENTERED,
sy-vline, 125(13) TEXT-021 centered,
sy-vline, 140(9) TEXT-022 centered,
sy-vline.
ULINE.

ENDFORM. " F003_HEADER

No comments:

link us...

For Visitors

if you want to publish or Add something on ERP, SAP , SAP FUNCTIONAL, SAP ABAP then mail us along with your email-id. contain must be yours

email-id :- avinashkr_raj@yahoo.com(any email)

email-id :- avinaskr_raj.abap@blogger.com ( use only gmail)