Update Storage Location in Delivery during Picking

Hello Experts,
I am implementing "picking" using a custom function module that ultimately calls SD_DELIVERY_UPDATE_PICKING to perform picking.
Frequently the third party application changes and sends a new storage location for a given delivery. The requirement is to update storage location in delivery while doing picking.
Thanks for your precious inputs.
Regards,
Hitesh

Use BAPI 'BAPI_OUTB_DELIVERY_CHANGE'. There is a parameter ITEM_DATA_SPL where you can put the storage location in.
Regards,
Michael
DATA: ls_header  TYPE bapiobdlvhdrchg,
      ls_control TYPE bapiobdlvhdrctrlchg,
      lt_return  TYPE TABLE OF bapiret2,
      ls_item    TYPE /spe/bapiobdlvitemchg,
      lt_item    TYPE TABLE OF /spe/bapiobdlvitemchg.
ls_header-deliv_numb = ls_control-deliv_numb = '0080000542'.
ls_item-deliv_numb   = '0080000542'.
ls_item-deliv_item   = '000010'.
ls_item-stge_loc     = 'AA02'.
APPEND ls_item TO lt_item.
CALL FUNCTION 'BAPI_OUTB_DELIVERY_CHANGE'
  EXPORTING
    header_data                   = ls_header
    header_control                = ls_control
    delivery                      = '0080000542'
  TECHN_CONTROL                 =
  HEADER_DATA_SPL               =
  HEADER_CONTROL_SPL            =
  SENDER_SYSTEM                 =
  TABLES
  HEADER_PARTNER                =
  HEADER_PARTNER_ADDR           =
  HEADER_DEADLINES              =
  ITEM_DATA                     =
  ITEM_CONTROL                  =
  ITEM_SERIAL_NO                =
  SUPPLIER_CONS_DATA            =
  EXTENSION1                    =
  EXTENSION2                    =
    return                        = lt_return
  TOKENREFERENCE                =
    item_data_spl                 = lt_item
  COLLECTIVE_CHANGE_ITEMS       =
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
  WAIT          =
IMPORTING
  RETURN        =

