WS_DELIVERY_UPDATE_2
Hi friends,
I am using for the first time the function - WS_DELIVERY_UPDATE_2, it works almost fine except the it keeps giving me a message that the serial item is in EDEL status.
It was not before but ofcourse now it is.
Could some one help me out with the problem how eliminate the msg.
Thanks,
Mike Roesler
HI Carl,
did you check this in the FM WS_DELIVERY_UPDATE_2
exporting parameters, all these are error related parameters.
<b>*" EXPORTING
*" VALUE(EF_ERROR_ANY) TYPE XFELD
*" VALUE(EF_ERROR_IN_ITEM_DELETION) TYPE XFELD
*" VALUE(EF_ERROR_IN_POD_UPDATE) TYPE XFELD
*" VALUE(EF_ERROR_IN_INTERFACE) TYPE XFELD
*" VALUE(EF_ERROR_IN_GOODS_ISSUE) TYPE XFELD
*" VALUE(EF_ERROR_IN_FINAL_CHECK) TYPE XFELD
*" VALUE(EF_ERROR_PARTNER_UPDATE) TYPE XFELD
*" VALUE(EF_ERROR_SERNR_UPDATE) TYPE XFELD</b>
Regards
vijay
Similar Messages
-
Use WS_DELIVERY_UPDATE_2 for Inbound Delivery HU Update?
Hello all,
I have used WS_DELIVERY_UPDATE_2 to successfully update Handling units to Outbound delivery and also perform batch split.
Can the same FM be used to update Inbound delivery with Handling units. I will be uploading the HU's through excel file.
Please advice.
Thanks,
SubbaHi,
Below is code for Inbound Delivery With HU, it worked for me.
gs_head-DELIV_DATE = sy-datum.
gs_head-DELIV_TIME = sy-uzeit.
gs_item-DELIV_ITEM = p_item1.
gs_item-MATERIAL = p_matnr1.
gs_item-DELIV_QTY = p_quan.
gs_item-UNIT = 'EA'.
gs_item-PO_NUMBER = p_po.
gs_item-PO_ITEM = 10.
APPEND gs_item TO gt_item.
CLEAR:gs_item.
CALL FUNCTION 'BBP_INB_DELIVERY_CREATE'
EXPORTING
IS_INB_DELIVERY_HEADER = gs_head
IMPORTING
EF_DELIVERY = gv_vbeln
TABLES
IT_INB_DELIVERY_DETAIL = gt_item
RETURN = gt_ret1.
gs_refobj-OBJECT = 03.
gs_refobj-OBJKEY = gv_vbeln.
gs_humain-vhilm = p_matnr2.
GS_HUMAIN-HU_STATUS_INIT = 'A'.
gs_humain-STATUS = '0010'.
gs_itempr1-VELIN = 1.
gs_itempr1-QUANTITY = p_quan.
gs_itempr1-meins = 'EA'.
gs_itempr1-matnr = p_matnr1.
gs_itempr1-werks = p_plant.
CALL FUNCTION 'PROCESS_HU_INBOUND_DLVRY'
EXPORTING
I_HU_ID = gv_huid (Blank)
I_NEW_HU = 'X'
I_UPDATE_DB = 'X'
I_CREATE_HU = 'X'
I_REFERENCE_OBJECT = gs_refobj
I_HU_HEADER_MAIN = gs_humain
I_SAVE_STEP = 'ITEM'
I_PACK_ACTIVITY = 'MAT'
I_DELIVERY_TYPE = '7'
I_PACKING_ACTIVITY = 'PACK'
I_PACK_TYPE = 'MAT'
IS_ITEM_PROPOSAL = gs_itempr1
IMPORTING
O_HU_REF_ID = gs_erefid
O_HU_HEADER = gt_eheader
O_HU_ITEMS = gt_eitem
O_HU_MESSAGES = gt_emsg[]
TABLES
ET_CREATED_HUS = gt_ehus[]
EXCEPTIONS
INPUT_MISSING = 1
NOT_POSSIBLE = 2
HEADER_ERROR = 3
ITEM_ERROR = 4
SERIAL_NR_ERROR = 5
FATAL_ERROR = 6
OPERATION_FAILED = 7
DELIVERY_UPDATE_ERROR = 8
OTHERS = 9.
IF SY-SUBRC EQ 0.
CLEAR:gs_vekp.
SELECT SINGLE * FROM vekp INTO gs_vekp WHERE VPOBJKEY = GV_VBELN.
ls_vbkok_wa-vbeln_vl = gv_vbeln.
ls_vbkok_wa-vbeln = gv_vbeln.
ls_vbkok_wa-VBTYP_VL = 7.
ls_vbkok_wa-wabuc = 'X'.
ls_vbkok_wa-spe_auto_gr = 'X'.
ls_vbkok_wa-kzebu = 'X'.
lt_verko-exidv = gs_vekp-exidv.
lt_verko-exida = 'E'.
lt_verko-magrv = 'YB01'.
lt_verko-werks = p_plant.
lt_verko-STATUS = '0010'.
APPEND lt_verko.
lt_verpo-venum = gs_vekp-venum.
lt_verpo-exidv_ob = gs_vekp-exidv.
lt_verpo-exidv = gs_vekp-exidv.
lt_verpo-velin = '1'.
lt_verpo-vbeln = gv_vbeln.
lt_verpo-POSNR = p_item1 .
lt_verpo-TMENG = p_quan.
lt_verpo-VRKME = 'EA'.
lt_verpo-MATNR = p_matnr1.
lt_verpo-werks = p_plant.
APPEND lt_verpo.
lt_vbpok-vbeln_vl = gv_vbeln.
lt_vbpok-posnr_vl = p_item1.
lt_vbpok-vbeln = gv_vbeln.
lt_vbpok-posnn = p_item1.
lt_vbpok-pikmg = p_quan.
lt_vbpok-matnr = p_matnr1.
lt_vbpok-werks = p_plant.
lt_vbpok-pstyv = 'ELP'.
APPEND lt_vbpok.
lt_repack-SOURCEHU = gs_vekp-exidv.
lt_repack-DESTHU = gs_vekp-exidv.
lt_repack-PACK_QTY = p_quan.
lt_repack-BASE_UOM = 'EA'.
lt_repack-MATERIAL = p_matnr1.
lt_repack-PLANT = p_plant.
lt_repack-DELIV_NUMB = gv_vbeln.
lt_repack-DELIV_ITEM = p_item1.
APPEND lt_repack.
CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
EXPORTING
VBKOK_WA = ls_vbkok_wa
DELIVERY = gv_vbeln
update_picking = 'X'
no_messages_update_1 = 'X'
synchron = 'X'
commit = ' '
NICHT_SPERREN_1 = 'Y'
if_database_update_1 = '1'
if_error_messages_send = 'X'
TABLES
PROT = lt_prot
VERKO_TAB = lt_verko
VERPO_TAB = lt_verpo
IT_REPACK = lt_repack.
COMMIT WORK and WAIT.
Thanks,
Shankar Darbha -
WS_DELIVERY_UPDATE_2 - picked quantity with negative values
Hello All,
I have a problem when I call function WS_DELIVERY_UPDATE_2.
I have to update picked quantity from the delivery. If I have to update qty from 2 to 3, there is no problem. The corresponding parameter (pikmg) will contain '1' and the new values will be 3.
But the problem is when I want to have a smaller value. If I have to update qty from 3 to 2, the parameter will contain '-1' , but this parameter can only have positive values, so an error message is returned.
Does anyone know how to specify a smaller picked quantity or how to decrease this quantity?
Can anyone help me?
Many thanks in advance.
Best Regardscheck if you are passing the below parameters.
CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
EXPORTING
vbkok_wa = ls_vbkok
no_messages_update_1 = 'X'
commit = 'X'
delivery = p_delivery
if_error_messages_send = ' '
IMPORTING
ef_error_any = lv_error_any
ef_error_in_item_deletion = lv_error_in_item_deletion
ef_error_in_pod_update = lv_error_in_pod_update
ef_error_in_interface = lv_error_in_interface
ef_error_in_goods_issue = lv_error_in_goods_issue
ef_error_in_final_check = lv_error_in_final_check
ef_error_partner_update = lv_error_partner_update
ef_error_sernr_update = lv_error_sernr_update
TABLES
vbpok_tab = p_vbpok
tvpod_tab = p_tvpod. -
WS_DELIVERY_UPDATE_2 is not upating line text
I am trying to update Header and line item text using the FM WS_DELIVERY_UPDATE_2 with in the IDOC_INPUT_DELVRY. I have populated all the required prameters for line text in FM but it is not gettnig updated in delivery. Header text are getting updated without any issues. Could someone please help on this issue.
IT_TEXTH-RFBEL = '800003709'
IT_TEXTH-RFPOS = '000010'
IT_TEXTH-TDOBJECT = 'VBBP'
IT_TEXTH-TDNAME = '800003709000010'
IT_TEXTH-TDID = 'Z057'
IT_TEXTH-TDSPEAS = 'EN'
APPEND IT_TEXTH
IT_TEXTL-RFBEL = '800003709'
IT_TEXTL-RFPOS = '000010'
IT_TEXTL-TDID = 'Z057'
IT_TEXTL-TDSPRAS = 'EN'
IT_TEXTL-TDLINE = 'TEST TEXT'
APPEN IT_TEXTL
PASSING THIS INTO FM WS_DELIVERY_UPDATE_2 in table Parameters. The line item text is not getting updated.
Thanks
SenthilHi Nabheet,
Thanks for your reply. The WS_DELIVERY_UPDATE_2 was already used with in the standard IDOC posting FM 'IDOC_INPUT_DELVRY' but they were missing to pass text table parameters IT_TEXTH and IT_TEXTL. I wrote an enhancement to replace this FMwith added table parameters IT_TEXTH and IT_TEXTL to pass the text however the header text is working but not the line item text when delivery posted thru IDOC.
Thanks,
Senthil -
Handle errors/exceptions in WS_DELIVERY_UPDATE_2
hi all,
I am tryng to do batch split using 'WS_DELIVERY_UPDATE_2'. it did split in few cases.
but my problem is when executing in foreground it there is error in input data the function module just throws a 'E' error and program stops.
how to handle errors/exceptions. it just stops there and i am not able to continue with the program further.
CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
EXPORTING
vbkok_wa = it_vbkok_wa
synchron = 'X'
NO_MESSAGES_UPDATE_1 = ' '
commit = v_commit
delivery = v_delvry
UPDATE_PICKING = ' '
NICHT_SPERREN_1 = ' '
IF_CONFIRM_CENTRAL = ' '
IF_WMPP = ' '
IF_GET_DELIVERY_BUFFERED = ' '
IF_NO_GENERIC_SYSTEM_SERVICE = ' '
if_database_update_1 = '1'
IF_NO_INIT_1 = ' '
IF_NO_READ_1 = ' '
if_error_messages_send = 'X'
IF_NO_BUFFER_REFRESH = ' '
IT_PARTNER_UPDATE =
IT_SERNR_UPDATE =
IF_NO_REMOTE_CHG_1 = ' '
IF_NO_MES_UPD_PACK = ' '
IF_LATE_DELIVERY_UPD = ' '
IMPORTING
EF_ERROR_ANY = EF_ERROR_ANY
EF_ERROR_IN_ITEM_DELETION = EF_ERROR_IN_ITEM_DELETION
EF_ERROR_IN_POD_UPDATE = EF_ERROR_IN_POD_UPDATE
EF_ERROR_IN_INTERFACE = EF_ERROR_IN_INTERFACE
EF_ERROR_IN_GOODS_ISSUE = EF_ERROR_IN_GOODS_ISSUE
EF_ERROR_IN_FINAL_CHECK = EF_ERROR_IN_FINAL_CHECK
EF_ERROR_PARTNER_UPDATE = EF_ERROR_PARTNER_UPDATE
EF_ERROR_SERNR_UPDATE = EF_ERROR_SERNR_UPDATE
TABLES
vbpok_tab = it_vbpok_tab[]
PROT =
VERKO_TAB =
VERPO_TAB =
VBSUPCON_TAB_1 =
IT_VERPO_SERNR =
IT_PACKING =
IT_PACKING_SERNR =
IT_REPACK =
it_handling_units_1 = it_rehang[]
IT_OBJECTS =
ET_CREATED_HUS = it_CREATED_HUS[]
TVPOD_TAB =
if sy-subrc = '0'.
write:/ 'ok'.
else.
write:/ 'failed'.
endif.Change your code to:
if_error_messages_send = space
If you send 'X' the messages are displayed, otherwise they don't. Look at the message_send_check_do routine in the FM. -
WS_DELIVERY_UPDATE_2 for registration and booking
Hi experts.
I need your help for my issue.
I want to make registration and booking for a delivery. What parameters do I have to pass into ws_delivery_update_2 for the registration and booking?
Now I use the foolowing code. Are they enough for the booking and registration?
MOVE-CORRESPONDING ps_likp TO ls_vbkok.
ls_vbkok-vbeln_vl = ps_likp-vbeln.
ls_vbkok-vbtyp_vl = ps_likp-vbtyp.
ls_vbkok-wabuc = 'X'."booking
ls_vbkok-kzreg = 'X'."registration
ls_vbkok-kzlfd = 'X'."registration
CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
EXPORTING
synchron = gc_true
vbkok_wa = ls_vbkok
delivery = ps_likp-vbeln
IMPORTING
ef_error_any = lv_error_any
ef_error_in_goods_issue = lv_error_in_goods
TABLES
prot = lt_prot
EXCEPTIONS
error_message = 1.Another question about this FM.
What parameters do we need to update quantity of an inbound delivery? Give me please a snippet of code.
Thanks in advance. -
Problem while using WS_DELIVERY_UPDATE_2
Hi All
I am using WS_DELIVERY_UPDATE_2 to update delivery qty and pick quantity. but there is no result, and no error. did i miss anything?
call function 'WS_DELIVERY_UPDATE_2'
exporting
vbkok_wa = wa_vbkok
delivery = p_vbeln
update_picking = 'X'
no_messages_update = 'X'
synchron = 'X'
commit = 'X'
nicht_sperren = 'x'
if_database_update = '1'
if_error_messages_send = 'x'
importing
ef_error_any = z_error_any
ef_error_in_item_deletion = z_deletion_error
ef_error_in_pod_update = z_pod_error
ef_error_in_interface = z_interface_error
ef_error_in_goods_issue = z_pgi_error
ef_error_in_final_check = z_final_error
tables
vbpok_tab = i_vbpok
prot = i_prot.
Thanks,
Venkat.Hi Renu
Thanks for your reply. I tried with your code still no result and no error.
I want to update delivery and pik quanitity also. check my code and any necessary inputs required please tell..
WA_VBKOK_WA-VBELN_VL = ls_it_lips1-vbeln.
WA_VBKOK_WA-VBTYP_VL = 'T'.
move WA_VBKOK_WA to VBKOK_WA.
DELIVERY = ls_it_lips1-vbeln.
loop at lt_it_lips1 into ls_it_lips1.
WA_VBPOK_TAB-VBELN_VL = ls_it_lips1-vbeln.
WA_VBPOK_TAB-POSNR_VL = ls_it_lips1-posnr.
WA_VBPOK_TAB-VBELN = ls_it_lips1-vbeln.
WA_VBPOK_TAB-POSNN = ls_it_lips1-posnr.
WA_VBPOK_TAB-MATNR = ls_it_lips1-matnr.
WA_VBPOK_TAB-WERKS = ls_it_lips1-werks.
APPEND WA_VBPOK_TAB to VBPOK_TAB.
*MOVE WA_VBPOK_TAB to VBPOK_TAB.
endloop.
loop at lt_it_lips1 into ls_it_lips1.
WA_PROTT-VBELN = ls_it_lips1-vbeln.
WA_PROTT-POSNR = ls_it_lips1-posnr.
WA_PROTT-matnr = ls_it_lips1-matnr.
WA_PROTT-arktx = ls_it_lips1-arktx.
WA_PROTT-LFIMG = ls_it_lips1-LFIMG.
WA_PROTT-VRKME = ls_it_lips1-VRKME.
APPEND WA_PROTT to PROTT .
*MOVE WA_PROTT to PROTT.
endloop.
CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
EXPORTING
VBKOK_WA = VBKOK_WA
SYNCHRON = 'X'
NO_MESSAGES_UPDATE_1 = 'X'
COMMIT = 'X'
DELIVERY = DELIVERY
UPDATE_PICKING = 'X'
IMPORTING
EF_ERROR_ANY = EF_ERROR_ANY
EF_ERROR_IN_ITEM_DELETION = EF_ERROR_IN_ITEM_DELETION
EF_ERROR_IN_POD_UPDATE = EF_ERROR_IN_POD_UPDATE
EF_ERROR_IN_INTERFACE = EF_ERROR_IN_INTERFACE
EF_ERROR_IN_GOODS_ISSUE = EF_ERROR_IN_GOODS_ISSUE
EF_ERROR_IN_FINAL_CHECK = EF_ERROR_IN_FINAL_CHECK
EF_ERROR_PARTNER_UPDATE = EF_ERROR_PARTNER_UPDATE
EF_ERROR_SERNR_UPDATE = EF_ERROR_SERNR_UPDATE
TABLES
VBPOK_TAB = VBPOK_TAB
PROT = PROTT
EXCEPTIONS
error_message = 99.
data c_message_id type MSGID.
Certain messages do not appear only sy-subrc is set
IF sy-subrc = 99.
wa_prott-msgno = '000'(037).
wa_prott-msgty = 'E'(036).
wa_prott-msgid = c_message_id.
wa_prott-msgv1 = 'Delivery'(034).
wa_prott-msgv2 = delivery.
wa_prott-msgv3 = 'cannot be updated'(035).
*prott-MSGV4 = it
APPEND wa_prott to prott1.
ENDIF.
Thanks,
Venkat.
Edited by: venkat1011 on Apr 7, 2011 10:47 AM -
Issue in FM WS_DELIVERY_UPDATE_2
Hi,
I am using FM WS_DELIVERY_UPDATE_2 for doing Goods Issue for a delivery note. when I am passing data to the FM, in return I am getting EF_ERROR_ANY and EF_ERROR_IN_GOODS_ISSUE errors. When I debugged the standard Fm, I found out that 2 standard error are generating stating :
1. Picking is not confirmed
2. Picking Quantity is more than Delivery Quantity.
But that is not the case, as I can see proper values in VL03N and also table VBUP.
Kindly advise.Hi Vinod,
I am passing the following parameters to the FM.
g_vbkok_wa-bolnr = l_infile_i_wa-bolnr.
g_vbkok_wa-traty = l_infile_i_wa-traty.
g_vbkok_wa-traid = l_infile_i_wa-traid.
g_vbkok_wa-lifex = l_infile_i_wa-lifex.
g_vbkok_wa-vbeln_vl = l_infile_i_wa-vbeln.
g_vbkok_wa-vbeln = l_infile_i_wa-vbeln.
g_vbkok_wa-wabuc = c_set.
g_vbpok_wa-vbeln_vl = l_infile_i_wa-vbeln.
g_vbpok_wa-vbeln = l_infile_i_wa-vbeln.
g_vbpok_wa-posnn = l_infile_i_wa-posnr.
g_vbpok_wa-posnr_vl = l_infile_i_wa-posnr.
g_vbpok_wa-matnr = l_infile_i_wa-matnr.
g_vbpok_wa-werks = l_infile_i_wa-werks.
g_vbpok_wa-charg = l_infile_i_wa-charg.
g_vbpok_wa-pikmg = l_infile_i_wa-erfmg.
APPEND g_vbpok_wa TO g_vbpok_tab.
additionaly, this parameters directly to FM...
UPDATE_PICKING = 'X'
IF_DATABASE_UPDATE_1 = '1'
IF_ERROR_MESSAGES_SEND = 'X'
and also sernr_tab with all serial numbers. -
Error BS001 (- HUGENERAL099) using WS_DELIVERY_UPDATE_2
Hello,
I get the BS001 ("No status object is available for &") error while updating HU with the function "WS_DELIVERY_UPDATE_2" under SAP release ECC 6.00.
Under SAP release 4.6C all worked fine. Does anyone have an idea?
kind regards Jürgen KrößHi
Thanks for your reply..
This is webdynpro related application, i am using bapi_transaction_commit after every bapi, and even i checked DB tables,
HUs are created at DB level also, then where is the problem.. check code please... this code i tried at se38 giving same error..
can you check with this code once.. in your sys.
DATA: lw_vbkok TYPE vbkok,
lt_vbpok TYPE TABLE OF vbpok,
lw_vbpok TYPE vbpok,
l_vbeln TYPE vbeln_vl.
l_vbeln = '0084000104'.
lw_vbkok-vbeln_vl = l_vbeln.
lw_vbkok-vbeln = l_vbeln.
*vbkok_wa-wabuc = 'X'.
lw_vbpok-vbeln_vl = l_vbeln.
lw_vbpok-posnr_vl = '000010'.
lw_vbpok-vbeln = l_vbeln.
lw_vbpok-posnn = '000010'.
lw_vbpok-pikmg = '1'.
APPEND lw_vbpok TO lt_vbpok.
DATA : VERKO_TAB TYPE TABLE OF VERKO,
WA_VERKO_TAB TYPE VERKO,
VERPO_TAB TYPE TABLE OF VERPO,
WA_VERPO_TAB TYPE VERPO.
WA_VERKO_TAB-VENUM = '0000003373' ."ls_pack_mat-INT_HAND_UNIT.
WA_VERKO_TAB-EXIDA = 'E'.
WA_VERKO_TAB-EXIDV = '00000000001000002279' ."ls_pack_mat-HANDLING_UNIT.
WA_VERKO_TAB-VSTEL = '2000'.
APPEND WA_VERKO_TAB to VERKO_TAB.
loop at lt_it_lips1 into ls_it_lips1.
WA_VERPO_TAB-VENUM = '0000003373'.
WA_VERPO_TAB-EXIDV_OB = '00000000001000002279' .
WA_VERPO_TAB-EXIDV = '00000000001000002279' .
WA_VERPO_TAB-VELIN = '1'.
WA_VERPO_TAB-VBELN = l_vbeln.
WA_VERPO_TAB-POSNR = '000010'.
CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
EXPORTING
vbkok_wa = lw_vbkok
commit = 'X'
delivery = l_vbeln
update_picking = 'X'
IF_NO_MES_UPD_PACK = 'X'
TABLES
vbpok_tab = lt_vbpok
VERKO_TAB = VERKO_TAB
VERPO_TAB = VERPO_TAB.
Thanks,
Venkat. -
Regarding WS_DELIVERY_UPDATE_2 and COMMIT WORK AND WAIT
Hi Experts,
My problem is, when I try to update 1 record more than 1 time, the data(Item delivery quantity)getting cleared after 2 or 3 attempts. Sometimes it was happening for 5 time and so on..
If i do debugg, it was not happening.
I was using Z F.M. i.e. - ZWM_SAISIE_PAL_LIV. This F.M has WS_DELIVERY_UPDATE_2.
Below i have mentioned my code.
Thanks & Regards,
Sree.
Moderator message - Please respect the 5,000 character maximum when posting. Post only the relevant portions of code
Edited by: Rob Burbank on Sep 20, 2011 10:58 AMs
-
Activate enhancement to WS_DELIVERY_UPDATE_2 to call an ES
Hi
I'm going to call WS_DELIVERY_UPDATE_2 from a Enterprise service OutboundDeliveryERPChangeRequestConfirmation_In.
The FM WS_DELIVERY_UPDATE_2 has a enhancement VL_SFWS_SC1_LV50SU16_INTF for the field IF_REPLACE_HUS.
How can i activate this enhancement so I can use the ES
DanielSeems like I should activate ESOA_OPS01 as a enterprise business function from the IMG.
http://help.sap.com/erp2005_ehp_02/helpdata/EN/46/4AD5D8501C0DB6E10000000A1553F6/frameset.htm -
Problem in WS_DELIVERY_UPDATE_2 ?
Hi All,
I am using BAPI , WS_DELIVERY_UPDATE_2 to update VL02N. I developed one application using that i am updating.
For Ex : One delivery contains 2 materials, 1 and 2 are the respective delivery quantities. If i select both materials and i give 1 and 2 as pick quantity, it is executing fine and updating delivery correctly.
case 1 : suppose, if i give pick qty 1 for first item and for sec item also 1, it is updating 2nd item pick qty only ( i.e., 1 ).
case 2 : If i select both items and give pick qty as 1 for 1st item 2nd item, it is updating 2nd item only ( i.e. 1 ).
My questing is, suppose for one item i may pick 1 qty at one time and 1 qty at next time, so toal pick qty is 2. how can i update this??? any ideas?
Thanks,
VenkatHi Venkat,
Try another FM 'SD_DELIVERY_UPDATE_PICKING'. I have used this for picking.
Sample code:-
1) Routine-3
IF i_vbpok IS NOT INITIAL.
CALL FUNCTION 'SD_DELIVERY_UPDATE_PICKING'
EXPORTING
vbkok_wa = wa_vbkok
nicht_sperren = c_y
aufrufer_t = c_x
synchron = c_x
NO_MESSAGES_UPDATE = ' '
if_error_messages_send = space
TABLES
vbpok_tab = i_vbpok
prot = i_prot
IF i_prot[] IS NOT INITIAL. "error
SORT i_prot BY msgty.
CLEAR wa_prot.
READ TABLE i_prot INTO wa_prot WITH KEY msgty = c_e BINARY SEARCH. "Checking error message
IF sy-subrc <> 0.
wa_final-remarks = text-004.
wa_final-pick = 'P'.
ELSE.
wa_final-pick = 'F'.
CLEAR ws_sapmessage.
CALL FUNCTION 'MESSAGE_TEXT_BUILD'
EXPORTING
msgid = wa_prot-msgid "Messg class
msgnr = wa_prot-msgno "Messg No.
msgv1 = wa_prot-msgv1
msgv2 = wa_prot-msgv2
msgv3 = wa_prot-msgv3
msgv4 = wa_prot-msgv4
IMPORTING
message_text_output = ws_sapmessage.
CONCATENATE text-006 ws_sapmessage INTO wa_final-remarks.
ENDIF.
**routine-2 :-
FORM f0003_fill_vbpok .
wa_vbkok-vbeln_vl = wa_vblkk-vbeln. "delivery number
wa_vbkok-vbeln = wa_vblkk-komau. "Pick order number
SORT i_lips BY vbeln posnr.
LOOP AT i_vblkp ASSIGNING <fs_vblkp>.
wa_vbpok-vbeln_vl = <fs_vblkp>-vbeln.
wa_vbpok-posnr_vl = <fs_vblkp>-posnr.
wa_vbpok-vbtyp_n = c_j . "-delivery "'Q' - WMS
wa_vbpok-pikmg = <fs_vblkp>-lfimg. "picking quantity.
wa_vbpok-plmin = c_0.
wa_vbpok-lfimg_flo = <fs_vblkp>-lfimg.
wa_vbpok-ndifm = 0.
wa_vbpok-taqui = space.
IF <fs_vblkp>-posnr > c_posnr AND NOT <fs_vblkp>-uecha IS INITIAL.
wa_vbpok-taqui = c_x.
ENDIF.
wa_vbpok-charg = <fs_vblkp>-charg.
CLEAR wa_lips.
READ TABLE i_lips INTO wa_lips WITH KEY vbeln = <fs_vblkp>-vbeln posnr = <fs_vblkp>-posnr BINARY SEARCH.
IF sy-subrc = 0.
wa_vbkok-vbeln = wa_lips-vgbel.
wa_vbpok-vbeln = wa_lips-vgbel.
wa_vbpok-posnn = wa_lips-vgpos.
wa_vbpok-werks = wa_lips-werks.
ENDIF.
wa_vbpok-matnr = <fs_vblkp>-matnr.
wa_vbpok-brgew = <fs_vblkp>-brgew.
wa_vbpok-gewei = <fs_vblkp>-gewei.
wa_vbpok-volum = <fs_vblkp>-volum.
wa_vbpok-voleh = <fs_vblkp>-voleh.
wa_vbpok-orpos = 0.
APPEND wa_vbpok TO i_vbpok.
ENDLOOP.
ENDFORM.
**routine-1
FORM f0002_get_picking .
CALL FUNCTION 'RV_DELIVERY_PICK_VIEW'"Get LIPS table
EXPORTING
vbeln = ws_c_vbeln
zweck = c_d
IMPORTING
vblkk_wa = wa_vblkk
TABLES
vblkp_tab = i_vblkp
lips_tab = i_lips
EXCEPTIONS
no_likp = 1
no_picking_allowed = 2
hu_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
REFRESH i_lips[].
ELSE.
PERFORM f0009_commit.
ENDIF.
ENDFORM. -
I want to update picking for a delivery order with splitting batches. The quantity is getting picked but the batches are not getting updated. Following is the code that I have been using. Can anyone please tell what am I missing here?
DATA: wa_vbkok TYPE vbkok,
it_vbpok TYPE STANDARD TABLE OF vbpok,
wa_vbpok TYPE vbpok,
it_prott TYPE STANDARD TABLE OF prott.
wa_vbkok-vbeln_vl = '80000244'. "DO
wa_vbkok-vbeln = '80000244'.
wa_vbkok-komue = 'X'. "To overwrite pick qty automatically into DO Qty
wa_vbpok-vbeln_vl = '80000244'.
wa_vbpok-posnr_vl = '000010'.
wa_vbpok-vbeln = '80000244'.
wa_vbpok-posnn = '000010'.
wa_vbpok-matnr = '11000021'.
wa_vbpok-charg = '0000389'. "1st Batch
wa_vbpok-werks = 'INDO'.
wa_vbpok-lianp = 'X'. "To change delivery QTy same as Pick Qty
wa_vbpok-pikmg = '1.620'. "Quantity in 1st Batch.
APPEND wa_vbpok TO it_vbpok.
wa_vbpok-vbeln_vl = '80000244'.
wa_vbpok-posnr_vl = '000010'.
wa_vbpok-vbeln = '80000244'.
wa_vbpok-posnn = '000010'.
wa_vbpok-matnr = '11000021'.
wa_vbpok-charg = '0000390'. "2nd Batch
wa_vbpok-werks = 'INDO'.
wa_vbpok-lianp = 'X'. "To change delivery QTy same as Pick Qty
wa_vbpok-pikmg = '1.610'. "Quantity in 2nd Batch.
APPEND wa_vbpok TO it_vbpok.
wa_vbpok-vbeln_vl = '80000244'.
wa_vbpok-posnr_vl = '000010'.
wa_vbpok-vbeln = '80000244'.
wa_vbpok-posnn = '000010'.
wa_vbpok-matnr = '11000021'.
wa_vbpok-charg = '0000392'. "3rd Batch
wa_vbpok-werks = 'INDO'.
wa_vbpok-lianp = 'X'. "To change delivery QTy same as Pick Qty
wa_vbpok-pikmg = '1.630'. "Quantity in 3rd Batch.
APPEND wa_vbpok TO it_vbpok.
CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
EXPORTING
vbkok_wa = wa_vbkok
synchron = 'X'
NO_MESSAGES_UPDATE_1 = ' '
commit = 'X'
delivery = '80000244'
update_picking = 'X'
TABLES
vbpok_tab = it_vbpok
prot = it_prott
The DO Qty was 5.000. While picking I want it to change to 4.860, i.e, the sum all the batch quantities. But with this code, the picked qty and the Do qty are changed to the quantity of the last batch in the internal table (in this case the 3rd batch). Also none of the batches are assigned to the DO.
Could anybody point out where am I going wrong?Hi,
Please change your parameters as follows:
wa_vbpok-vbeln_vl = '80000244'.
wa_vbpok-posnr_vl = '000010'.
wa_vbpok-vbeln = '80000244'.
wa_vbpok-posnn = '900001'. -
> Change
wa_vbpok-matnr = '11000021'.
wa_vbpok-charg = '0000389'. "1st Batch
wa_vbpok-werks = 'INDO'.
wa_vbpok-lianp = 'X'. "To change delivery QTy same as Pick Qty
wa_vbpok-lfimg = '1.620'. "Quantity in 1st Batch. -
> Change
wa_vbpok-orpos = '000010'. -
> Change
wa_vbpok-wms_rfpos = '000010'. -
> Change
If you want your total picked qty = delivered qty then you have to fill "force_orpos_reduction" = "X" (optional)
APPEND wa_vbpok TO it_vbpok.
For second line item use posnn = 900002 and for third use 900003. This number range depends upon your setting. Check a manual batch split in your system, if the number range in 900010, 900020 then use accordingly.
Cheers, -
Multiple headers not uploaded in ws_delivery_update_2
Hi,
I have uploaded the picking quantity through Bapi using FM-ws_delivery_update_2.I can upload for single header with multiple line items but i cant able to upload for multiple headers in this FM.Pls suggest.
Thanks,
Bala
Moderator message : Cross-posting not allowed. Thread locked.
Edited by: Vinod Kumar on Nov 14, 2011 5:00 PMHi,
I have uploaded the picking quantity through Bapi using FM-ws_delivery_update_2.I can upload for single header with multiple line items but i cant able to upload for multiple headers in this FM.Pls suggest.
Thanks,
Bala
Moderator message : Cross-posting not allowed. Thread locked.
Edited by: Vinod Kumar on Nov 14, 2011 5:00 PM -
Update Picking Quantity using 'WS_DELIVERY_UPDATE_2' - URGENT
Hi Experts,
I am struck with an error in updating the delivery. I am using an rfc WS_DELIVERY_UPDATE_2 which is updating the picking quantity one for the first time in a delivery with two delivery quantity in a batch but when iam using it for the other one it is not updating the quantity. I think the parameters which iam passing to RFC might be wrong. I am using the rfc as follows:
CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
EXPORTING
VBKOK_WA = WA_VBKOK
SYNCHRON = 'X'
DELIVERY = DEL_NBR
UPDATE_PICKING = 'X'
COMMIT = 'X'
IF_DATABASE_UPDATE_1 = '1'
TABLES
VBPOK_TAB = TAB_VBPOK
PROT = I_PROTT.
Please correct me if anything is wrong in the interface.
Any quick response will be appreciated & rewarded.
ThanksHi seshu,
It is triggering an error tht interface is not complete.
so i changed the code:
tables: vbfa.
DATA : WA_VBKOK LIKE VBKOK.
DATA : I_VBPOK LIKE VBPOK OCCURS 0 WITH HEADER LINE.
DATA : I_PROT LIKE PROTT OCCURS 0 WITH HEADER LINE.
clear vbfa.
START-OF-SELECTION.
WA_VBKOK-VBELN_VL = '0080882358'.
SELECT SINGLE * FROM VBFA WHERE VBELN = WA_VBKOK-VBELN_VL.
IF SY-SUBRC = 0.
WA_VBKOK-VBELN = VBFA-VBELV. " Sales and distribution document
ENDIF.
Fill the item level
I_VBPOK-VBELN_VL = '0080882358'.
I_VBPOK-POSNR_VL = '900001'.
SELECT SINGLE * FROM VBFA WHERE VBELN = I_VBPOK-VBELN_VL AND
POSNN = I_VBPOK-POSNR_VL.
IF SY-SUBRC = 0.
I_VBPOK-VBELN = VBFA-VBELV. " Sales and distribution document
I_VBPOK-POSNN = VBFA-POSNV. " Item of an SD document
I_VBPOK-VBTYP_N = VBFA-VBTYP_N. " Document category
ENDIF.
I_VBPOK-MATNR = '9692A\260'.
I_VBPOK-CHARG = '0000010669'.
I_VBPOK-PIKMG = '1.0'.
APPEND I_VBPOK.
CALL FUNCTION 'SD_DELIVERY_UPDATE_PICKING'
EXPORTING
VBKOK_WA = WA_VBKOK
SYNCHRON = 'X'
NO_MESSAGES_UPDATE = SPACE
NICHT_SPERREN = ' '
AUFRUFER_T = ' '
IF_ERROR_MESSAGES_SEND = 'X'
TABLES
VBPOK_TAB = I_VBPOK
PROT = I_PROT
if sy-subrc = 0.
COMMIT WORK.
WRITE:/ 'success'.
else.
write:/ 'not success'.
endif.
It is working fine in updating a delivery with 10 qty for only 8 picking but later when i am using it for the rest i.e., 2 picking qty, it is not working.
Could please hepl me with this.
Thanks
Maybe you are looking for
-
ITunes music sharing from PC to Mac
Hello, I have an old pc (not so old it cannot stably run iTunes) and a MacBook. I did not upgrade my MacBook's hard drive and it has become clogged with my music! I am at college and know about networking etc... I was wondering about the compatabilit
-
Price update from Original Material to copied Material Master
I have a scenario, We are selling Raw materials to outside companies who have shortage of materials on Loan Basis. Once they have materials, they will return the materials within a time period. If they don't have the materials and unable to return wi
-
Software Image Management in Prime LMS 4.2.3
In Software Repository Management I have added all the running images from our estate. The Status of each image is showing as "Not Available" even though I get the message "Image Status retrieved from Cisco.com successfully." when selecting Update
-
Hello, I am coming up with the spreadhseet retreival error very frequently and get Essbase Error 1130203. I went through the Error interpretation and found that Data Cache might be causing it. Here are the details of cache settings on my databases cu
-
Transfered to BT Infinity from virgin media
So I decided to transfer back to BT from virgin media after 2 years. The virgin broadband had become very slow during peak hours and wanted to see if BT was any better, which it has been so far. I used the BT website to initiate the transfer then a c