Creating sales order by using BAPI_SALESORDER_CREATEFROMDAT2

Hi friends
i am creating sales order by usign this bapi BAPI_SALESORDER_CREATEFROMDAT2. But I have create the sales order with reference to quotation. So ia m passing all req parametes and also the quotation no in ref-doc field. i am abel to create the sale order But what ever teh lines items we have in the quotation(va23).i am not gettnig the lines items in the sales order.But SO no is generated. Could ou pleae let me know whats teh prb or do i need to do anything for geetting the line items
Regard,
Sai

As you suggested i have passed the suggested parameters in item level..But this time i was not ablet to create the SO also..earlier i am able to creat SO but not line item, But now ia m not able to creat salesdocuement also.
Return talbe filled with belwo messages.
S V4                   233 SALES_HEADER_IN has been processed successfully   
E V1                   320 No item category available (Table T184 ZKB  TEXT )
E V4                   248 Error in SALES_ITEM_IN 000000                     
W V1                   555 The sales document is not yet complete: Edit data 
E V4                   219 Sales document  was not changed

Similar Messages

  • Error in creation of sales order bu using BAPI_SALESORDER_CREATEFROMDAT2

    Hi ,
    I am trying to create sales order by using bapi.
    after passing all the parameters to bapi iam getting message as shown below.
    SALES_HEADER_IN has been processed successfully             
    SALES_ITEM_IN has been processed successfully               
    <b>Order receipt/delivery not possible, credit customer blocked</b>
    I had passed scedule line data ,and  BAPI_TRANSACTION_COMMIT
    also still iam getting this message.
    please help me out of this problem.
    Thanks,
    Shuja.

    Hi Shuja
    I guess the message is just a warning eventhough the order is created. The warning message states that Auto-Delivery can not be created.
    Please check below to understand how the customer is blocked:
    1. Manual Block -> Transaction XD03
    -->Menupath: Extras->Blocking Data
    2. Credit Block -> Transaction FD33
    --> In the overview screen check the difference of value between Credit Limit & Credit Exposure
      I guess in the case whereby Credit Limit value is less than Credit Exposure also this can happen.
    Please try using a different Customer. Also simulate via transaction VA01.
    Hope this helps.
    Kind Regards
    Eswar

  • Create Sales Order Iview Using WD for Java

    Dear Friends,
    I have been assigned some task that is "<b>Create Sales order iview using web dynpro for java".</b>
    I am new in this field, please help me out that from where i should start working on this.
    please forward me some documents in this regrads.
    Thanks & regards,
    Iqbal Ahmd

    Hi Iqbal,
    If you are connecting to SAP system as  backend  then you can proceed creating a webdynpro application using the Adaptive RFC model from where you can call your BAPI's this webdynpro applications can be integrated on to the Enterprise Portal using the webdynpro iviews.
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webdynpro/wd%20java/wd%20tutorials/creating%20a%20web%20dynpro%20application%20accessing%20abap%20functions.pdf
    Go through the following links and tutorials
    http://help.sap.com/saphelp_nw04/helpdata/en/15/0d4f21c17c8044af4868130e9fea07/content.htm
    Tutorials & Samples for Web Dynpro Java [original link is broken]
    Hope it helps you
    regards
    ambicasony

  • Creating sale order by using BAPI

    Hi,
    My requirement is to create a inquiry(VA11),  By using the Inquiry no as a input in report, i should create a salesorder using BAPI in which the datas should be flowed from inquiry to sale order. i did almost everything except the Pricing Condition.
        I am fetching the pricing condition values from table KONV-KSCHL and passing the value via BAPI_SALESORDER_CREATEFROMDAT2 it creates saleorder. In the created salesorder, there are two  same pricing conditions  but different rate 1.) the price of the MATNR which is maintained  2.) the changed MATNR price in inquiry level,
    i need the value which is changed in inquiry level that is 2nd value.
    can anyone help me in this...

    REPORT  ZSALESORDER.
    << Cut and paste without attribution from
    create sales order using BAPI
    removed >>
    Edited by: Rob Burbank on Feb 24, 2009 10:43 AM

  • Sales order creation using BAPI_SALESORDER_CREATEFROMDAT2

    Hi,
    I'm using the bapi 'BAPI_SALESORDER_CREATFROMDAT2' to create sales order. I need to pass the COST CENTER value to the header data of the sales order.
    The salesheader structure of the bapi does not support this field.
    How do I go about it?
    I need to pass this field to the bapi to process my sales orders.
    Please help.
    Regards,
    Shibu Mathew.

    Hi Shibu,
    Welcome to SDN.
    I never tried but you can pass the cost center information to BAPI_SALESORDER_CREATFROMDAT2 via <b>EXTENSIONIN</b>.
    Please check SAP Note <b>143580</b> for more information on how to implement this enhancement.
    Hope this will help.
    Regards,
    Ferry Lianto
    Please reward point if helpful.

  • Web Service for "Creating Sales Order" by using BAPI

    Hello All,
    I am trying to create a WS for "Creating Sales Order". The corresponding BAPI that I am using for this purpose is BAPI_SALESORDER_CREATEFROMDAT1. I am able to create the Web Service and run the WSDL on WS Navigator.
    But there is a problem whil executing the Web Service. In the interface of WS, we can only enter item level details of "Order Partner". So when I enter the details and click on Execute, it returns me an error message "Please enter Ship to Party and Sold to Party". I have already given these details.
    Does any one have any idea of what is going wrong?
    Regards,
    Abhishek

    As you suggested i have passed the suggested parameters in item level..But this time i was not ablet to create the SO also..earlier i am able to creat SO but not line item, But now ia m not able to creat salesdocuement also.
    Return talbe filled with belwo messages.
    S V4                   233 SALES_HEADER_IN has been processed successfully   
    E V1                   320 No item category available (Table T184 ZKB  TEXT )
    E V4                   248 Error in SALES_ITEM_IN 000000                     
    W V1                   555 The sales document is not yet complete: Edit data 
    E V4                   219 Sales document  was not changed

  • Error in sales order creation using BAPI_SALESORDER_CREATEFROMDAT2

    Hi all,
    Pl look into below code :
    Here order is getting created , however  ship to party and sold to party  shows the same value.
    *& Report  ZSD_SALEORDCRE
    report  zsd_saleordcre.
    Order header:*
    - Order type: OR Important you must use the german code TA*
    - Sales org: 1000*
    - Distrb. chan.: 10*
    - Division: 00*
    - Sold to party: 1032*
    - Ship to party: 1032*
    - Purch order: DG-19970626-3*
    Order item:*
    - Material: P-100*
    - Qty: 1*
    data:
    Order partners*
    li_order_partners type standard table of bapiparnr,
    l_order_partners like bapiparnr,
    Structures for order header*
    l_order_header_in like bapisdhd1,
    l_order_header_inx like bapisdhd1x,
    Tables for order items*
    li_order_items_in type standard table of bapisditm,
    l_order_items_in like bapisditm,
    li_order_items_inx type standard table of bapisditmx,
    l_order_items_inx like bapisditmx,
    schedules*
    li_order_schedules_in type standard table of bapischdl,
    l_order_schedules_in like bapischdl,
    li_order_schedules_inx type standard table of bapischdl,
    l_order_schedules_inx like bapischdl,
    Return table from bapi call*
    li_return type standard table of bapiret2,
    l_return type bapiret2,
    Sales document number*
    l_vbeln like bapivbeln-vbeln,
    Error flag*
    l_errflag(1) type c.
    start-of-selection.
    Build partner information*
      clear l_order_partners.
      l_order_partners-partn_role = 'WE'. "Remember German codes !
      l_order_partners-partn_numb = '0000000101'.
      append l_order_partners to li_order_partners.
      l_order_partners-partn_role = 'SP'. "Remember German codes !
      l_order_partners-partn_numb = '0000000107'.
      append l_order_partners to li_order_partners.
    Build order header*
    Update flag*
      l_order_header_inx-updateflag = 'I'.
    Sales document type*
      l_order_header_in-doc_type = 'ZOD2'. "Remember German codes !
      l_order_header_inx-doc_type = 'X'.
    Sales organization*
      l_order_header_in-sales_org = '1100'.
      l_order_header_inx-sales_org = 'X'.
    Distribution channel*
      l_order_header_in-distr_chan = '20'.
      l_order_header_inx-distr_chan = 'X'.
    Division*
      l_order_header_in-division = '10'.
      l_order_header_inx-division = 'X'.
    Purchase order*
      l_order_header_in-purch_no_c  = 'DG-19970626-300'.
      l_order_header_inx-purch_no_c = 'X'.
      l_order_header_in-purch_date  = '20090817'.
      l_order_header_inx-purch_date = 'X'.
    Build order item(s) - Only 1 is used in this example*
      l_order_items_in-itm_number = '10'.
      l_order_items_inx-itm_number = 'X'.
      l_order_items_in-material = '29019501AA'.
      l_order_items_inx-material = 'X'.
      l_order_items_in-plant = 'WH03'.
      l_order_items_inx-plant = 'X'.
      append l_order_items_in to li_order_items_in.
      l_order_items_in-itm_number = '20'.
      l_order_items_inx-itm_number = 'X'.
      l_order_items_in-material = '29066641'.
      call function 'CONVERSION_EXIT_ALPHA_INPUT'
        exporting
          input  = l_order_items_in-material
        importing
          output = l_order_items_in-material.
      l_order_items_inx-material = 'X'.
      l_order_items_in-plant = 'WH03'.
      l_order_items_inx-plant = 'X'.
      append l_order_items_in to li_order_items_in.
      l_order_items_inx-updateflag = 'I'.
      append l_order_items_inx to li_order_items_inx.
      l_order_schedules_in-itm_number = '10'.
      l_order_schedules_in-req_qty = '10.00'.
      append l_order_schedules_in to li_order_schedules_in.
      l_order_schedules_in-itm_number = '20'.
      l_order_schedules_in-req_qty    = '20.00'.
      append l_order_schedules_in to li_order_schedules_in.
    CALL Bapi*
      call function 'BAPI_SALESORDER_CREATEFROMDAT2'
        exporting
          order_header_in    = l_order_header_in
          order_header_inx   = l_order_header_inx
          testrun            = ' '
        importing
          salesdocument      = l_vbeln
        tables
          return             = li_return
          order_items_in     = li_order_items_in
          order_items_inx    = li_order_items_inx
          order_partners     = li_order_partners
          order_schedules_in = li_order_schedules_in.
         order_schedules_inx = li_order_schedules_inx.*
    end-of-selection.
    Check and write Return table*
      clear l_errflag.
      write: / 'Sales dcoument: ', l_vbeln.
      loop at li_return into l_return.
        write: / l_return-type, l_return-message(50).
        if l_return-type = 'E'.
          l_errflag = 'X'.
        endif.
      endloop.
    No errors - Commit*
      if l_errflag is initial.
        call function 'BAPI_TRANSACTION_COMMIT'.
      endif.
    What could be problem ?
    Pl help
    Regards
    Nagarajan

    Hi,
    Go through this sample code
    LOOP AT t_salesorder INTO wa_salesorder.
      t_header-sales_org = wa_salesorder-vkorg.
      t_header-distr_chan = wa_salesorder-vtweg.
      t_header-division = wa_salesorder-spart.
      t_header-doc_type = wa_salesorder-auart.
      APPEND t_header.
      t_headerx-sales_org = 'X'.
      t_headerx-distr_chan = 'X'.
      t_headerx-division = 'X'.
      t_headerx-doc_type = 'X'.
      APPEND t_headerx.
      t_itemx-material = 'X'.
      t_itemx-target_qty = 'X'.
      APPEND t_itemx.
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
        EXPORTING
          input  = wa_salesorder-kunnr
        IMPORTING
          output = wa_alpha-kunnr.
      wa_partner-partn_role = 'AG'.
      wa_partner-partn_numb = wa_alpha-kunnr.
      APPEND wa_partner TO t_partner.
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
        EXPORTING
          input  = wa_salesorder-kunnr1
        IMPORTING
          output = wa_alpha-kunnr1.
      wa_partner-partn_role = 'WE'.
      wa_partner-partn_numb = wa_alpha-kunnr1.
      APPEND wa_partner TO t_partner.
      wa_item-po_itm_no = wa_salesorder-bstnk.
      wa_item-itm_number = wa_salesorder-posnr.
      wa_item-material = wa_salesorder-matnr.
    wa_item-target_qty = wa_salesorder-kwmeng.
      APPEND wa_item TO t_item.
        CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
          EXPORTING
            order_header_in  = t_header
            order_header_inx = t_headerx
          IMPORTING
            salesdocument    = gv_doc_no
          TABLES
            return           = t_return
            order_items_in   = t_item[]
            order_items_inx  = t_itemx
            order_partners   = t_partner[].
      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
        EXPORTING
          wait   = 'X'
        IMPORTING
          return = t_return.
    ENDLOOP.
    Please paste only the portion of your code that gives you trouble.

  • [ABAP] Create sales order using FM BAPI_SALESORDER_CREATEFROMDAT2 problem

    Hello All,
    In a report I have to create sales orders, I use function  BAPI_SALESORDER_CREATEFROMDAT2, but I got the message like "ship-to-party xxxx is not assigned to sold-to-party" if I_PARTNERS-PARTN_ROLE = 'WE' and when is 'SH' I get 'please enter ship-to-party or sold-to-party'. Please suggest how to correct this. Thank you
    Bogdan
    Here is the code:
    order header values
    HEADER-DOC_TYPE = 'ZRTA'.
    HEADER-SALES_ORG = '4301'.
    HEADER-DISTR_CHAN = '43'.
    HEADER-DIVISION = '40'.
    HEADER-PURCH_DATE = '20051109'.
    HEADER-PURCH_NO_C = '11111'.
    header-date_type = 'D'.
    *HEADER-REF_DOC = .
    *HEADER-REFDOC_CAT = 'E'.
    *HEADER-***_NUMBER = ZCONSGACTVSV-HUBREFNUM.
    order item level data
    I_ITEM-ITM_NUMBER = '000010'.
    I_ITEM-MATERIAL = '950700129'.
    *I_ITEM-ROUTE = CON-ROUTE.
    *IF NOT ZCONSGAGRMSV-CHARG IS INITIAL.
      I_ITEM-BATCH = ZCONSGAGRMSV-CHARG.
    *ELSE.
      I_ITEM-BATCH = '1'.
    *ENDIF.
    I_SCHEDULE-ITM_NUMBER = '000010'.
    I_SCHEDULE-REQ_QTY = '13'.
    *shipto = 'WE'.
    I_PARTNERS-PARTN_ROLE = 'SH'. " Ship to
    I_PARTNERS-PARTN_NUMB = '2000001'.
    *I_PARTNERS-PARTN_ROLE = 'SH'. " Ship to
    *I_PARTNERS-PARTN_NUMB = '2000001'.
    I_PARTNERS-name =
    APPEND: I_ITEM,
            I_SCHEDULE,
            I_PARTNERS.
    CLEAR: I_ITEM,
           I_SCHEDULE,
           I_PARTNERS.
    CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
         EXPORTING
    SALESDOCUMENTIN =
                 ORDER_HEADER_IN = HEADER
    ORDER_HEADER_INX =
    SENDER =
    BINARY_RELATIONSHIPTYPE =
    INT_NUMBER_ASSIGNMENT =
    BEHAVE_WHEN_ERROR =
    LOGIC_SWITCH =
    TESTRUN =
    CONVERT = ' '
         IMPORTING
                 SALESDOCUMENT = ORDER
         TABLES
                 RETURN = RETURN
                 ORDER_ITEMS_IN = I_ITEM
    ORDER_ITEMS_INX =
                 ORDER_PARTNERS = I_PARTNERS
                 ORDER_SCHEDULES_IN = I_SCHEDULE
    ORDER_SCHEDULES_INX =
    ORDER_CONDITIONS_IN =
    ORDER_CFGS_REF =
    ORDER_CFGS_INST =
    ORDER_CFGS_PART_OF =
    ORDER_CFGS_VALUE =
    ORDER_CFGS_BLOB =
    ORDER_CFGS_VK =
    ORDER_CFGS_REFINST =
    ORDER_CCARD =
    ORDER_TEXT =
    ORDER_KEYS =
    EXTENSIONIN =
    PARTNERADDRESSES =

    Hi Bogdan,
       The documentation says
    Document Partner
    Description
    This table parameter is used to enter partners such as sold-to party, or ship-to party, both at header and item level.
    The minimum requirement is that the sold-to party is entered at header level. Additional partner functions can then be automatically determined.
    You can also enter different addresses in the structure.
    Check if it is useful to you in some way.
    Regards,
    Ravi

  • Dump while creating sales order using BAPI

    Hi Experts,
    I am trying to create a sales order in my alv report using BAPI_SALESORDER_CREATEFROMDAT2. I get a dump while executing the program. Please suggest me where I am going wrong.
    |Source Code Extract                                                                               |
    |Line |SourceCde                                                                                |
    |    1|FORM FRM_KOND_BASIS_604.                                                                    |
    |    2|*{   INSERT         DEVK910738                                        1                     |
    |    3|                                                                                |
    |    4|data:  zuomqtyo   LIKE ekpo-menge,                                                          |
    |    5|       zuomqtyn   LIKE ekpo-menge,                                                          |
    |    6|       zqty1      type i,                                                                   |
    |    7|       zqty2(11)   type n.                                                                  |
    |    8|                                                                                |
    |    9|** Round up billing qty                                                                     |
    |   10|   if komp-zzLTKZA ne 'VAR'.                                                                |
    |   11|                                                                                |
    |>>>>>|      zqty1   = xkwert.                                                                     |
    |   13|      compute zqty2   = zqty1 / 1000.                                                       |
    |   14|      xkwert = zqty2 * 1000.                                                                |
    |   15|                                                                                |
    |   16|     exit.                                                                                |
    |   17|   endif.                                                                                |
    |   18|                                                                                |
    |   19|                                                                                |
    |   20|** Samples                                                                                |
    |   21|                                                                                |
    |   22|  if komp-MATKL = '5400'.                                                                   |
    |   23|                                                                                |
    |   24|    check not xkomv-kmein is initial.                                                       |
    |   25|    check not komp-vrkme  is initial.                                                       |
    |   26|                                                                                |
    |   27|** Make sure base is correct when sales unit and pricing unit differ                        |
    |   28|   if komp-vrkme ne xkomv-kmein.                                                            |
    |   29|                                                                                |
    |   30|     zuomqtyo = komp-MGAME.                                                                 |
    |   31|                                                                                |
    Thanks.

    John,
    Here is what I am doing.
    *Assign Header Data And Move To Header Data Final Table
              GS_ORDERHEADERIN-DOC_TYPE            = GC_AUART.
              GS_ORDERHEADERIN-SALES_ORG           = GC_SORG.
              GS_ORDERHEADERIN-DISTR_CHAN          = GC_DISTC.
              GS_ORDERHEADERIN-DIVISION            = GC_DIVI.
              GS_ORDERHEADERIN-ORD_REASON          = GC_AUGRU.
              GS_ORDERHEADERIN-REQ_DATE_H          = WA-USAGE_DATE.
              GS_ORDERHEADERIN-PURCH_DATE          = WA-USAGE_DATE.
              GS_ORDERHEADERIN-PURCH_NO_C          = WA-USAGE_DOC.
    *Assign Header Data And Move To Header Data Final Table
              GS_ORDERHEADERINX-DOC_TYPE           = GC_FLAG.
              GS_ORDERHEADERINX-SALES_ORG          = GC_FLAG.
              GS_ORDERHEADERINX-DISTR_CHAN         = GC_FLAG.
              GS_ORDERHEADERINX-DIVISION           = GC_FLAG.
              GS_ORDERHEADERINX-ORD_REASON         = GC_FLAG.
              GS_ORDERHEADERINX-REQ_DATE_H         = GC_FLAG.
              GS_ORDERHEADERINX-PURCH_DATE         = GC_FLAG.
              GS_ORDERHEADERINX-PURCH_NO_C         = GC_FLAG.
    *ASSIGN ITEMS DATA AND MOVE TO ITEMS DATA FINAL TABLE
            GS_ORDERITEMSIN-ITM_NUMBER         = WA-POSNR.
            GS_ORDERITEMSIN-MATERIAL           = WA-MATERIAL.
            GS_ORDERITEMSIN-TARGET_QTY         = WA-EXT_QTY.      "EXT_QTY is of type LFIMG
            GS_ORDERITEMSIN-TARGET_QU          = WA-EXT_UOM.      "EXT_UOM is of type VRKME
            APPEND GS_ORDERITEMSIN TO GT_ORDERITEMSIN.
            CLEAR GS_ORDERITEMSIN.
    *Assign Items Data And Move To Items Data Final Table
            GS_ORDERITEMSINX-ITM_NUMBER        = WA-POSNR.
            GS_ORDERITEMSINX-MATERIAL          = GC_FLAG.
            GS_ORDERITEMSINX-TARGET_QTY        = GC_FLAG.
            GS_ORDERITEMSINX-TARGET_QU         = GC_FLAG.
            APPEND GS_ORDERITEMSINX TO GT_ORDERITEMSINX.
            CLEAR GS_ORDERITEMSINX.
    *Assign Schedule Lines Data And Move To Schedule Lines Final Table
            GS_ORDER_SCHEDULES_IN-ITM_NUMBER   = WA-POSNR.
            GS_ORDER_SCHEDULES_IN-REQ_DATE     = WA-USAGE_DATE.
            GS_ORDER_SCHEDULES_IN-REQ_QTY      = WA-EXT_QTY.      "EXT_QTY is of type LFIMG
            APPEND GS_ORDER_SCHEDULES_IN TO GT_ORDER_SCHEDULES_IN.
            CLEAR  GS_ORDER_SCHEDULES_IN.
    *Assign Schedule Lines Data And Move To Schedule Lines Final Table
            GS_ORDER_SCHEDULES_INX-ITM_NUMBER  = WA-POSNR.
            GS_ORDER_SCHEDULES_INX-REQ_DATE    = GC_FLAG.
            GS_ORDER_SCHEDULES_INX-REQ_QTY     = GC_FLAG.
            APPEND GS_ORDER_SCHEDULES_INX TO GT_ORDER_SCHEDULES_INX.
            CLEAR  GS_ORDER_SCHEDULES_INX.
    *Assign Sold-To-Partner Data And Move To Final Partners Table
            GS_ORDERPARTNERS-PARTN_ROLE          = GC_SP.
            GS_ORDERPARTNERS-PARTN_NUMB          = GV_SOLD.
            APPEND GS_ORDERPARTNERS TO GT_ORDERPARTNERS.
            CLEAR  GS_ORDERPARTNERS.
    *Assign Ship-To-Partner Data And Move To Partners Table
            GS_ORDERPARTNERS-PARTN_ROLE          = GC_SH.
            GS_ORDERPARTNERS-PARTN_NUMB          = GV_SHIP.
            APPEND GS_ORDERPARTNERS TO GT_ORDERPARTNERS.
            CLEAR  GS_ORDERPARTNERS.
    *Clear Global Variable Field Of Sales Document
              CLEAR:GV_SALESDOCUMENT.
    "Right after pressing F6 button after this. It gives me dump.
    *Call Function Module To Create Sales Order
              CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
                EXPORTING
                  ORDER_HEADER_IN     = GS_ORDERHEADERIN
                  ORDER_HEADER_INX    = GS_ORDERHEADERINX
                IMPORTING
                  SALESDOCUMENT       = GV_SALESDOCUMENT
                TABLES
                  ORDER_ITEMS_IN      = GT_ORDERITEMSIN
                  ORDER_ITEMS_INX     = GT_ORDERITEMSINX
                  ORDER_SCHEDULES_IN  = GT_ORDER_SCHEDULES_IN
                  ORDER_SCHEDULES_INX = GT_ORDER_SCHEDULES_INX
                  ORDER_PARTNERS      = GT_ORDERPARTNERS
                  RETURN              = GT_BAPIRETURN.
    IF SY-SUBRC = 0.
    *Call Function Module For BAPI Commit
                CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
                  EXPORTING
                    WAIT = GC_FLAG.
    ENDIF.
    All my BAPI tables have been filled with required data in them. But, still it is giving me a dump.
    I would really appreciate if some one could suggest me where I am going wrong.
    Thanks.

  • ISSUE ON CREATE SALES ORDER USING BAPI

    Hi,
       I am creating a sales order using bapi BAPI_SALESORDER_CREATEFROMDAT2.But it it fails to create a sales order abd below is my code pls check and correct me to create a sales order.
    LOOP AT DATA_TAB.
    clear: l_order_header_in,
           l_salesdocument,
           l_order_partners,
           l_order_items_IN,
           l_order_schedules_IN.
    refresh: l_order_items_in,
             l_order_partners,
             l_order_schedules_IN,
             l_return.
    Order header
    l_order_header_in-DOC_TYPE    = DATA_TAB-AUART.
    l_order_header_IN-SALES_ORG   = DATA_TAB-VKORG.
    l_order_header_IN-DISTR_CHAN  = data_tab-vtweg.
    l_order_header_in-division    = DATA_TAB-SPART.
    l_order_header_in-REF_1_S     = DATA_TAB-IHREZ_E.
    l_order_header_in-PURCH_NO_S  = DATA_TAB-BSTKD_E.
    l_order_header_in-PO_DAT_S    = data_tab-bstdk_e.
    l_order_header_in-PO_METH_S   = DATA_TAB-BSARK_E.
    l_order_header_in-DOC_DATE    = DATA_TAB-AUDAT.
    l_order_header_in-REC_POINT   = DATA_TAB-EMPST.
    l_order_header_inX-DOC_TYPE    = 'X'.
    l_order_header_INX-SALES_ORG   = 'X'.
    l_order_header_INX-DISTR_CHAN  = 'X'.
    l_order_header_inX-division    = 'X'.
    l_order_header_inX-REF_1_S     = 'X'.
    l_order_header_inX-PURCH_NO_S  = 'X'.
    l_order_header_inX-PO_DAT_S    = 'X'.
    l_order_header_inX-PO_METH_S   = 'X'.
    l_order_header_inX-DOC_DATE    = 'X'.
    l_order_header_inX-REC_POINT   = 'X'.
    Partner data SOLD TO PARTY
    l_order_partners-ITM_NUMBER = DATA_TAB-POSNR.
    l_order_partners-partn_role = 'SP'.
    l_order_partners-partn_numb = DATA_TAB-kunnr1.
    append l_ordeR_partners.
    Partner data SHOP TO PARTY
    l_order_partners-ITM_NUMBER = DATA_TAB-POSNR.
    l_order_partners-partn_role = 'SH'.
    l_order_partners-partn_numb = DATA_TAB-kunnr2.
    append l_ordeR_partners.
    Order items
    l_order_items_IN-ITM_NUMBER = DATA_TAB-POSNR.
    l_order_items_IN-material   = DATA_TAB-MABNR.
    l_order_items_IN-BATCH      = DATA_TAB-CHARG.
    l_order_items_IN-REASON_REJ = DATA_TAB-ABGRU.
    append l_order_items_IN.
    l_order_items_INX-ITM_NUMBER = DATA_TAB-POSNR.
    l_order_items_INX-material   = 'X'.
    l_order_items_INX-BATCH      = 'X'.
    l_order_items_INX-REASON_REJ = 'X'.
    append l_order_items_INX.
    Schedules for quantity
    l_order_schedules_IN-itm_number = DATA_TAB-POSNR.
    l_order_schedules_IN-req_qty    = DATA_TAB-KWMENG.
    append l_order_schedules_IN.
    Schedules for quantity
    l_order_schedules_INX-itm_number = data_tab-posnr.
    l_order_schedules_INX-req_qty    =  'X'.
    append l_order_schedules_INX.
    Conditions for value
    l_order_conditions_IN-itm_number = DATA_TAB-POSNR.
    l_order_conditions_IN-cond_type  = DATA_TAB-KSCHL.
    l_order_conditions_IN-cond_value = DATA_TAB-KBETR.
    l_order_conditions_IN-currency   = DATA_TAB-KOEIN.
    append l_order_conditions_IN.
    Conditions for value
    l_order_conditions_INX-itm_number = DATA_TAB-POSNR.
    l_order_conditions_INX-cond_type  = 'X'.
    l_order_conditions_INX-cond_value = 'X'.
    l_order_conditions_INX-currency   = 'X'.
    append l_order_conditions_INX .
    endloop.
    BAPI to create sales order
    CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
    EXPORTING
    SALESDOCUMENTIN =
      ORDER_HEADER_IN =      l_order_header_IN
      ORDER_HEADER_INX =     l_order_header_INX
    IMPORTING
      SALESDOCUMENT =        l_salesdocument
    TABLES
      RETURN =               l_return
      ORDER_ITEMS_IN =       l_order_items_IN
      ORDER_ITEMS_INX =      l_order_items_INX
      ORDER_PARTNERS =       l_order_partners
      ORDER_SCHEDULES_IN =   l_order_schedules_in
      ORDER_SCHEDULES_INX =  l_order_schedules_inX
      ORDER_CONDITIONS_IN =  l_order_conditions_in
      ORDER_CONDITIONS_INX = l_order_conditions_inX
    IF SY-SUBRC = 0.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
       WAIT           = C_X
    IMPORTING
      RETURN        =
    ENDIF.
      Pls help me to solve the issue.
    Thanks,
    Rajendra.

    Hi Raj
    This is the sameple code which works fine for me,
    REPORT  zkb_sales_order.
    DATA: w_order_header_in TYPE bapisdhd1,
          i_order_partners TYPE TABLE OF bapiparnr,
          w_order_partners TYPE bapiparnr,
          i_return TYPE TABLE OF bapiret2,
          w_return TYPE bapiret2,
         i_order_items_in TYPE TABLE OF bapisditm,
         w_order_items_in TYPE  bapisditm,
         i_order_items_inx TYPE TABLE OF  bapisditmx,
         w_order_items_inx TYPE  bapisditmx,
        i_order_conditions_in TYPE TABLE OF bapicond,
        w_order_conditions_in TYPE bapicond,
        i_order_conditions_inx TYPE TABLE OF bapicondx,
        w_order_conditions_inx TYPE TABLE OF bapicondx.
    CLEAR w_order_header_in.
    w_order_header_in-doc_type  = 'ZSO'.
    w_order_header_in-sales_org =  '1000'.
    w_order_header_in-distr_chan = '01'.
    w_order_header_in-division =  '01'.
    w_order_header_in-req_date_h  = sy-datum.
    w_order_header_in-sales_dist =   '000001'.
    CLEAR: i_order_items_in,w_order_items_in.
    w_order_items_in-material = 77.
    w_order_items_in-salqtynum = 1.
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
      EXPORTING
        input  = w_order_items_in-material
      IMPORTING
        output = w_order_items_in-material.
    APPEND w_order_items_in TO i_order_items_in.
    * SP
    CLEAR: i_order_partners,w_order_partners.
    w_order_partners-partn_role = 'AG'.
    w_order_partners-partn_numb = '2000016'.
    CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
      EXPORTING
        input  = w_order_partners-partn_numb
      IMPORTING
        output = w_order_partners-partn_numb.
    APPEND w_order_partners TO i_order_partners.
    CLEAR: i_order_conditions_in,w_order_conditions_in.
    w_order_conditions_in-itm_number =  '000010'.
    w_order_conditions_in-cond_type  =   'PR00'.
    w_order_conditions_in-cond_value =  100.
    APPEND w_order_conditions_in TO i_order_conditions_in.
    CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
      EXPORTING
    *   SALESDOCUMENTIN               =
        order_header_in               = w_order_header_in
    *   ORDER_HEADER_INX              =
    *   SENDER                        =
    *   BINARY_RELATIONSHIPTYPE       =
    *   INT_NUMBER_ASSIGNMENT         =
    *   BEHAVE_WHEN_ERROR             =
    *   LOGIC_SWITCH                  =
    *   TESTRUN                       =
    *   CONVERT                       = ' '
    * IMPORTING
    *   SALESDOCUMENT                 =
      TABLES
       return                        = i_return
       order_items_in                = i_order_items_in
    *   ORDER_ITEMS_INX               =
        order_partners                = i_order_partners
    *   ORDER_SCHEDULES_IN            =
    *   ORDER_SCHEDULES_INX           =
       order_conditions_in           = i_order_conditions_in
    *   ORDER_CONDITIONS_INX          =
    *   ORDER_CFGS_REF                =
    *   ORDER_CFGS_INST               =
    *   ORDER_CFGS_PART_OF            =
    *   ORDER_CFGS_VALUE              =
    *   ORDER_CFGS_BLOB               =
    *   ORDER_CFGS_VK                 =
    *   ORDER_CFGS_REFINST            =
    *   ORDER_CCARD                   =
    *   ORDER_TEXT                    =
    *   ORDER_KEYS                    =
    *   EXTENSIONIN                   =
    *   PARTNERADDRESSES              =
    READ TABLE i_return INTO w_return WITH KEY type = 'E'.
    IF sy-subrc NE 0.
      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
        EXPORTING
          wait = 'X'.
    ENDIF.
    LOOP AT i_return INTO w_return .
      WRITE: / w_return-type,
      w_return-id,
      w_return-number,
      w_return-message.
    ENDLOOP.
    Regards
    Kathirvel

  • Create sales order with BAPI_SALESORDER_CREATEFROMDAT2 example

    Hi, does anyone have a working example of how to create a sales order using BAPI_SALESORDER_CREATEFROMDAT2?
    Thanks

    hi Robert,
    Check this code...try to map.
    one order with total sum of effort
    clear: l_order_header,
    l_salesdocument,
    l_order_partners,
    l_order_items,
    l_order_schdl.
    refresh: it_order_items,
    it_order_partners,
    it_order_schdl,
    it_return.
    ???????? get from material ...
    Order header
    l_order_header-doc_type = 'ZQBV'.
    l_order_header-distr_chan = '10'.
    l_order_header-division = '00'.
    if g_qals-werk eq '1100'.
    l_order_header-sales_org = '1000'.
    else.
    if g_qals-werk eq '3100'.
    l_order_header-sales_org = '3000'.
    else.
    message i001(00) with text-005.
    endif.
    endif.
    l_order_header-purch_no_c = g_qals-prueflos. " <= lot
    Partner data
    l_order_partners-partn_role = 'AG'.
    l_order_partners-partn_numb = g_qals-kunnr.
    append l_order_partners to it_order_partners.
    Order items => only one
    l_order_items-itm_number = 10.
    l_order_items-material = g_qals-matnr.
    l_order_items-target_qty = 1.
    append l_order_items to it_order_items.
    Schedules for quantity
    l_order_schdl-itm_number = 10.
    l_order_schdl-req_qty = 1. " <= only 1 !
    append l_order_schdl to it_order_schdl.
    Conditions for value
    l_order_conditions-itm_number = 10.
    l_order_conditions-cond_type = 'PR00'.
    l_order_conditions-cond_value = g_effort_sum.
    l_order_conditions-currency = g_effort_unit.
    append l_order_conditions to it_order_conditions.
    BAPI to create sales order
    CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
    EXPORTING
    SALESDOCUMENTIN =
    ORDER_HEADER_IN = l_order_header
    ORDER_HEADER_INX =
    SENDER =
    BINARY_RELATIONSHIPTYPE =
    INT_NUMBER_ASSIGNMENT =
    BEHAVE_WHEN_ERROR =
    LOGIC_SWITCH =
    TESTRUN =
    CONVERT = ' '
    IMPORTING
    SALESDOCUMENT = l_salesdocument
    TABLES
    RETURN = it_return
    ORDER_ITEMS_IN = it_order_items
    ORDER_ITEMS_INX =
    ORDER_PARTNERS = it_order_partners
    ORDER_SCHEDULES_IN = it_order_schdl
    ORDER_SCHEDULES_INX =
    ORDER_CONDITIONS_IN = it_order_conditions
    ORDER_CONDITIONS_INX =
    ORDER_CFGS_REF =
    ORDER_CFGS_INST =
    ORDER_CFGS_PART_OF =
    ORDER_CFGS_VALUE =
    ORDER_CFGS_BLOB =
    ORDER_CFGS_VK =
    ORDER_CFGS_REFINST =
    ORDER_CCARD =
    ORDER_TEXT =
    ORDER_KEYS =
    EXTENSIONIN =
    PARTNERADDRESSES =
    if not l_salesdocument is initial.
    order successfully created
    message i001(00) with text-001 l_salesdocument.
    endif.
    endif.
    for more info check the below link also
    Problem with BAPI_SALESORDER_CREATEFROMDAT2
    Regards,
    Naveen

  • Problem with BOM Quant while creating Sales order with reference using BAPI

    Dear All,
    I am facing problem with creating a slaes order with reference to other sales order by using BAPI_SALESORDER_CREATEFROMDAT2 .
    Sales order is getting created but
    1. It exploding the BOM means the line items which are not there in the reference SO also coming in the new SO ( all BOM items are coming )
    2. Schedule line for BOM header item is getting copied to all sub items of BOM.
    Can any one help me out to prevent the above deviations in creating Sales order with reference by using BAPI_SALESORDER_CREATEFROMDAT2.
    Note: while passing the parameters to BAPI_SALESORDER_CREATEFROMDAT2
    all the data related to items is exactly the same as in the original Sales Order.
    Thanks in advnace.
    Regards,
    John

    Hi All,
    Can any one help me !!!!!!!!!!
    please

  • Issue in creating sales order using process_header API (web service)

    Hi All,
    I am trying to create sales order header using web service call to OE_ORDER_PUB.Process_header API.
    When I pass the inputs and test the service,I get output with return_status='S'. But no record falls at the OE_ORDER_HEADER_ALL table.
    I cant identify where the problem is.Is there any commit missing? Pls help me resolve this issue.
    Thanks,
    Vinoth

    Hi All,
    I am trying to create sales order header using web service call to OE_ORDER_PUB.Process_header API.
    When I pass the inputs and test the service,I get output with return_status='S'. But no record falls at the OE_ORDER_HEADER_ALL table.
    I cant identify where the problem is.Is there any commit missing? Pls help me resolve this issue.
    Thanks,
    Vinoth

  • Problem in creating Sales Order

    Hi All,
    We have 3 Document types ZS01,ZS02 and ZS03 for creating <b>Sales Order</b>. We have written one program to create Sales Order for document type 'ZS01'.
    Our requirement is ,we should allow to create sales order of doc.type ZS01 <b>thru that 'z' program only</b>,we should not use ZS01 type to create sales order via VA01.So, we have restricted sales order creation using 'ZS01' thr' VA01 by authorisation profile.So in my 'z' program i couldn't call VA01 to create sales order.So I tried using BAPI,it is giving me the error <b>"No maintenance authorization for document type ZS01".</b>
    Please guide or suggest me some alternative method to create sales order.
    Thanks & Regards,
    Sudipto.

    Hi Sudipto,
    There is no direct method of by passing a role, but u can try creating sales order thru  FM BAPI_SALESORDER_CREATEFROMDAT2 with reference to a SO that is already created with ZSO1, or you might call the Z report program internally from ur program to create the SO. 
    Hope that helps
    Anirban

  • Reena Prabhakar - Sales order creation Using BAPI

    Hi Reena,
    This is Dinesh,i also face problem in Sales order creation using BAPI if you can send me the code it would be great help to me.
    Regards,
    Dinesh

    Anyhow, here is the code that I am using currently which works perfectly well. Not sure if it will be of any help to you, since the values to the BAPI come from the Webdynpro application. I have values stored in my "Test data directory" which I use for testing from the backend.
    FUNCTION ztest.
    Call the BAPI to create Sales Order
      CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
        EXPORTING
          order_header_in     = l_order_header
        IMPORTING
          salesdocument       = l_salesdocument
        TABLES
          return              = it_return
          order_items_in      = it_order_items
          order_partners      = it_order_partners
          order_schedules_in  = it_order_schdl
          order_conditions_in = it_order_conditions
          order_text          = it_order_text.
      READ TABLE it_return WITH KEY type = 'E'.
      IF sy-subrc = 0.
    *-- error occured
        CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
      ELSE.
    *-- no error
        CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
      ENDIF.
    ENDFUNCTION.

Maybe you are looking for

  • HOW to pass page parameter into table function in  HTMLDB

    I created this object and table function in database. create or replace TYPE date_flow_type AS OBJECT ( time           date, max_time      number, avg_total           NUMBER, sum_total      NUMBER, max_total      NUMBER, change_rate      number creat

  • Warning-encountered problems reading photo

    Just started receiving this message for a ton of images. Before this I just started getting the exclamation point waring about metadat. That I was able to fix by reimporting metadata. Any idea on how to fix this one on propblems reading photo unable

  • Exporting premiere cs6

    Hello, guys i'm having some serious troubles to export videos on adobe premiere cs6 CCloud edition. Sometimes the export goes well, but most of the times i got an Error message. Last time, when i finally got the video exported without any problem, wa

  • Can i purchase individual plans and use it for commercial purposes?

    dont really need the business plan features, will want to keep it simple. Can i buy 2 inidividual plan for 2 designers to use for my business?  Thanks in advance.

  • Windows 7 - Muse will not fill browser on phone design then crashes

    I tried filling the browser with color.  When I looked in preview or in the exported HTML, it was not filling with color.  So then I went back to make sure I wasn't doing something wrong.  It in fact was not filling with color and when I worked the c