Similar Messages

  • How to update storage location & batch split on delivery items?

    Any idea how to perform the following using a BAPI or function call with regards to updating a Delivery (VL02/VL02N)?
    1) Enter or update a storage location on a delivery item?
    2) Batch split a delivery item to give multiple batch    numbers. For example if delivery item is '101' then    after batch split additional delivery items with batch number assigned will appear as '900001', '900002', '900003', etc Entering a single batch number is straight forward and can be done using WS_DELIVERY_UPDATE/_2
    Do not wish to use BDC or call transaction. Any help appreciated.

    hi sailatha..
    im doing BDC for VL01N transaction.. how can i pass multiple storage locations for picking quantity..  my requirement is  if the material is not there in the specified storage location it should search in the other storage locations for delivery.
    how can i solve this issue bcoz in the VL01N screen i can pass only one storage location.
    this is urgent requirement..
    kindly revert me back if u can help.
    thankx
    helpful answer will be rewarded.

  • BAPI or FM to Update storage location in outbound delivery with many items

    Hello!
    I have an urgent problem.
    Storage location determination didn't work and were  created thousands of deliveries without storage location.
    We want to run LSMW using BAPI.
    Which BAPI can update storage location (for many items in delivery. We saw an option to update the first item' but not all of them)
    PLZ try to help
    thank You

    Hi,
    check this FM:
    RV_DELIVERY_PICK_UPDATE
    SD_DELIVERY_UPDATE_PICKING

  • Storage Location from USERTEMP1 not picked during Goods Issue

    Hi All,
    We had populated the USERTEMP field in FMDERIVE with the Storage Location using the steps mentioned in the following thread
    Fund Center not getting populated through FMDERIVE
    The problem is that during a Goods Issue made from MIGO, this particular field is not getting picked up in the USERTEMP (trace was set up in FMDERIVE, which showed that the USERTEMP is empty).
    But in the case of PR/PO and other purchases, the USERTEMP is getting derived properly with the storage location.
    Why is that the USERTEMP behaves differently for a Goods Purchase and a Goods Issue ?
    Requesting help from the experts on this issue,
    Thanks,
    Wy.

    Hi Eli,
    We replicated the development we did for procurement (copying from storage location into USERTEMP) by finding out the enhancement point and the code worked fine here.
    One important thing to note is that the buffer need to be cleared everytime, before a value is entered here - the USERTEMP field is static otherwise.
    Thanks for your inputs,
    Wy

  • Function module does not update the storage location in delivery

    Hello,
    I've been trying to use SD_DELIVERY_UPDATE_PICKING to update the storage location in SD return deliveries, without any success. Any clues? The FM works fine when it comes to updating the picking quantity, but the storage location issue still persists.
    Thanks in advance,
    Joao

    Hi Joao,
    I have the same problem. I tried to find the FM SD_OUTB_DELIVERY_CHANGE  but couldn't find it. Have you by any change specified the incorrect FM name here? If yes, can you please communicate the correct FM name?
    Regards,
    Divyaman

  • VL10B - change Storage location for delivery

    Hi all,
    I have a requirement wherin, for the deliveries created for purchase orders, the storage location needs to be defaulted from the production order. The configuration of picking has only one stloc for my plant, but we have the same amterial stored at 2 storage locations. In the config we cannot maintain both stlocs for 1 plant. So I need to see if I can do an exit wherin I can read my production order and pick the storage location from there and post it on the delivery. Cn anyone help?

    hi Roy,
    solved this by finding a BADI under Shipping of deliveries which has a SAVE_DOCU_PREPARE interface taht can be triggered toi change storage location/
    Thanks for ur help.
    Problem solved.

  • BAPI_REQUISITION_CREATE is updating storage location address (global one)

    Hello Colleagues,
    We have a LN application for PR creation and is integrated with SAP. Process is PR gets transferred from LN to SAP and then PO would be created manually in SAP. Obseved couple of times that storage location address gets updated with delivery address in PR. Any pointers in this regard? Could you give me some insight about REQUISITION_ADDRDELIVERY parameter for BAPI, specially ADDR_NO.
    Thanks and Regards,
    Prasanth

    Simple rule is storage location address should not be changed from transaction data. In case item delivery address differs from storage location, it should made as local to PO. But here storage location got updated with new delivery address. Result is many POs are going to effet with this change in SLoc address. This problem found few months ago and now.

  • STO for storage location to storage location with delivery charges

    Dear Users,
    Please advice the configuration & pre-requisites for storage to storage location STO with delivery charges within a plant.
    Thanks & Regards,
    Shyam

    Moderator message:
    Please put some efforts into a search
    Storage location to storage location stock transfers have been many times discussed as well as delivery charges in UB stock transfer order.
    Do not just post your requirements and expect others to do your job.
    If you dont know how to search, then please see these blogs:
    A good way to search the forum is with google. See this blog with details for a good search
    Getting the Most out of Google: Optimizing Your Search Queries
    This blog describes how to use the SCN search:
    How to use SCN search
    The discussions are not a replacement for proper training
    Thread locked

  • Blocking the Storage Locations from Delivery

    Hi
    We have maintained for a plant different Storage locations like FG-Store,PRD-Store,WIP-Store etc
    If the same material exist in the FG-Store ,PRD-Store
    Can i restrict the Delivery to Happen only from FG Store & not from PRD-Store ?
    What is the config required for it?
    Regards
    AK
    Edited by: Ajithk on Jun 15, 2010 1:46 PM

    Hi,
    Please check the path
    SPRO-->MATERIAL MANAGEMENT->INVENTORY MANAGEMENT & PHYSICAL INVENTORY-->AUTHORISATION MANAGEMENT->AUTHORISATION CHECK FOR THE STORAGE LOCATION
    In that choose your plant and storage location and activate the AUTHORISATION
    and  it maintain the authorisation profiles for the object  M_MSEG_LGO and you can't create a goods mvoement from this storage location.
    Please try this and revert
    regards,
    santosh

  • No Single batch split item created in delivery during picking

    Hello,
    When there is only one batch split item, SD_DELIVERY_UPDATE_PICKING is not creating batch split item (90001) if delivery quantity is equal or less than picking quantity...I didi search for SAP Note (1360407) and found one which is applicable only to P3A Component.
    Instead of batch split it updates at item level itself. Now if again i post an IDOC with 2 batch split, then it adds both picking quantity and update the same line item itself.
    This is much worse. Any one faced this issue before???
    Thanks to update me
    Regards
    Hari

    When the batch is the same, regardless of the number of times the same batch is picked, the update to the delivery will be to the same header line item. The batch split (delivery line split with parent and child line items) will occur only when there are multiple batches picked against the same header line item. Since this behavior is standard SAP I'm doubtful that this can be changed via an exit or BADI (I couldn't find one to influcence this).

  • SHPCON - How to update LGORT (Storage Location)

    Hi experts.
    I'm using an INBOUND idoc with message SHPCON to create batch split for delivery items.
    When trying to update Storage Location, the field is not updated, but all the other fields are correctly populated.
    Does anybody know how I can have this field updated?
    Any user-exit I can use?
    Following the data I am using:
    Message Type : SHPCON
    Process Code  : DELV
    Function name : IDOC_INPUT_DELVRY
    Segment E1EDL18: PIC
    Segment E1EDL19: BAS
    Thank you for you attention!
    Edited by: Rodolfo Oliveira on Mar 6, 2012 10:24 AM

    You're a bit confused.  You can not buy more storage for your iPad.  It is what you bought the day you bought it.  So, a 16GB or a 32GB or a 64GB iPad can not be increased.  What you bought was more Cloud storage.  Apple gave you 5GB of cloud storage for free.  Once you've used that, you need to buy more.  Don't confuse that with adding storage to your actual iPad.  Two completely different things.

  • Stop delivery creation for perticular Storage Location

    Dear Experts
    As per scenario we have two storage location 1) packing stock and 2) Ware House stock. All delivery are create from Ware house st.loaction.as per requiremnt we want to stop Delivery creation for Packing St.location.
    Is ther any customization through which System should not Create Outbound delivery form Packing St.loaction,while doing this  rest of things sholud not affect for that S.Loaction
    Regards
    Pash@SD

    Go to SPRO-> Logistics Execution ->shipping ->picking->determine pikcing location ->assign picking location.
    Here you can remove the packing stock storage location assignment to plant/shipping point/storage conditions combination and then test.
    If this does not work, then check the path SPRO-> Logistics Execution ->shipping ->picking->define picking requirements. Here check any requirements is currently used. If so copy this routine and create a new routine to exclude the storage location (packing stock) from picking process.
    Regards,

  • Storage location updation for account assigned PO

    Hi All,
    Our requirement is that for an internal order assigned and subcontracting PO (Account assignment-F & item category-L) we want to create outbound deliveries for which we need to have stock in storage location after doing GR.
    But, I found that for the some of these kinds of POs while doing GR though MIGO system is updating storage location but for some POs it's not.
    Can you please suggest what should be the reason for this?

    Hi Jurgen,
    Thanks for your reply.
    You are correct. As per my knowledge also if there is account assigned PO then system will not update SL.
    But, I have one PO for internal order assigned (Acct Aggt Cat-F) but for this SL got updated.
    Can you tell me what setting should be there to facilitate this?

  • Shipping point and storage location determination

    for one of my delivery type i had defined shipping point determination as per following.
    define shipping conditions
    define loading group
    assign shipping points: with combination of shipping conditionsloading groupplantprop shippping pointmanual shiping point.
    i also checked the cmr and mmr both are correct.still system is not proposing shipping point and storage locatgion in my obd

    Hi Charan
    Shipping conditions is taken from sold to party
    Pls check whether you are using a different SP and SH
    Check in these t codes
    In OVL2 are you seeing the shipping pt determination for your combination?
    In OVL3 are you seeing the storage location determination for your combination?
    If yes then shipping pt will be definately picked up in sales order
    Storage location will be definately picked up in the delivery if you have assigned the rule MALA in OVLK
    Have you assigned your delivering plant to your shipping pt in enterprise structure assignment?
    This also check
    Refresh the whole order and try again
    If need be log out of SAP and relog and see provided you have youR OVL2 and OVL3 correct?
    Note If shipping conditions are assigned to your order type in VOV8 then that will have priority over the shipping conditions of SP
    So for that combination you should maintain shipping pt in OVL2
    Regards
    Raja

  • How to change the storage location using BAPI_OUTB_DELIVERY_CHANGE

    Hi !
    I want to do batch split in the delivery using BAPI_OUTB_DELIVERY_CHANGE.
    Can anyone tell me how to pass/change the storage location of each batch item.
    Is there any other BAPI that can do the batch split and populate the storage location also for the split batches?
    Regards,
    Firoz.

    Hi all,
    BAPI_OUTB_DELIVERY_CHANGE  can be used to do batch split and updating storage loaction against each item of an outbond delivey.
    I have done that in the folllowing way:
    1 > Firstly i have updated the storage location for each delivery item using 'BAPI_OUTB_DELIVERY_CHANGE' passing some mininal parameters.
       Fetch the item details from LIPS table based on the outbound delivery and pass the corresponding fields to item_data, item_control  and item_data_spl parameters and passed into intenal table li_lips.
    Loop at li_lips inti lw_lips.
        lw_item_data-deliv_numb           = lw_lips-vbeln.
        lw_item_data-deliv_item             = lw_lips-posnr.
        lw_item_data-material                = lw_lips-matnr.
        lw_item_data-fact_unit_nom      = lw_lips-umvkz.
        lw_item_data-fact_unit_denom  = lw_lips-umvkn.
        lw_item_data-base_uom            = lw_lips-meins.
        lw_item_data-sales_unit            = lw_lips-vrkme.
        lw_item_control-deliv_numb      = lw_lips-vbeln.
        lw_item_control-deliv_item        = lw_lips-posnr.
        lw_item_data_spl-deliv_numb   = lw_lips-vbeln.
        lw_item_data_spl-deliv_item     = lw_lips-posnr.
        lw_item_data_spl-pick_denial   = 'X'.
        lw_item_data_spl-stge_loc       = v_lgort.
    "(This would be your Storage Location which you want to be updated)
    Appending work areas into internal table to pass as parameter
        APPEND lw_item_data_lgort     TO li_item_data_lgort .
    Appending work areas into internal table to pass as parameter
        APPEND lw_item_control_lgort  TO li_item_control_lgort.
    Appending work areas into internal table to pass as parameter
        APPEND lw_item_data_spl_lgort TO li_item_data_spl_lgort.
    endloop.
    Passing the delivery no in the work area of header data
      lw_header_data-deliv_numb           = v_delivery_no.
      lw_header_control-deliv_numb       = v_delivery_no.
      lw_header_tech_control-upd_ind   = 'U'.
    Calling BAPI to change the Storage location
      CALL FUNCTION 'BAPI_OUTB_DELIVERY_CHANGE'
        EXPORTING
          header_data       = lw_header_data
          header_control   = lw_header_control
          delivery               = v_delivery_no
          techn_control     = lw_header_tech_control
        TABLES
          item_data           = li_item_data
          item_control       = li_item_control
          return                 = li_return_change
          item_data_spl    = li_item_data_spl.
    Calling BAPI to committ the task
        CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' .
    2> Then i have used the same BAPI again 'BAPI_OUTB_DELIVERY_CHANGE' to do the batch split/update batch only(if required) and change the Actual Delivered Quantity.
    Here you have to pass the same thing along with actual delivery qauntity and different batches to do batch split.
    Here it is assumed that Batch numbers, actual delivered quantity are coming from an internal table i_lqua.
    Looping through Internal table to get Bin details
      LOOP AT i_lqua INTO w_lqua .
    Clearing work area before use
        CLEAR : lw_item_data, lw_lips, lw_item_control, lw_item_data_spl.
    Reading table comparing metrial number
        READ TABLE li_lips INTO lw_lips
        WITH KEY matnr = w_lqua-matnr BINARY SEARCH.
    If read is successful, passing values from table
        IF sy-subrc EQ 0.
    Passing the delivery details into Item level table
          lw_item_data-deliv_numb              = lw_lips-vbeln.
          lw_item_data-deliv_item                = lw_lips-posnr.
          lw_item_data-material                   = lw_lips-matnr.
          lw_item_data-batch                       = w_lqua-charg.
          lw_item_data-dlv_qty                    = w_lqua-verme.
          lw_item_data-dlv_qty_imunit         = w_lqua-verme.
          lw_item_data-base_uom               = w_lqua-meins.
          lw_item_data-hieraritem                = lw_lips-posnr.
          lw_item_data-usehieritm                = 1.
          lw_item_data-fact_unit_nom          = lw_lips-umvkz.
          lw_item_data-fact_unit_denom      = lw_lips-umvkn.
          lw_item_data-sales_unit                 = lw_lips-vrkme.
          lw_item_control-deliv_numb           = lw_lips-vbeln.
          lw_item_control-deliv_item             = lw_lips-posnr.
          lw_item_control-chg_delqty           = 'X'.
          lw_item_data_spl-deliv_numb        = lw_lips-vbeln.
          lw_item_data_spl-deliv_item          = lw_lips-posnr.
          lw_item_data_spl-stge_loc            = w_lqua-lgort.
          lw_item_data_spl-pick_denial        = 'X'
    Appending work area into internal table to pass as parameter
          APPEND  lw_item_data TO  li_item_data.
    Appending work area into internal table to pass as parameter
          APPEND lw_item_control TO li_item_control.
    Appending work area into internal table to pass as parameter
          APPEND lw_item_data_spl TO li_item_data_spl.
    Clearing work areas after use
          CLEAR : lw_item_data, w_lqua,lw_item_data_spl,lw_item_control,
                        lw_vbpok, lw_lips.
        ENDIF.
      ENDLOOP.
    Passing the delivery no in the work area of header data
      lw_header_data-deliv_numb           = v_delivery_no.
      lw_header_control-deliv_numb       = v_delivery_no.
      lw_header_tech_control-upd_ind   = 'U'.
    Calling BAPI to change the Batch/Batch-Split/Delivery Quantity
      CALL FUNCTION 'BAPI_OUTB_DELIVERY_CHANGE'
        EXPORTING
          header_data           = lw_header_data
          header_control       = lw_header_control
          delivery                   = v_delivery_no
          techn_control         = lw_header_tech_control
        TABLES
          item_data                = li_item_data
          item_control            = li_item_control
          return                     = li_return_change
          item_data_spl         = li_item_data_spl.
    Calling BAPI to committ the task
        CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' .
    This is the only way which i found as better way to do the Batch split and updating storage location togetherly.
    I hope this code will help you.

Maybe you are looking for

  • Display "Created by" in me23N

    Dear all, I have a problem with text "create by" in me23n. sometimes it's  show different name in Text Display created by in same PO Number. Thx.

  • Re The Basics of Business Ware House

    Hi to Everybody I am new to BW Please send any documents related on DataWarehousing concepts i.e., Basics which help me smooth for learning  BW

  • KDE Very Slow - But only on Wifi

    Hi all, I've a strange issue.  I've installed Arch and KDE on a Thinkpad T61 and it all works wonderfully, except that KDE freezes when using the widgets or toolbar when I'm on a wifi network.  If I'm on a wired network it's fine.  An example is that

  • ORA-00933

    Good Morning Everyone, When we run the Application, we encountered the following messate. failed to parse SQL query: ORA-00933: SQL command not properly ended We did not check back the application for a while. If you have a chance, please share your

  • Having Trouble With Clone Stamp

    Hello! I used the Magic extractor to take something out of a picture. It left that checkered background so I thought I would use the clone stamp to clone the rest of the background. I hit alt and then clicked what I wanted to be cloned. Then I let go