BAPI for Inbound delivery

Hi,
I am interested knowing, if there is any BAPI available for doing Inbound Delivery in SAP.
I have a requirement to do partial inbound delivery which I cant do with VL31n or VL30. even if can do with these transactions,
I will not be able to run them in background.
Any help in this regard is highly appreciated.

Hi all, was working with similar problem.
I used GN_DELIVERY_CREATE and wrapped it up into method.
May be will be useful.
It creates inbound delivery by PO/STO
Method signature :
I_EBELN     Importing  Type     EBELN Purchasing Document Number
I_COMMIT Importing Type     ANY Commit database changes
I_LFDAT     Importing    Type LFDAT SY-DATUM
E_VBELN     Exporting    Type VBELN_VL Delivery
ET_LIPS       Exporting  Type /SAPSLL/LIPS_R3_T
ET_RETURN Exporting  Type BAPIRET2_T
E_RC       Changing   Type SYSUBRC
E_MESSAGE Changing   Type ANY
Method itself:
method create_inb_dlvr_by_po.
*-- Logic for current method was extracted from
*-- source code of VL31N dialog transaction
  data l_sd_doc_category type vbtyp value 'V'.
  data l_ibtyp type t163d-ibtyp value '2'.
  data l_func(1) value '1'.
  constants c_error(1) value 'E'.
  field-symbols <wa_xkomdlgn> type komdlgn.
  data lt_lips      type table of lips.
  data wa_lips      type lips.
  data lt_errors    type table of wuebs.
  data wa_errors    type wuebs.
  data wa_return    type bapiret2.
  data lt_wueb      type table of wueb.
  data wa_wueb      type wueb.
  data vbsk_i       type vbsk.
  data l_no_commit  type char01.
  data lt_xkomdlgn  type table of komdlgn.
  data lt_xvbfs     type table of vbfs.
  data lt_xvbls     type table of vbls.
  data vbsk_e       type vbsk.
  data lt_splitprot type vlikp_t_splitprot.
  data wa_tvlk      type tvlk.
  data wa_likp      type likp.
  clear: e_rc, e_message.
*-- Prepare data for delivery creation
  wa_wueb-ebeln = i_ebeln.
  append wa_wueb to lt_wueb.
*-- Get delivery type
  call function 'ME_CONFIRMATION_DELIVERY_TYPE'
       exporting
            i_func              = l_func
       changing
            c_ibtyp             = l_ibtyp
            c_lfart             = wa_likp-lfart
       exceptions
            function_not_valid  = 01
            param_value_missing = 02
            no_item_found       = 03
            error_message       = 04.
  if not sy-subrc is initial.
    e_rc = sy-subrc.
    message id sy-msgid type sy-msgty number sy-msgno
            with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 into e_message.
    exit.
  endif.
*-- Get default order type
  select single daart into wa_tvlk-daart
                      from tvlk
                      where lfart eq wa_likp-lfart.
  if not sy-subrc is initial.
    e_rc = sy-subrc.
    e_message = 'Delivery type not found'(001).
    exit.
  endif.
*-- Fill communiaction table from PO data
  call function 'ME_CONFIRMATION_READ_AVIS'
       exporting
            ldate         = sy-datum
       tables
            t_kom         = lt_xkomdlgn
            t_wueb        = lt_wueb
            errors        = lt_errors
       exceptions
            error_message = 99.
  if et_return is supplied.
    clear wa_return.
    loop at lt_errors into wa_errors.
      wa_return-id         = wa_errors-msgid.
      wa_return-type       = wa_errors-msgty.
      wa_return-number     = wa_errors-msgno.
      wa_return-message_v1 = wa_errors-msgv1.
      wa_return-message_v2 = wa_errors-msgv2.
      wa_return-message_v3 = wa_errors-msgv3.
      wa_return-message_v4 = wa_errors-msgv4.
      append wa_return to et_return.
    endloop.
  endif.
  loop at lt_errors into wa_errors where msgty = c_error.
    message id wa_errors-msgid
       type wa_errors-msgty
       number wa_errors-msgno
       with wa_errors-msgv1 wa_errors-msgv2
            wa_errors-msgv3 wa_errors-msgv4
       into e_message.
    e_rc = 8.
    exit.
  endloop.
  check e_rc is initial.
*-- Set delivery date
  wa_likp-lfdat = i_lfdat.
