For UoM column, print the UoM text instead of the UoM.
I want to query T006A table to get the UoM text for each UoM found against the billing document item. Then I want to compare VBRP-VRKME with T006A-MSEHI to get T006A-MSEHT in English language (SPRAS = ‘E’). I am getting strange characters under UoM nit the text desired. Code is given below :
REPORT Z_ABAP_ASSIGNMENT_1_ADDITION.
TYPES : BEGIN OF ty_vbrk,
vbeln TYPE VBELN_VF,
fkdat TYPE FKDAT,
netwr TYPE NETWR,
kunrg TYPE KUNRG,
END OF ty_vbrk.
TYPES : BEGIN OF ty_vbrp,
vbeln TYPE VBELN_VF,
posnr TYPE POSNR_VF,
matnr TYPE MATNR,
fkimg TYPE FKIMG,
vrkme TYPE VRKME,
arktx TYPE ARKTX,
meins TYPE MEINS,
netwr TYPE NETWR_FP,
mwsbp TYPE MWSBP,
END OF ty_vbrp.
TYPES : BEGIN OF ty_T006A,
spras TYPE SPRAS,
msehi TYPE MSEHI,
mseht TYPE MSEHT,
END OF ty_T006A.
DATA : st_vbrk TYPE ty_vbrk,
it_vbrp TYPE STANDARD TABLE OF ty_vbrp,
wa_vbrp TYPE ty_vbrp,
it_T006A TYPE STANDARD TABLE OF ty_T006A,
wa_T006A TYPE ty_T006A.
PARAMETERS p_vbeln TYPE VBELN_VF.
SELECT SINGLE
vbeln
fkdat
netwr
kunrg
FROM vbrk
INTO st_vbrk
WHERE vbeln EQ p_vbeln.
SELECT
vbeln
posnr
matnr
fkimg
vrkme
arktx
meins
netwr
mwsbp
FROM vbrp
INTO TABLE it_vbrp
WHERE vbeln EQ p_vbeln.
SELECT
spras
msehi
mseht
FROM T006A
INTO TABLE it_T006A.
WRITE : / 'Billing Document : ', 30 st_vbrk-vbeln,
/ 'Billing Date : ', 30 st_vbrk-fkdat,
/ 'Net Value : ', 30 st_vbrk-netwr LEFT-JUSTIFIED,
/ 'Payer : ',30 st_vbrk-kunrg.
SKIP 2.
WRITE : / 'Item',
15 'Material',
30 'Description',
60 'Quantity',
74 'UoM',
85 'Net Value',
100 'Text Amount'.
LOOP AT it_vbrp INTO wa_vbrp.
READ TABLE it_T006A INTO wa_T006A WITH KEY msehi = wa_vbrp-vrkme.
WRITE : / wa_vbrp-posnr,
15 wa_vbrp-matnr,
30 wa_vbrp-arktx,
60 wa_vbrp-fkimg LEFT-JUSTIFIED,
74 wa_T006A-mseht LEFT-JUSTIFIED,
85 wa_vbrp-netwr LEFT-JUSTIFIED,
100 wa_vbrp-mwsbp LEFT-JUSTIFIED.
ENDLOOP.