Picking (Split Batches) using WS_DELIVERY_UPDATE_2 / WS_DELIVERY_UPDATE

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,

Similar Messages

  • How to update batch (LIPS-CHARG) using FM WS_DELIVERY_UPDATE

    Hi guys,
    I posted a question regarding a function module here:
    How to update batch (LIPS-CHARG) using FM WS_DELIVERY_UPDATE
    If you have experience about this FM, kindly visit the link and share your wisdom. Thanks.
    Regards,
    Carl

    Hi guys,
    I posted a question regarding a function module here:
    How to update batch (LIPS-CHARG) using FM WS_DELIVERY_UPDATE
    If you have experience about this FM, kindly visit the link and share your wisdom. Thanks.
    Regards,
    Carl

  • 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,
    Subba

    Hi,
    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

  • Raw materials on MAP with split valuation used in standard cost estimate

    We have a few raw materials which are purchased from different vendors and of different brands. We have opened split valuations for these raw materials. These raw materials are later used in manufacture of different finished goods. We use MAP for raw materials and Std. for finished goods. What configuration and processing steps will be required to run standards cost estimate and what will be standard price for a finished good considering the following example:
    Material X is finished good
    Raw Material A with split valuation @ USD 5 (brand aplha)   &   USD  10 (brand beta)
    Raw Material B without split valuation @ USD 1
    It is expected that we used brand aplha 60% of the time and brand beta 40% of the time and production batch size is usually 100 Kg.
    Please reply
    Edited by: Chris SAP on Sep 29, 2011 7:56 AM

    hi chris
    Hope you have configured the material A for split valuation. while calculating standard cost estimate for the material C. through ck11n, the system will pick up the header price from material master.
    But here you are saying that you have chances of using the material A, 60% of brand alpha and 40% brand beta
    Instead of using split valuation use mixed costing concept. create the material A with separate Ids and create two boms one with alpha and the other with beta.
    create procurement alternative in CK91N and mixed ratio with Ck94 and release the mixed cost estimate
    please go through this thread also
    Re: Difference between Split Valuation and Mixed Costing
    Krishna

  • Missing Batches Number (Nonsplit Batch or Split Batch) in Invoice

    Hi guys,
    I need some help on you guys on following:
    I have a SO without batches information and I have interco PO with batches information.
    I create Invoice base on SO, therefore Invoice doesn't capture Batch or Split Batches information from PO.
    Is there anyway, I can populate this information during creation of Invoice?
    Aish.

    Hi,
    I have created delivery against sales order.
    While picking (during delivery PGI), I selected two batches to suffice the delivery qty. Please refer the example quoted below.
    Sales order (SO1) - Material (Mat1) - qty (15 ea)
    Delivery against sales order (Del1) - batch split: batch1 - 10 ea
                                                                         batch2 - 5 ea
    In table LIPS: when I enter delivery number as "Del1" and execute, I get 2 records:
       del no.     Item No.      Material   Qty       Batch no       Sales Order no     Sales Order Item no
    1. DEL1       10              Mat1        10 ea    batch1          SO1                    10
    2. DEL1       20              Mat1         5 ea     batch2         ______                 ____
    Thus in the 2nd record, the Sales order no.(LIPS-VGBEL) and sales order item no. (LIPS-VGPOS) does not get updated.
    I have to develop a report to display the Sales Order number and sales order line item number for each batch of the Delivery for the same item number. Please guide me to know how I can get the same.
    Hope this clarifies the issue faced.
    Regards,
    Ankush

  • Sales order picked the batch which will expire before the delivery date

    Hello All,
    I have a material MAT1 with Batch BAT1 which has the shelf life expiration date as 18.03.2014. A sales order was created on 16.03.2014 which is supposed to be delivered on 22.03.2013.
    In this case the sales order should'nt have picked the batch BAT1.
    In the material master for MAT1- Min. Rem. Shelf Life 1 Month.
    Please let me know what could be the reason to pick this batch which is not expected...
    Thanks in advance!!

    There are 2 things:
    Check whether you have a characteristics LOBM_RLZ - Remaining Shelf Life for Batch for respective class used for batch. In batch search strategy(VCH1) for the material Remaining Shelf Life for Batch should be greater then equal to 7 days.
    In your movement type used for the GI, check at least SLExpir.date is not equal to 3 - No check at goods issue.
    Thanks, JP

  • 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

  • FM or BAPI for production order component split batch

    Hi,
    I'm trying to split a production order component quantity into batchs with FM or BAPI.
    Using BAPI_ALM_ORDER_MAINTAIN i can create or modify components but i can't set field split batch flag SPLKZ and reference SPLVR.
    Can you help me?

    In standard product order process in CO02 when i split material with standard function I obtain several lines. These new lines refer to the originale one by fields SPLVR and SPLKZ.
    Eg. In operation 0010 i've 10 PC of MATERIAL1
    Item
    Material
    Qty
    Batch
    Batch Key (SPLKZ)
    Itm no stock (SPLVR)
    0010
    MATERIAL1
    10 PC
    In CO02 i take MATERIAL1 from BATCH1 and BATCH2 the final result is
    Item
    Material
    Qty
    Batch
    Batch Key (SPLKZ)
    Itm no stock (SPLVR)
    0010
    MATERIAL1
    1
    1
    0010
    MATERIAL1
    7 PC
    BATCH1
    2
    1
    0010
    MATERIAL1
    3 PC
    BATCH2
    2
    1
    So I'm trying to reproduce this standard behavior with BAPI or FM.
    Thaks

  • How to split batch to several sub-batch via 'MB1B'

    Hi, experts, i would like to split batch into several sub-batches via 'MB1B', is there relative move type?

    You can use 309 material to material transfer movement type. Transfer your stock to from Batch A to Batch B, C, D, E (in Receiving Batch Field) depends on the quantity you have.
    If It helps you, kindly give points.
    Regards,
    RM

  • How To Perform Lot Split Transactions Using Transaction Open Interface (MTI)

    Can anyone give me some guidance on how to perform lot split transaction using MTI?
    I am using the following code:
    DECLARE
    l_transaction_type_id NUMBER := 83;
    l_transaction_action_id NUMBER := 41;
    l_transaction_source_type_id NUMBER := 13;
    l_org_id NUMBER := 1884;
    l_txn_header_id NUMBER;
    l_txn_if_id1 NUMBER;
    l_txn_if_id2 NUMBER;
    l_txn_if_id3 NUMBER;
    l_parent_id NUMBER;
    l_sysdate DATE;
    l_item_id NUMBER :=287996;
    l_user_id NUMBER;
    l_distribution_account_id NUMBER;
    l_exp_date DATE;
    BEGIN
    --For Lot Merge, there should be only one resultant lot.
    --The transaction_quantity populated in MTI/MTLI should be the entire
    --quantity that is available to transact for the org/sub/item/locator/LPN in
    --that particular lot number.
    --Get transaction_header_id for all the MTIs
    SELECT APPS.mtl_material_transactions_s.NEXTVAL
    INTO l_txn_header_id
    FROM sys.dual;
    --Get transaction_interface_id of resultant record
    SELECT APPS.mtl_material_transactions_s.NEXTVAL
    INTO l_txn_if_id1
    FROM sys.dual;
    l_parent_id := l_txn_if_id1;
    l_sysdate := SYSDATE;
    l_user_id := -1; --substitute with a valid user_id
    l_distribution_account_id := NULL; --needed for lot translate
    l_exp_date := NULL; --set if required
    --Populate the MTI record for resultant record
    INSERT INTO MTL_TRANSACTIONS_INTERFACE
    transaction_interface_id,
    transaction_header_id,
    Source_Code,
    Source_Line_Id,
    Source_Header_Id,
    Process_flag,
    Transaction_Mode,
    Lock_Flag,
    Inventory_Item_Id,
    revision,
    Organization_id,
    Subinventory_Code,
    Locator_Id,
    Transaction_Type_Id,
    Transaction_Source_Type_Id,
    Transaction_Action_Id,
    Transaction_Quantity,
    Transaction_UOM,
    Primary_Quantity,
    Transaction_Date,
    Last_Update_Date,
    Last_Updated_By,
    Creation_Date,
    Created_By,
    distribution_account_id,
    parent_id,
    transaction_batch_id,
    transaction_batch_seq,
    lpn_id,
    transfer_lpn_id
    VALUES
    l_txn_if_id1, --transaction_header_id
    l_txn_header_id, --transaction_interface_id
    'INV', --source_code
    -1, --source_header_id
    -1, --source_line_id
    1, --process_flag
    3, --transaction_mode
    2, --lock_flag
    l_item_id, --inventory_item_id
    null, --revision
    l_org_id, --organization_id
    'EACH', --subinventory_code
    1198, --locator_id
    l_transaction_type_id, --transaction_type_id
    l_transaction_source_type_id, --transaction_source_type_id
    l_transaction_action_Id, --l_transaction_action_id
    100000, --transaction_quantity
    'EA', --transaction_uom
    100000, --primary_quantity
    l_sysdate, --Transaction_Date
    l_sysdate, --Last_Update_Date
    l_user_id, --Last_Updated_by
    l_sysdate, --Creation_Date
    l_user_id, --Created_by
    l_distribution_account_id, --distribution_account_id
    l_parent_id, --parent_id
    l_txn_header_id, --transaction_batch_id
    2, --transaction_batch_seq
    NULL, --lpn_id (for source MTI)
    NULL --transfer_lpn_id (for resultant MTIs)
    --Insert MTLI corresponding to the resultant MTI record
    INSERT INTO MTL_TRANSACTION_LOTS_INTERFACE(
    transaction_interface_id
    , Source_Code
    , Source_Line_Id
    , Process_Flag
    , Last_Update_Date
    , Last_Updated_By
    , Creation_Date
    , Created_By
    , Lot_Number
    , lot_expiration_date
    , Transaction_Quantity
    , Primary_Quantity
    VALUES (
    l_txn_if_id1 --transaction_interface_id
    , 'INV' --Source_Code
    , -1 --Source_Line_Id
    , 'Y' --Process_Flag
    , l_sysdate --Last_Update_Date
    , l_user_id --Last_Updated_by
    , l_sysdate --Creation_date
    , l_user_id --Created_By
    , 'Q0000.1' --Lot_Number
    , l_exp_date --Lot_Expiration_Date
    , 100000 --transaction_quantity
    , 100000 --primary_quantity
    INSERT INTO MTL_TRANSACTIONS_INTERFACE
    transaction_interface_id,
    transaction_header_id,
    Source_Code,
    Source_Line_Id,
    Source_Header_Id,
    Process_flag,
    Transaction_Mode,
    Lock_Flag,
    Inventory_Item_Id,
    revision,
    Organization_id,
    Subinventory_Code,
    Locator_Id,
    Transaction_Type_Id,
    Transaction_Source_Type_Id,
    Transaction_Action_Id,
    Transaction_Quantity,
    Transaction_UOM,
    Primary_Quantity,
    Transaction_Date,
    Last_Update_Date,
    Last_Updated_By,
    Creation_Date,
    Created_By,
    distribution_account_id,
    parent_id,
    transaction_batch_id,
    transaction_batch_seq,
    lpn_id,
    transfer_lpn_id
    VALUES
    l_txn_if_id1, --transaction_header_id
    l_txn_header_id, --transaction_interface_id
    'INV', --source_code
    -1, --source_header_id
    -1, --source_line_id
    1, --process_flag
    3, --transaction_mode
    2, --lock_flag
    l_item_id, --inventory_item_id
    null, --revision
    l_org_id, --organization_id
    'EACH', --subinventory_code
    1198, --locator_id
    l_transaction_type_id, --transaction_type_id
    l_transaction_source_type_id, --transaction_source_type_id
    l_transaction_action_Id, --l_transaction_action_id
    100000, --transaction_quantity
    'EA', --transaction_uom
    100000, --primary_quantity
    l_sysdate, --Transaction_Date
    l_sysdate, --Last_Update_Date
    l_user_id, --Last_Updated_by
    l_sysdate, --Creation_Date
    l_user_id, --Created_by
    l_distribution_account_id, --distribution_account_id
    l_parent_id, --parent_id
    l_txn_header_id, --transaction_batch_id
    3, --transaction_batch_seq
    NULL, --lpn_id (for source MTI)
    NULL --transfer_lpn_id (for resultant MTIs)
    --Insert MTLI corresponding to the resultant MTI record
    INSERT INTO MTL_TRANSACTION_LOTS_INTERFACE(
    transaction_interface_id
    , Source_Code
    , Source_Line_Id
    , Process_Flag
    , Last_Update_Date
    , Last_Updated_By
    , Creation_Date
    , Created_By
    , Lot_Number
    , lot_expiration_date
    , Transaction_Quantity
    , Primary_Quantity
    VALUES (
    l_txn_if_id1 --transaction_interface_id
    , 'INV' --Source_Code
    , -1 --Source_Line_Id
    , 'Y' --Process_Flag
    , l_sysdate --Last_Update_Date
    , l_user_id --Last_Updated_by
    , l_sysdate --Creation_date
    , l_user_id --Created_By
    , 'Q0000.1' --Lot_Number
    , l_exp_date --Lot_Expiration_Date
    , 100000 --transaction_quantity
    , 100000 --primary_quantity
    --Get transaction_interface_id of Source record-1
    SELECT APPS.mtl_material_transactions_s.NEXTVAL
    INTO l_txn_if_id2
    FROM sys.dual;
    --Populate the MTI record for Source record-1
    INSERT INTO MTL_TRANSACTIONS_INTERFACE
    transaction_interface_id,
    transaction_header_id,
    Source_Code,
    Source_Line_Id,
    Source_Header_Id,
    Process_flag,
    Transaction_Mode,
    Lock_Flag,
    Inventory_Item_Id,
    revision,
    Organization_id,
    Subinventory_Code,
    Locator_Id,
    Transaction_Type_Id,
    Transaction_Source_Type_Id,
    Transaction_Action_Id,
    Transaction_Quantity,
    Transaction_UOM,
    Primary_Quantity,
    Transaction_Date,
    Last_Update_Date,
    Last_Updated_By,
    Creation_Date,
    Created_By,
    distribution_account_id,
    parent_id,
    transaction_batch_id,
    transaction_batch_seq,
    lpn_id,
    transfer_lpn_id
    VALUES
    l_txn_if_id2, --transaction_header_id
    l_txn_header_id, --transaction_interface_id
    'INV', --source_code
    -1, --source_header_id
    -1, --source_line_id
    1, --process_flag
    3, --transaction_mode
    2, --lock_flag
    l_item_id, --inventory_item_id
    null, --revision
    l_org_id, --organization_id
    'EACH', --subinventory_code
    1198, --locator_id
    l_transaction_type_id, --transaction_type_id
    l_transaction_source_type_id, --transaction_source_type_id
    l_transaction_action_Id, --transaction_action_id
    -200000, --transaction_quantity
    'EA', --transaction_uom
    -200000, --primary_quantity
    l_sysdate, --Transaction_Date
    l_sysdate, --Last_Update_Date
    l_user_id, --Last_Updated_by
    l_sysdate, --Creation_Date
    l_user_id, --Created_by
    l_distribution_account_id, --distribution_account_id
    l_parent_id, --parent_id
    l_txn_header_id, --transaction_batch_id
    1, --transaction_batch_seq
    NULL, --lpn_id (for source MTI)
    NULL --transfer_lpn_id (for resultant MTIs)
    --Insert MTLI corresponding to the Source record-1
    INSERT INTO MTL_TRANSACTION_LOTS_INTERFACE(
    transaction_interface_id
    , Source_Code
    , Source_Line_Id
    , Process_Flag
    , Last_Update_Date
    , Last_Updated_By
    , Creation_Date
    , Created_By
    , Lot_Number
    , lot_expiration_date
    , Transaction_Quantity
    , Primary_Quantity
    VALUES (
    l_txn_if_id2 --transaction_interface_id
    , 'INV' --Source_Code
    , -1 --Source_Line_Id
    , 'Y' --Process_Flag
    , l_sysdate --Last_Update_Date
    , l_user_id --Last_Updated_by
    , l_sysdate --Creation_date
    , l_user_id --Created_By
    , 'Q0000' --Lot_Number
    , l_exp_date --Lot_Expiration_Date
    , -200000 --transaction_quantity
    , -200000 --primary_quantity
    END;

    the first MTI record should be the source record ...ie. it should have transaction quantity as negative.
    new set of MTI records should have positive transaction quantities.
    Also ensure that sum of transaction quantities for the set should be 0...
    What is the error that you are getting?
    Thanks,
    Hrishi.

  • Inbound Delivery Idoc not update PIC and PGI with split batch.

    Dear Experts,
    Delivery outbound with split batch send to third party Warehouse to PIC and PGI from SAP, then receive the delivery inbound IDOC to update the PIC and PGI in SAP from third party. Basic Idoc DELIVERY03 it's works fine with out split batch, with split batch it's not updating PIC and PGI at the same time no error. Please advice on this
    E1EDL24-HIPOS = "HIGHER LEVEL ITEM NUMEBR"
    E1EDL24-HIEVW = "VALUE 1"
    E1EDL19-QALF = "BAS"
    Thanks and Regards,
    Thiru.

    Hi,
    You also have to create a segment with following data as well (for batches).
    E1EDL19-QUALF = "QUA".
    Cheers,

  • Splitting batch in process order

    HI friends,
    How I can split bach in process order ?
    Regards,
    Chetan

    Hi.
    Please Refer Below SDN thread.
    [Batch split|Batch determination for component  in co11n;
    Pradeep
    Edited by: Pradeep Kumar on May 24, 2008 10:49 AM

  • How do you increase the maximum number of migration batches using EAC?

    When I try to run a new batch, I'm getting the following error message:
    The maximum number of migration batches is already running. Please remove a batch before you add another one.
    How do I increase the maximum number of migration batches using EAC? Thanks for your help.

    Hi WinndowsGuy,
    Is there any update on this thread?
    Thanks,
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]
    Simon Wu
    TechNet Community Support

  • Is is possible to do Delivery of Reports in batches using BIP- GUI

    Hi All,
    Is is possible to do delivery of reports in batches using BI publisher GUI. For eg. I want to deliver reports to my few customers by EMAIL, few customers by FAX, few customers by PRINTER.
    Is is possible to do so..If so Please give some idea how to do so.
    Thanks
    Sookie.

    I duplicated your results. I set up a bursting control file to send to FILE and EMAIL just like your query and I get the files on the file system but I get 2 of the same attachment in the actual email, with one of those attachments being the file that was sent to FILE....
    Looking through the log I see the following:
    ---- begin log ---
    111809_043023637oracle.apps.xdo.delivery.DeliveryManagerSTATEMENT initConfig(): loading default properties :{}
    111809_043023637oracle.apps.xdo.delivery.DeliveryManagerSTATEMENT createRequest(): called with request type :smtp_email
    111809_043023637oracle.apps.xdo.delivery.DeliveryManagerSTATEMENT createRequest(): exiting
    111809_043023653oracle.apps.xdo.delivery.smtp.AttachmentSTATEMENT addAttachment(): Adding an attachment ...*filename=2.pdf*, content-type=application/pdf, index=-1, disposition=inline
    111809_043023653oracle.apps.xdo.delivery.smtp.AttachmentSTATEMENT addAttachment(): Character set for MIME headers : UTF-8
    111809_043023653oracle.apps.xdo.delivery.smtp.AttachmentSTATEMENT addAttachment(): Character encoding for MIME headers : B
    111809_043023653oracle.apps.xdo.delivery.smtp.AttachmentSTATEMENT addAttachment(): Exiting addAttachment()
    111809_043023653oracle.apps.xdo.delivery.smtp.AttachmentSTATEMENT addAttachment(): Adding an attachment ...*filename=xmlp34854693_2_8.pdf*, content-type=application/pdf, index=-1, disposition=inline
    111809_043023653oracle.apps.xdo.delivery.smtp.AttachmentSTATEMENT addAttachment(): Character set for MIME headers : UTF-8
    111809_043023653oracle.apps.xdo.delivery.smtp.AttachmentSTATEMENT addAttachment(): Character encoding for MIME headers : B
    111809_043023653oracle.apps.xdo.delivery.smtp.AttachmentSTATEMENT addAttachment(): Exiting addAttachment()
    111809_043023653oracle.apps.xdo.delivery.smtp.SMTPDeliveryRequestSTATEMENT submit(): Called
    ---- end log ---
    It seems like this might be a bug or some other issue where it just adds all files created for this particular request to the email... The first file mentioned (2.pdf) is the file that is to be output to the file system, the second (xmlp34854693_2_8.pdf) is the file to be emailed. Almost like it's looping through them and adding them as attachments. I'd open an SR to see if you can get some answers. Definitely post back if you do.

  • Tables for component batches used in production order

    what are the tables where i can the look up the
    Component Batches used on a Production Order?
    I am developing a report, where i need to input the batch number, and it should give the production orders in which it is used.

    one option is MSEG table. PrdOrd ID can be input into MSEG-AUFNR field and this way you get all the goods movements in connection with the order. If your confirmation and backflushing take place at the same time you can use the material document number and check the batches of the components.
    Other option may be to use COOIS for components in connection with a PrdOrd / PrdOrds.
    (I mean you check in connection with which PrdOrd that certain batch of FG was confirmed and you check the goods movement for thath PrdOrd using COOIS)

Maybe you are looking for

  • Mapping audit_id in process flow with parameter

    Hello! I have a following request. I would like to get AUDIT_EXECUTION_ID for certain Mapping in process flow and pass this ID to next mapping (all this with help of parameters I guess??) to get some data from AUDIT tables. How to do this? OWB versio

  • Sluggish performance in EM for soa11g PS2

    I noticed recently on our SOA11g (PS2) environments that after we install AIA FP11gR1, with all the composites active, the performance in Enterprise Manager become unbearable slow. I have to shutdown unneeded composites to get the performance back. I

  • Anybody know what make is in the Apple Store configured SSD for new MacPro?

    Hey there, Does anybody know what make and model Apple is putting into their new Mac Pros? At Apple Canada it is a 512GB SSD that costs an extra $1340 to add to your custom build. I really like what I've read about the OWC SSD below: http://eshop.mac

  • Can I upgrade to Mountain Lion from Snow Leopard on 6-year old iMac?

    I'm running Snow Leopard 10.6.8 on an Intel Core 2 Duo iMac which I bought in January 2007.  It has 1GB memory and 2.16 GHz processing speed.  Can I upgrade to Mountain Lion - or perhaps more importantly, should I?  Given the age of my iMac, would Mo

  • What is the maximum number of A5 artboards allowed?

    Hi, Sorry if this is a simple question but I can't find the answer anywhere. I'm trying to create an A5 brochure in Illustrator CS6 and ideally I would like it to be 104 pages, but the maximum number of artboards I'm allowed is 100. Yet, when I set m