*-- Prepare General Delivery Interface data
  loop at lt_xkomdlgn assigning <wa_xkomdlgn>.
    <wa_xkomdlgn>-lfart = wa_likp-lfart.
    <wa_xkomdlgn>-auart = wa_tvlk-daart.
    <wa_xkomdlgn>-vgtyp = l_sd_doc_category.
    <wa_xkomdlgn>-lfdat = wa_likp-lfdat.
    <wa_xkomdlgn>-lfuhr = wa_likp-lfuhr.
    <wa_xkomdlgn>-bolnr = wa_likp-bolnr.
    <wa_xkomdlgn>-verur = wa_likp-verur.
    <wa_xkomdlgn>-lifex = wa_likp-verur.
    <wa_xkomdlgn>-traty = wa_likp-traty.
    <wa_xkomdlgn>-traid = wa_likp-traid.
    <wa_xkomdlgn>-kzazu = charx.
  endloop.
  if i_commit is initial.
    l_no_commit = charx.
  else.
    clear l_no_commit.
  endif.
*-- Create delivery
  call function 'GN_DELIVERY_CREATE'
       exporting
            vbsk_i        = vbsk_i
            no_commit     = charx
       importing
            vbsk_e        = vbsk_e
            et_splitprot  = lt_splitprot
       tables
            xkomdlgn      = lt_xkomdlgn
            xxlips        = lt_lips
            xvbfs         = lt_xvbfs
            xvbls         = lt_xvbls
       exceptions
            error_message = 99.
  if not sy-subrc is initial.
    e_rc = 8.
    message e398(00) with 'DELIVERY'(003) 'CREATION FAILED'(002)
      into e_message.
    exit.
  endif.
  if lt_lips[] is initial.
    e_rc = 8.
    message e398(00) with 'DELIVERY'(003) 'CREATION FAILED'(002)
      into e_message.
    exit.
  endif.
  loop at lt_lips into wa_lips.
    exit.
  endloop.
  et_lips = lt_lips.
  delete lt_lips where lfimg <> 0.
  if not sy-subrc is initial.
    e_rc = 8.
    message e398(00) with 'DELIVERY'(003) wa_lips-vbeln
                          'WITH 0 QTY. NOT SAVED!'(005)
      into e_message.
    rollback work.
    exit.
  endif.
  if l_no_commit is initial.
    commit work and wait.
    select single vbeln into e_vbeln from lips
           where  vbeln  = wa_lips-vbeln.
    if not sy-subrc is initial.
      e_rc = 8.
      message e398(00) with 'DELIVERY'(003) 'CREATION FAILED'(002)
         into e_message.
      exit.
    else.
      message s398(00) with 'DELIVERY'(003) wa_lips-vbeln
                            'CREATED'(004)
           into e_message.
    endif.
  else.
    rollback work.
    message s398(00) with 'DELIVERY'(003) wa_lips-vbeln
                          'CREATED'(004)
         into e_message.
  endif.
  e_vbeln = wa_lips-vbeln.
endmethod.

