Adding Custom fields to Zone wise Picking Status Under Outbound.
Step 1: Run the T-code SPRO to check the FM.
Step 2: Click on SAP ref IMG. Expand SCM Extended Warehouse Management - Extended Warehouse Management - Monitoring - Warehouse Management Monitor.
Step 3: Execute Customize Monitor Tree. Expand Outbound and double click on Zone wise Picking Status.
Step 4: In This case FM - Z575F_MON_OUTB_ZONE_PICK_STAT, TT- Z575TT_ZONEWISE_PICK_STATUS, Structure - Z575S_ZONEWISE_PICK_STATUS, Function Group- SAPLZ575_MON_OUTB_ZONE_PICK_ST.
Step 5: I need to add 3 fields - Price, Ship to party, Ship to party description for Delivery.
Step 6: Price should be fetched from table /SCWM/T_VALUATE multiplied by Source Target quantity BUOM, Delivery Ship to part and Description should be fetched from BUT000 use field NAME_ORG1 .
Step 7: Change the structure to add 3 fields and activate the structure.
Step 8: Change the FM.
" Start of change AVARIKA | 09.12.2025 | EWM Dubai changes
TYPES: BEGIN OF ls_matnr ,
matnr TYPE /scwm/de_matid,
END OF ls_matnr,
BEGIN OF ls_valuate,
lgnum TYPE /scwm/lgnum,
matid TYPE /scwm/de_matnr,
vprsv TYPE vprsv,
verpr TYPE verpr,
stprs TYPE stprs,
END OF ls_valuate,
BEGIN OF ls_partner,
docno TYPE /scdl/dl_docno_int,
sh_party TYPE /scdl/dl_partyno,
END OF ls_partner.
DATA: l_r_partner TYPE ls_partner,
l_t_partner TYPE TABLE OF ls_partner,
lt_partner1 TYPE /scdl/dl_partyloc_tab,
lr_partner1 TYPE /scdl/dl_partyloc_str..
DATA: l_f_matnr TYPE /scwm/de_matid,
l_t_matnr TYPE TABLE OF ls_matnr,
l_r_matnr TYPE ls_matnr,
l_t_valuate1 TYPE TABLE OF ls_valuate,
l_r_valuate1 TYPE ls_valuate.
CONSTANTS: l_c_stprt TYPE char6 VALUE 'STPRT',
l_c_db01 TYPE char4 VALUE 'DB01'.
" End of change AVARIKA | 09.12.2025 | EWM Dubai changes
"Start of change AVARIKA | 09.12.2025 |EWM Dubai changes
LOOP AT et_data INTO DATA(lr_data). " Start total price
CALL FUNCTION 'CONVERSION_EXIT_MDLPD_INPUT'
EXPORTING
input = lr_data-matnr
IMPORTING
output = l_f_matnr.
IF l_f_matnr IS NOT INITIAL.
l_r_matnr-matnr = l_f_matnr.
APPEND l_r_matnr TO l_t_matnr.
ENDIF.
CLEAR: l_r_matnr, l_f_matnr.
ENDLOOP.
SELECT lgnum,
matid,
vprsv,
verpr,
stprs
FROM /scwm/t_valuate
INTO TABLE @DATA(l_t_valuate)
FOR ALL ENTRIES IN @l_t_matnr
WHERE lgnum EQ @l_c_db01
AND matid EQ @l_t_matnr-matnr.
IF sy-subrc = 0.
SORT l_t_valuate BY matid.
LOOP AT l_t_valuate ASSIGNING FIELD-SYMBOL(<fs_valuate>).
CALL FUNCTION 'CONVERSION_EXIT_MDLPD_OUTPUT'
EXPORTING
input = <fs_valuate>-matid
IMPORTING
output = l_r_valuate1-matid.
l_r_valuate1-lgnum = <fs_valuate>-lgnum.
l_r_valuate1-stprs = <fs_valuate>-stprs.
l_r_valuate1-verpr = <fs_valuate>-verpr.
l_r_valuate1-vprsv = <fs_valuate>-vprsv.
APPEND l_r_valuate1 TO l_t_valuate1.
CLEAR: l_r_valuate1.
ENDLOOP.
ENDIF.
LOOP AT et_data ASSIGNING FIELD-SYMBOL(<lr_data1>).
READ TABLE l_t_valuate1 INTO DATA(l_r_valuate2) WITH KEY matid = <lr_data1>-matnr.
IF sy-subrc = 0 AND l_r_valuate2-vprsv = 'S'.
<lr_data1>-total_price = <lr_data1>-vsolm * l_r_valuate2-stprs * 100.
ELSEIF l_r_valuate2-vprsv = 'V'.
<lr_data1>-total_price = <lr_data1>-vsolm * l_r_valuate2-verpr * 100.
ENDIF.
CLEAR: l_r_valuate2.
ENDLOOP.
UNASSIGN <lr_data1>. " End total price
DATA(lo_prd1) = /scwm/cl_dlv_management_prd=>get_instance( ). "Start Ship to party
TRY.
CALL METHOD lo_prd1->query
EXPORTING
it_selection = lt_selection
iv_doccat = /scdl/if_dl_doc_c=>sc_doccat_out_prd
is_read_options = ls_read_options
IMPORTING
et_headers = DATA(lt_headers).
CATCH /scdl/cx_delivery .
ENDTRY.
LOOP AT lt_headers INTO DATA(lr_headers).
REFRESH : lt_partner1. CLEAR: lr_partner1.
lt_partner1 = lr_headers-partyloc.
IF lt_partner1 IS NOT INITIAL.
READ TABLE lt_partner1 INTO lr_partner1 WITH KEY party_role = l_c_stprt.
IF sy-subrc = 0.
l_r_partner-docno = lr_headers-docno.
l_r_partner-sh_party = lr_partner1-partyno.
APPEND l_r_partner TO l_t_partner.
CLEAR : l_r_partner.
ENDIF.
ENDIF.
ENDLOOP.
SELECT partner,name_org1
FROM but000
INTO TABLE @DATA(l_t_but000)
FOR ALL ENTRIES IN @l_t_partner
WHERE partner EQ @l_t_partner-sh_party.
"END of change AVARIKA | 09.12.2025 |EWM Dubai changes
"Start of change AVARIKA | 09.12.2025 | EWM Dubai changes
READ TABLE l_t_partner INTO l_r_partner WITH KEY docno = <fs_data>-docno.
IF sy-subrc = 0.
READ TABLE l_t_but000 INTO DATA(l_r_but000) WITH KEY partner = l_r_partner-sh_party.
IF sy-subrc = 0.
<fs_data>-ship_to_party = l_r_but000-partner.
<fs_data>-ship_description = l_r_but000-name_org1.
ENDIF.
ENDIF.
CLEAR: l_r_but000,l_r_partner.
"END of change AVARIKA | 09.12.2025 | EWM Dubai changes
Testing:
* Run the T-code /SCWM/MON.
* Give Warehouse number and monitor.
* Expand Outbound and Double click on Zone Wise Picking Status.
* Execute.
******************************Thank you*******************************
Comments
Post a Comment