Professional Documents
Culture Documents
REPORT zmaterial_mastar_report.
TYPE-POOLS: slis.
BEGIN OF ty_marc,
matnr TYPE marc-matnr,
werks TYPE marc-werks,
prctr TYPE marc-prctr,
STEUC TYPE marc-STEUC, """added 05072017
END OF ty_marc,
BEGIN OF ty_makt,
matnr TYPE makt-matnr,
maktx TYPE makt-maktx,
END OF ty_makt,
BEGIN OF ty_ausp,
objek TYPE ausp-objek,
atinn TYPE ausp-atinn,
klart TYPE ausp-klart,
END OF ty_ausp,
BEGIN OF ty_mara,
matnr TYPE mara-matnr,
spart TYPE mara-spart,
mtart TYPE mara-mtart,
meins TYPE mara-meins,
ean11 TYPE mara-ean11,
matkl TYPE mara-matkl,
xchpf TYPE mara-xchpf,
mhdrz TYPE mara-mhdrz,
mhdhb TYPE mara-mhdhb,
iprkz TYPE mara-iprkz,
rdmhd TYPE mara-rdmhd,
objek TYPE inob-objek,
END OF ty_mara,
BEGIN OF ty_mvke,
matnr TYPE mvke-matnr,
vkorg TYPE mvke-vkorg,
vtweg TYPE mvke-vtweg,
mvgr1 TYPE mvke-mvgr1,
mvgr2 TYPE mvke-mvgr2,
mvgr3 TYPE mvke-mvgr3,
mvgr4 TYPE mvke-mvgr4,
mvgr5 TYPE mvke-mvgr5,
END OF ty_mvke,
BEGIN OF ty_tvm1t,
mvgr1 TYPE tvm1t-mvgr1,
bezei TYPE tvm1t-bezei,
spras TYPE tvm1t-spras,
END OF ty_tvm1t,
BEGIN OF ty_tvm2t,
mvgr2 TYPE tvm2t-mvgr2,
bezei TYPE tvm2t-bezei,
spras TYPE tvm2t-spras,
END OF ty_tvm2t,
BEGIN OF ty_tvm3t,
mvgr3 TYPE tvm3t-mvgr3,
bezei TYPE tvm3t-bezei,
spras TYPE tvm3t-spras,
END OF ty_tvm3t,
BEGIN OF ty_tvm4t,
mvgr4 TYPE tvm4t-mvgr4,
bezei TYPE tvm4t-bezei,
spras TYPE tvm4t-spras,
END OF ty_tvm4t,
BEGIN OF ty_tvm5t,
mvgr5 TYPE tvm5t-mvgr5,
bezei TYPE tvm5t-bezei,
spras TYPE tvm5t-spras,
END OF ty_tvm5t,
BEGIN OF ty_mbew,
matnr TYPE mbew-matnr,
bwkey TYPE mbew-bwkey,
verpr TYPE mbew-verpr,
bklas TYPE mbew-bklas,
END OF ty_mbew,
BEGIN OF ty_klah,
klart TYPE klah-klart,
class TYPE klah-class,
clint TYPE klah-clint,
END OF ty_klah,
BEGIN OF ty_a900,
matnr TYPE a900-matnr,
knumh TYPE a900-knumh,
kschl TYPE a900-kschl,
END OF ty_a900,
BEGIN OF ty_a304,
matnr TYPE a304-matnr,
knumh TYPE a304-knumh,
kschl TYPE a304-kschl,
END OF ty_a304,
BEGIN OF ty_konp,
knumh TYPE konp-knumh,
kbetr TYPE konp-kbetr,
END OF ty_konp,
BEGIN OF ty_mard,
matnr TYPE mard-matnr,
werks TYPE mard-werks,
lgort TYPE mard-lgort,
END OF ty_mard,
BEGIN OF ty_t023,
matkl TYPE t023t-matkl,
wgbez TYPE t023t-wgbez,
END OF ty_t023,
BEGIN OF ty_vapma,
vkorg TYPE vapma-vkorg,
vtweg TYPE vapma-vtweg,
matnr TYPE vapma-matnr,
END OF ty_vapma,
BEGIN OF ty_inob1,
objek TYPE inob-objek,
klart TYPE inob-klart,
cuobj TYPE inob-cuobj,
iobj1(18) TYPE c,
END OF ty_inob1,
BEGIN OF ty_final,
matnr TYPE mara-matnr,
spart TYPE mara-spart,
mtart TYPE mara-mtart,
meins TYPE mara-meins,
ean11 TYPE mara-ean11,
matkl TYPE mara-matkl,
xchpf TYPE mara-xchpf,
mhdrz TYPE mara-mhdrz,
mhdhb TYPE mara-mhdhb,
iprkz TYPE mara-iprkz,
rdmhd TYPE mara-rdmhd,
STEUC TYPE marc-STEUC, """"added 05072017
maktx TYPE makt-maktx,
verpr TYPE mbew-verpr,
bklas TYPE mbew-bklas,
mrp TYPE konp-kbetr,
srm TYPE konp-kbetr,
rem TYPE konp-kbetr,
lgort TYPE mard-lgort,
mvgr1 TYPE mvke-mvgr1,
mvgr2 TYPE mvke-mvgr2,
mvgr3 TYPE mvke-mvgr3,
mvgr4 TYPE mvke-mvgr4,
mvgr5 TYPE mvke-mvgr5,
tmvgr1 TYPE tvm1t-bezei,
tmvgr2 TYPE tvm2t-bezei,
tmvgr3 TYPE tvm3t-bezei,
tmvgr4 TYPE tvm4t-bezei,
tmvgr5 TYPE tvm5t-bezei,
vtweg TYPE mvke-vtweg,
klart TYPE klah-klart,
class TYPE klasse_d,
werks TYPE marc-werks,
prctr TYPE marc-prctr,
wgbez TYPE t023t-wgbez,
prtxt TYPE prdkzt-prtxt,
clint TYPE kssk-clint,
END OF ty_final,
BEGIN OF ty_inob,
obj TYPE inob-objek,
END OF ty_inob,
BEGIN OF ty_prdk,
iprkz TYPE prdkzt-iprkz,
prtxt TYPE prdkzt-prtxt,
spras TYPE prdkzt-spras,
END OF ty_prdk,
BEGIN OF ty_kssk,
objek TYPE kssk-objek,
klart TYPE kssk-klart,
clint TYPE clint,
END OF ty_kssk.
START-OF-SELECTION.
PERFORM get_data.
PERFORM loop_data.
PERFORM display_data.
*&---------------------------------------------------------------------*
*& FORM GET_DATA
*&---------------------------------------------------------------------*
* TEXT
*----------------------------------------------------------------------*
* --> P1 TEXT
* <-- P2 TEXT
*----------------------------------------------------------------------*
FORM get_data .
SELECT matnr
vkorg
vtweg
mvgr1
mvgr2
mvgr3
mvgr4
mvgr5 FROM mvke INTO TABLE it_mvke
WHERE matnr IN s_matnr
AND vkorg EQ p_vkorg
AND vtweg IN s_vtweg.
SELECT matnr
werks
prctr STEUC FROM marc INTO TABLE it_marc """added
05072017 "
FOR ALL ENTRIES IN it_mard
WHERE matnr = it_mard-matnr
AND werks = it_mard-werks.
SELECT matnr
spart
mtart
meins
ean11
matkl
xchpf
mhdrz
mhdhb
iprkz
rdmhd
FROM mara INTO TABLE it_mara
FOR ALL ENTRIES IN it_marc
WHERE matnr = it_marc-matnr
AND mtart IN s_mtart
AND spart IN s_spart.
SELECT iprkz
prtxt
spras FROM prdkzt INTO TABLE it_prdk.
ENDIF.
SELECT objek
klart
cuobj FROM inob INTO TABLE it_inob1
FOR ALL ENTRIES IN it_inob WHERE objek = it_inob-obj.
SELECT matkl
wgbez FROM t023t INTO TABLE it_t023
FOR ALL ENTRIES IN it_mara
WHERE matkl = it_mara-matkl.
SELECT matnr
bwkey
verpr
bklas FROM mbew INTO TABLE it_mbew
FOR ALL ENTRIES IN it_mara
WHERE matnr = it_mara-matnr.
ENDIF.
SELECT matnr
knumh FROM a900 INTO TABLE it_a900
FOR ALL ENTRIES IN it_mara
WHERE matnr = it_mara-matnr AND kschl = 'ZMRP' AND datbi GE sy-datum.
SELECT knumh
kbetr FROM konp INTO TABLE it_konp
FOR ALL ENTRIES IN it_a900
WHERE knumh = it_a900-knumh.
ENDIF.
SELECT matnr
knumh FROM a304 INTO TABLE it_a304
FOR ALL ENTRIES IN it_mara
WHERE matnr = it_mara-matnr AND kschl = 'ZSRM' AND datbi GE sy-datum.
SELECT knumh
kbetr FROM konp INTO TABLE it_konp2
FOR ALL ENTRIES IN it_a304
WHERE knumh = it_a304-knumh.
ENDIF.
SELECT matnr
knumh FROM a304 INTO TABLE it_a3042
FOR ALL ENTRIES IN it_mara
WHERE matnr = it_mara-matnr AND kschl = 'ZREM' AND datbi GE sy-datum.
SELECT knumh
kbetr FROM konp INTO TABLE it_konp3
FOR ALL ENTRIES IN it_a3042
WHERE knumh = it_a3042-knumh.
ENDIF.
SELECT matnr
maktx FROM makt INTO TABLE it_makt
FOR ALL ENTRIES IN it_mara
WHERE matnr = it_mara-matnr.
SELECT mvgr1
bezei
spras FROM tvm1t INTO TABLE it_tvm1t
FOR ALL ENTRIES IN it_mvke
WHERE mvgr1 = it_mvke-mvgr1 AND spras = 'EN'.
SELECT mvgr2
bezei
spras FROM tvm2t INTO TABLE it_tvm2t
FOR ALL ENTRIES IN it_mvke
WHERE mvgr2 = it_mvke-mvgr2 AND spras = 'EN'.
SELECT mvgr3
bezei
spras FROM tvm3t INTO TABLE it_tvm3t
FOR ALL ENTRIES IN it_mvke
WHERE mvgr3 = it_mvke-mvgr3 AND spras = 'EN'.
SELECT mvgr4
bezei
spras FROM tvm4t INTO TABLE it_tvm4t
FOR ALL ENTRIES IN it_mvke
WHERE mvgr4 = it_mvke-mvgr4 AND spras = 'EN'.
SELECT mvgr5
bezei
spras FROM tvm5t INTO TABLE it_tvm5t
FOR ALL ENTRIES IN it_mvke
WHERE mvgr5 = it_mvke-mvgr5 AND spras = 'EN'.
ENDIF.
IF it_inob IS NOT INITIAL.
SELECT objek
klart
clint FROM kssk INTO TABLE it_kssk.
SELECT klart
class
clint FROM klah INTO TABLE it_klah.
ENDIF.
* <-- P2 TEXT
*----------------------------------------------------------------------*
FORM loop_data .
wa_final-tmvgr5 = wa_tvm5t-bezei.
CLEAR wa_tvm5t.
ENDIF.
ENDIF.
IF sy-subrc = 0.
READ TABLE it_kssk INTO wa_kssk WITH KEY objek = wa_inob1-iobj1 klart =
wa_inob1-klart.
wa_final-clint = wa_kssk-clint.
IF wa_final-iprkz = '1'.
READ TABLE it_prdk INTO wa_prdk WITH KEY spras = 'EN' iprkz = '1'.
wa_final-prtxt = wa_prdk-prtxt.
CLEAR wa_prdk.
ELSE.
READ TABLE it_prdk INTO wa_prdk WITH KEY spras = 'EN' iprkz = '4'.
wa_final-prtxt = wa_prdk-prtxt.
CLEAR wa_prdk.
ENDIF.
ENDIF.
READ TABLE it_marc INTO wa_marc WITH KEY matnr = wa_mard-matnr werks =
wa_mard-werks.
wa_final-prctr = wa_marc-prctr.
wa_final-STEUC = wa_marc-STEUC. ""added 05072017
CLEAR wa_marc.
READ TABLE it_mbew INTO wa_mbew WITH KEY matnr = wa_mard-matnr bwkey =
vwerks.
IF sy-subrc = 0.
wa_final-verpr = wa_mbew-verpr.
wa_final-bklas = wa_mbew-bklas.
CLEAR wa_mbew.
CLEAR wa_mard.
ENDIF.
ENDIF.
*&---------------------------------------------------------------------*
*& FORM DISPLAY_DATA
*&---------------------------------------------------------------------*
* TEXT
*----------------------------------------------------------------------*
* --> P1 TEXT
* <-- P2 TEXT
*----------------------------------------------------------------------*
FORM display_data .
it_layo-colwidth_optimize = 'X'.
it_layo-zebra = 'X'.
ENDFORM. "Set_pf_status
*&---------------------------------------------------------------------*
*& FORM FLDCAT1
*&---------------------------------------------------------------------*
* TEXT
*----------------------------------------------------------------------*
* -->P_1724 TEXT
* -->P_1725 TEXT
* -->P_1726 TEXT
*----------------------------------------------------------------------*
FORM fldcat1 USING VALUE(p_1724)
VALUE(p_1725)
VALUE(p_1726).
wa_fcat-fieldname = p_1724.
wa_fcat-tabname = p_1725.
wa_fcat-seltext_l = p_1726.