Similar Messages

  • Function Module / BAPI for Inbound Delivery from Purchase Order

    Hi,
    I need to create an inbound delivery from Purchase Order items and am looking out for some Function Module or BAPI for the same.
    The requirement is that i should be able to specify selected line items from PO for delivery.
    I tried the BDC method for VL31N , but the particular item selection is problem, since by default it shows all the items of PO and i want only selected items.
    Do reply.
    Thanks in advance.

    check these and their documentations.
    BAPI_INB_DELIVERY_CHANGE       Change inbound delivery
    BAPI_INB_DELIVERY_CONFIRM_DEC  BAPI for inbound delivery verification from a decentralized system
    BAPI_INB_DELIVERY_SAVEREPLICA  BAPI Function Module for Replication of Inbound Deliveries
    Regards
    Prabhu

  • BAPI For Inbound Delivery using Purchase Order Number

    Hi All,
    Is there any BAPI for posting Inbound Delivery (VL31N) using Purchase Order as reference.
    thanks
    bobby

    Not sure what it has to do with enhancements and modifications, but there is no such BAPI:
    http://tech.groups.yahoo.com/group/ABAP/message/38307
    http://sap.ittoolbox.com/groups/technical-functional/sap-log-mm/bapi-for-inbound-delivery-creation-and-update-vl31n-1201265
    FYI all BAPIs may be viewed in BAPI transaction.

  • Bapi for inbound delivery using PO

    Hi experts,
    I want to create a bapi for inbound delivery using PO.
    which bapi or FM should i use and can you send me the code for that.
    Thanks,
    Rajiv

    Hi Rajiv,
    Please check this FM --> BAPI_DELIVERYPROCESSING_EXEC
    Please check these threads
    Bapi to create inbound delivery
    BAPI to create inbound delivery
    Hope this would help you.
    Good luck
    Narin

  • Finding BAPI for  inbound Delivery change(VL32N)

    HI,
    Plz help me For finding BAPI for  inbound Delivery change(VL32N).
    I have to pass delivery no as input parameter and should able to change shipment heder information
    like Special processing indicator.
    REGARDS,
    Sunil Sahoo.

    hi ,
    there are three  BAPI  your requirment
    1) BAPI_INB_DELIVERY_CONFIRM_DEC
    2) BAPI_INB_DELIVERY_SAVEREPLICA
    3) BAPI_INB_DELIVERY_CHANGE
    but for requirment
    The third BAPI
    BAPI_INB_DELIVERY_CHANGE
    will Sound promising. try this out
    regards
    Prashant

  • BAPI for inbound delivery creation

    Hi,
    I have to create and modify inbound deliveries from a code, so I'm wondering if exists any BAPI (or function module) to create or modify inbound delivery.
    Thanks in advance

    This is an example of BAPI_INB_DELIVERY_CHANGE. It is in the documentation of the function
    I hope it helps you...
    Example
    If you want to change the quantity for a distributed quantity, then following entries are required for the transfer to the connected system:
    In the header data of inbound delivery parameter (HEADER_DATA)
    The delivery number (DELIV_NUMB)
    In parameter item data of inbound delivery (ITEM_DATA)
    The delivery number (DELIV_NUMB)
    The delivery item (DELIV_ITEM)
    The delivery quantity in sales unit (DLV_QTY)
    The actual delivery quantity in base UoM (DLV_QTY_IMUNIT)
    The sales unit (SALES_UNIT)
    The ISO code for the sales unit (SALES_UNIT_ISO)
    The base unit of measure (BASE_UOM)
    The ISO code for the base unit of measure (BASE_UOM_ISO)
    In the control of the inbound delivery at item level parameter (ITEM_CONTROL)
    The delivery number (DELIV_NUMB)
    The delivery item (DELIV_ITEM)
    The Change Delivery Quantity indicator(CHG_DELQTY)

  • BAPI for Inbound Delivery(IBD - VL31N)

    Hi all,
    I need to create an inbound delivery with reference to PO  using bapi which is retreived by an IDoc. I cannot use standard Process code to Create it because i need to do validations and convert UOM etc).  In that i need to use Container No E1EDL37-EXIDV2(Idoc field).
    May i know which bapi which suits for this requirement.
    Thanks & regards
    sreehari p

    Hi Rajiv,
    Please check this FM --> BAPI_DELIVERYPROCESSING_EXEC
    Please check these threads
    Bapi to create inbound delivery
    BAPI to create inbound delivery
    Hope this would help you.
    Good luck
    Narin

  • IDoc or BAPI for inbound delivery creation with reference to PO.

    Hi
    I have requirement to create a inbound delivery, I  will get a ASN from external system with PO, Vendor Material number & batch. I want to know is there any BAPI or IDoc that can be used to create inbound delivery in R/3. I used BBP_INB_DELIVERY_CREATE to create inbound delivery and I was successful but problem is that inbound delivery was not updated with Vendor Material number & Batch.  Can some one suggest me any other BAPI or IDoc ?
    Thanks in advance
    Nagendra P Boggarapu
    Edited by: Nagendra P Boggarapu on May 6, 2010 4:06 PM

    Use Delvry0* IDOC.
    Reddy

  • BAPI for Inbound Delivery Batch Split

    Hello Friends,
      I need any BAPI/BADI to assign batch split items to inbound delivery.  In out scenario, we generate transfer posting in MIGO with split batches and during inbound delivery generation in background, system generates seperate line items instead batch split items.  Now we need any BAPI/BADI to assign the batch split items during inbound delivery creation/change.
    Appreciate your support
    Best Regards,
    Goutham

    Hi Goutham,
    Please trt to use the BADI LE_SHP_DELIVERY_PROC - methods FILL_DELIVERY_ITEM and CHANGE_DELIVERY_ITEM when VB_CREATE_BATCH is called.
    As per note 317531 it is not possible to create bacthes in an SAP standard system via VL31N. There's no update on table MCHA even if you enter a new batch in the inbound delivery.
    I hope this information helps you.
    Kind regards,
    Fábio Almeida
    MM Consultant

  • BAPI/FM Inbound delivery change

    Hi All,
    Problem- I am trying to change inbound delivery field wadat_ist(actual GR date)
    I found FM: WS_DELIVERY_UPDATE which can help me do that.
    However, for the change to be effective i need to select the field WABUC(Post good issue automatically) as the FM checks for that field, which does the goods receipt.
    Is there a way in which I can change the actual GR date without doing a Goods receipt. If so, please let me know.
    I also looked at BAPI_INBOUND_DELIVERY_CHANGE...apparently it does not have an option for field wadat_ist(i could have missed it, but so far I could not find it)
    P.S: I am using 4.6C
    Thanks in advance for all your help!!!

    hi,
    check this
    BAPI_IBDLV_CREATE_FROM_OBDLV BAPI Inbound Delivery from Outbound Delivery
    BAPI_INB_DELIVERY_CONFIRM_DEC BAPI for Inbound Delivery Confirmation from a Decentralized System
    BAPI_INB_DELIVERY_SAVEREPLICA BAPI Function Module for Replication of Inbound Deliveries
    BAPI_OUTB_DELIVERY_CONFIRM_DEC BAPI for Outbound Delivery Confirmation from a Decentralized System
    BAPI_OUTB_DELIVERY_SAVEREPLICA BAPI Function Module for Replication of Outbound Deliveries

  • Finding BAPI/RFC/FM For inbound Delivery Display(VL33N)

    HI,
      PLZ HELP ME FOR FINDING BAPI/RFC/FM For inbound Delivery Display(VL33N).
    REGARDS,
    SUNIL SAHOO

    Hi,
    Check this link-
    http://www.sap-img.com/abap/how-to-find-bapi-for-particular-transaction-in-sap.htm
    Regards.
    Eshwar.

  • BDC program for inbound delivery VL31

    Dear experts,
    I have created BDC program for inbound delivery with old T_CODE VL31,but it's very inefficient.Now I must change the program for the efficiency improve.
    Could you give any idea?
    Thanks in advance,
    collysun.

    I'm sorry, but it does not seem that there is a BAPI for this (looking at transaction BAPI and business object BUS2015).
    Have you perhaps looked at the new transaction VL31N? Are there any differences that may improve the input (limit the number of BDC steps)?
    Otherwise, take a look at the way you are entering data now. Make sure there are not too many dialog steps. i.e. Make sure you enter all the data you can on a single screen, only then process the next OKCODE. Also, look at the transaction again: Perhaps you can enter items in an overview screen instead of individual items. (I have no knowledge of your situation of course; these are just some general guidelines).
    Cheers,
    Martin

  • SAP System inconsistency for Inbound delivery / MIGO and a "sap note"

    Hello Friends ,
    After following SAP instruction on how to remove the inconsistency between posting GR through MIGO (Inv. mang.) and the reflection of the goods movement status in the inbound delivery document - done that using sap note 570991
    the problem is that the system start behaving in a weird way throwing unjustified Error messages for any suggested goods receipt using MIGO with reference to inbound
    for example after creating an inbound delivery document and trying to post it via migo , an error will pop up
    - Inbound delivery storage location cannot be changed to here Message no. VLA316
    the thing is i didn't even maintain any storage location entry up to that point and yet i cannot post any stock !!
    also another error  like
    - Inbound delivery batch cannot be changed to *** here
    which doesn't make any sense because there is not batches in the inbound document !!
    i think this behavior is coming from the "Document Flow Update for Stock Postings" inbound  indicator  at the shipping parameter at client level customization
    i need help on  how to overcome this annoying SAP Bug/Problem specially i am in a post go live critical situation

    Hi,
       The messages you mentioned were introduced to avoid inconsistency between inbound delivery and IM, through the note:  1050944 - GR for inbound delivery using inventory mgmt as of ECC 6.00
       If the messages are issued incorrectly, then you may check for SAP notes (I couldnt find anything relevant) or raise an OSS ticket to SAP.
    Regards,
    AKPT

  • New Condition TAble for Inbound Delivery

    Hello
    i want to maintain a new Condition table for the Inbound delivery picking with the combination of _Delivery type/Plant
    so that the Inbound created for the particular plant alone uses the particular output type.
    Where in IMG can i configure the new Condition table for this combination for the Inbound delivery ?

    Hi,
    Go to SPRO > Logistics Execution > Shipping > Basic Shipping Functions > Output Control > Output Determination > Maintain Output Determination for Inbound Deliveries > Here perform following;
    - Define Condition Table for Inbound Delivery
    - Define Output Types for Inbound Delivery
    - Define Access Sequence for Inbound Delivery
    - Maintain Output Determination Procedure
    - Assign Output Determination Procedures

  • Issue at the time of creation of transfer order for inbound delivery

    Hello,
    I am facing one issue at the time of creation of transfer order for inbound delivery.
    If I create inbound delivery for purchase order with account assignment as 'M' (Ind. cust. w/o KD-CO), inbound delivery is not updated. Also document flow for inbounde delivery s not updated. I can create N number of transfer orders for on inbound delivery. Need help to resolve issue.
    If I create inbound delivery for purchase order with account assignment other than 'M' (Ind. cust. w/o KD-CO), inbound delivery and document flow is updated.
    Thanks and Regards,
    Nikhil

    Hi
    In OMS2 t-code
    for your material type and  plant ,you have to mark value based and qunaity based updation mark
    Regards
    kailas Ugale

Maybe you are looking for