RE:F module BAPI_PO_CREATE1

Hi all,
I need to copy condition types from SRM to ERP.I need to create PO using BAPI_PO_CREATE1,But the condition type i am passing to FM(BAPI_PO_CREATE1) is not getting updated in the PO.So does anyone know what all data needs to be passed to pocond,pocondx and poitem so that the condion type i am passing from SRM gets updated in ERP accordingly...
Thanks in advance,
Alex.

REPORT  ZPURCHASEORDER.
data:
header like BAPIMEPOHEADER,
headerx like BAPIMEPOHEADERX,
it_item like standard table of BAPIMEPOITEM,
it_itemx like standard table of BAPIMEPOITEMX,
return like standard table of BAPIRET2,
wa_item like BAPIMEPOITEM,
wa_itemx like BAPIMEPOITEMX,
p_int type i,
p_matnr like mara-matnr,
p_pono like ekko-ebeln.
DATA: BEGIN OF BAPIRETURN OCCURS 0.
        INCLUDE STRUCTURE BAPIRET2.
DATA: END OF BAPIRETURN.
constants:
c_x type c value 'X'.
*if sy-uname  'ABAP'.
*if program = 'ZPURCHASEORDER' .
*raise cancelled.
*endif.
*endif.
header-comp_code = '3000'.
header-doc_type = 'DP25'.
header-creat_date = sy-datum.
header-item_intvl = '10'.
header-vendor = 'ARAMI-00'.
header-langu = sy-langu.
header-pmnttrms = '0001'.
header-purch_org = '3000'.
header-pur_group = '010'.
header-currency = 'USD'.
headerx-comp_code = c_x.
headerx-doc_type = c_x.
headerx-creat_date = c_x.
headerx-item_intvl = c_x .
headerx-vendor = c_x.
headerx-langu = c_x.
headerx-pmnttrms = c_x .
headerx-purch_org = c_x.
headerx-pur_group = c_x.
*LOOP AT it_final2 INTO wa_final2.
p_int = p_int + 10.
wa_item-po_item = p_int.
p_matnr = 'T-SRM01'.
CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'
EXPORTING
input = p_matnr
IMPORTING
output = p_matnr
EXCEPTIONS
length_error = 1
OTHERS = 2.
*IF sy-subrc = 0.
*MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
*WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
*ENDIF.
wa_item-material = p_matnr.
wa_item-plant = '3200'.
wa_item-quantity = 100.
wa_item-conf_ctrl = 'Z01'.
wa_item-ACKN_REQD = 'X'.
WA_ITEM-ERS = ''.
APPEND wa_item TO it_item.
wa_itemx-po_item = p_int.
wa_itemx-material = c_x.
wa_itemx-plant = c_x .
wa_itemx-stge_loc = c_x .
wa_itemx-quantity = c_x .
wa_itemx-item_cat = c_x .
wa_itemx-acctasscat = c_x .
wa_itemx-conf_ctrl = 'X'.
wa_itemx-ACKN_REQD = 'X'.
WA_ITEMX-ERS = 'X'.
APPEND wa_itemx TO it_itemx.
*ENDLOOP.
CALL FUNCTION 'BAPI_PO_CREATE1'
EXPORTING
poheader = header
poheaderx = headerx
IMPORTING
exppurchaseorder = p_pono
TABLES
return = return
poitem = it_item
poitemx = it_itemx.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
           EXPORTING
                WAIT   = 'X'
           IMPORTING
                RETURN = BAPIRETURN.
write:/ p_pono.

Similar Messages

  • Regarding problem in function module BAPI_PO_CREATE1

    Hi Guys,
                I have created a program for the creation of Purchase Order using Bapi_PO_CREATE1 with account assignment category as 'M' and item category as 'L'.Here when i am doing it manually i was asked to give the details of the components.But I am unable to find where to include these fields in my program.
                       Please help me out.Any program template would be of great help to me.
    Thanks in Advance
    Srikanth.

    hello muva,
    this prog may help u ...check this
    *& Report  ZBAPI                                                       *
    REPORT  zbapi                                   .
    DATA: BEGIN OF i_data OCCURS 0,
            text(255),
          END OF i_data.
    DATA: i_ekko TYPE bapiekkoc.
    DATA: it_ekko LIKE TABLE OF i_ekko INITIAL SIZE 0  WITH HEADER LINE.
    DATA: BEGIN OF i_ekpo OCCURS 0,
            po_item(5),
            pur_mat(18),
            plant(4),
            net_price(23),
            disp_quan(13),
         END OF i_ekpo.
    DATA: it_ekpo LIKE TABLE OF bapiekpoc INITIAL SIZE 0 WITH HEADER LINE .
    DATA: BEGIN OF i_eket OCCURS 0,
             po_item(5),
             deliv_date(8),
             quantity(13),
          END OF i_eket.
    DATA: it_eket LIKE TABLE OF bapieket INITIAL SIZE 0 WITH HEADER LINE.
    DATA: v_index TYPE i.
    DATA: return TYPE TABLE OF bapireturn INITIAL SIZE 0 WITH HEADER LINE.
    DATA: po_num(10).
    START-OF-SELECTION.
    CALL FUNCTION 'UPLOAD'
    EXPORTING
      CODEPAGE                      = ' '
      FILENAME                      = ' '
      FILETYPE                      = ' '
      ITEM                          = ' '
      FILEMASK_MASK                 = ' '
      FILEMASK_TEXT                 = ' '
      FILETYPE_NO_CHANGE            = ' '
      FILEMASK_ALL                  = ' '
      FILETYPE_NO_SHOW              = ' '
      LINE_EXIT                     = ' '
      USER_FORM                     = ' '
      USER_PROG                     = ' '
      SILENT                        = 'S'
    IMPORTING
      FILESIZE                      =
      CANCEL                        =
      ACT_FILENAME                  =
      ACT_FILETYPE                  =
      TABLES
        data_tab                      = i_data
    EXCEPTIONS
      CONVERSION_ERROR              = 1
      INVALID_TABLE_WIDTH           = 2
      INVALID_TYPE                  = 3
      NO_BATCH                      = 4
      UNKNOWN_ERROR                 = 5
      GUI_REFUSE_FILETRANSFER       = 6
      OTHERS                        = 7
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    loop at i_data.
    if i_data-text(1) = 'H'.
       shift i_data-text.
       v_index = v_index + 1.
       split i_data-text at ',' into i_ekko-doc_type
                                    i_ekko-purch_org
                                    i_ekko-pur_group
                                    i_ekko-vendor.
      append i_ekko to it_ekko.
    elseif i_data-text(1) = 'I'.
    shift i_data-text.
    split i_data-text at ',' into i_ekpo-po_item
                                   i_ekpo-pur_mat
                                   i_ekpo-plant
                                   i_ekpo-net_price
                                   i_ekpo-disp_quan.
    append i_ekpo.
    move-corresponding i_ekpo to it_ekpo.
    append it_ekpo.
    clear it_ekpo.
    else.
    shift i_data-text.
    split i_data-text at ',' into i_eket-po_item
                                   i_eket-deliv_date
                                   i_eket-quantity.
    append it_eket .
    move-corresponding i_eket to it_eket.
    append it_eket.
    clear it_eket.
    endif.
    endloop.
    CALL FUNCTION 'BAPI_PO_CREATE'
      EXPORTING
        po_header                        = i_ekko
      PO_HEADER_ADD_DATA               =
      HEADER_ADD_DATA_RELEVANT         =
      PO_ADDRESS                       =
      SKIP_ITEMS_WITH_ERROR            = 'X'
      ITEM_ADD_DATA_RELEVANT           =
      HEADER_TECH_FIELDS               =
    IMPORTING
      PURCHASEORDER                    =
      tables
        po_items                         = it_ekpo
      PO_ITEM_ADD_DATA                 =
        po_item_schedules                = it_eket
      PO_ITEM_ACCOUNT_ASSIGNMENT       =
      PO_ITEM_TEXT                     =
       RETURN                           = return
      PO_LIMITS                        =
      PO_CONTRACT_LIMITS               =
      PO_SERVICES                      =
      PO_SRV_ACCASS_VALUES             =
      PO_SERVICES_TEXT                 =
      PO_BUSINESS_PARTNER              =
      EXTENSIONIN                      =
      POADDRDELIVERY                   =
    write: po_num.
      loop at return.
      write:/ return-message,return-type.
      endloop.

  • Submit new Item Conditions via Function Module BAPI_PO_CREATE1

    Hi all,
    I have problems using FM BAPI_PO_CREATE1.
    I want to transfer Item conditions via FM, but I am not able to change the netprice via FM, my Conditions are not displayed within the Item (only netprice of Item is displayed).
    I create POs out of a SRM System via FM BBP_PO_INBOUND (which calls BAPI_PO_CREATE1).
    My question:
    Has anyone an example how to fill in data within table POCOND so that my PO item contains for example a gross price and a rebate.
    I am stucked, I can´t find the solution to create item conditions via FM BAPI_PO_CREATE1.
    Any examples?
    Thanks a lot
    Regards
    Andreas

    Problem resolved
    I used the FBGENDAT param in R/3 system to generate test data automatically, compare the data and finally I found my error.
    --> OSS note 539978
    Regards
    Andreas

  • Save EAN11 field while creating POrder creation through Function module

    Hi All,
    I want to update EAN11 field in material master while creating Purchase Order through function module. I am using function module BAPI_PO_CREATE1 for creating purchase order. There are no structures in the PO creation FM in which EAN11 field is there. I have also tried using function module MEPO_DOC_ITEM_PROCESS for updating EAN11 field. It is not working. Please suggest some method to do that.
    Note: I am receiving EAN11 through an external system by proxy.
    Thanks,
    Chinmay

    Hi,
    Use BAPI_MATERIAL_SAVEDATA to updat ean numbers for materials.
    tables INTERNATIONALARTNOS is used to update EAN.
    Regards,
    Shanmugavel Chandrasekaran

  • Delivery date not getting transferred while running BAPI_PO_CREATE1

    Hi Experts,
    I am passing the delivery date item level delivery schedule to the function module
    BAPI_PO_CREATE1. But it's not taking it in.The new PO is gettinig created with blank delivery date. I implemented the OSS notes 858316 & 890901 with no luck in this matter.
    Please help.
    Regards
    Navin

    Hi JJ
    BADI BBP_DOC_CHANGE_BADI- BUS2201 . while creating PO try to validate them if you are in ecs mode
    i believe standard SAP dont recalculate delivery date while creation of PO.
    regards
    Muthu

  • Regarding skip the availability check in BAPI_PO_CREATE1

    Hi Abapers,
         Can you suggest any enhancement, to skip the availability check in function module BAPI_PO_CREATE1?
    (My requirement is, availability check should not be triggered, because delivery has been completed already).
    Regards
    Subash
    Edited by: subash Arthanari on Dec 2, 2008 10:56 AM

    u can pass field  Delivery Completed" Indicator
    structure BAPIMEPOITEM
    field   NO_MORE_GR
    like:-
    wa_item-material = p_matnr.
    wa_item-plant = '3200'.
    wa_item-quantity = 100.
    wa_item-conf_ctrl = 'Z01'.
    wa_item-ACKN_REQD = 'X'.
    WA_ITEM-ERS = ''.
    wa_item-NO_MORE_GR= 'X'.
    APPEND wa_item TO it_item.
    wa_itemx-po_item = p_int.
    wa_itemx-material = c_x.
    wa_itemx-plant = c_x .
    wa_itemx-stge_loc = c_x .
    wa_itemx-quantity = c_x .
    wa_itemx-item_cat = c_x .
    wa_itemx-acctasscat = c_x .
    wa_itemx-conf_ctrl = 'X'.
    wa_itemx-ACKN_REQD = 'X'.
    WA_ITEMX-ERS = 'X'.
    wa_itemx-NO_MORE_GR= 'X'.
    APPEND wa_itemx TO it_itemx.

  • Necessary Fields For Creation of Service PO of Order Type Relaese Order.

    Dear Guru,
    I have encountered an issue which i am trying to resolve...
    My this requirment will seem little okward the way i am asking but i have no way...
    The issue is I have to create a Service PO of Order type Release order (RO) using BAPI Function Module .BAPI_PO_CREATE1.
    The service PO should be of multiple Item and services for particular line item should be multiple.
    When I am creating this using ME21 or ME21N i am facing no issue.
    But when i am using BAPI Function Module .BAPI_PO_CREATE1
    i am getting following errors ;; The error which i am getting as below                                                                               
    T ID                   NUM MESSAGE                                                                               
    E BAPI                001 No instance of object type PurchaseOrder has been created. External reference:
    E MEPO              000 Purchase order still contains faulty items                                    
    E SE                   029 Please maintain services or limits                                            
    E SE                   140 Service HIRING OF LCD: please specify unit of measure
    But I am failing to findout in which field services  or limits and unit of measurement have to maintain.
    What are the necessary fields have to pass in Bapi import parameter and the table i am unable to findout.
    Please show some way how to resolve this or give me some guideline to resolve this
    Dear Moderator request your kind intervane to move this qurry into correct forum if i have asked this in wrong forum
    Thanks and regards
    saifur rahaman

    Hi Saifur
    Can you please elaborate how did you resolve the issue we are also facing same problem when we are trying to create the PO for service items through SRM it is throwing same error while creating the PO in SAP.
    Email Id : [email protected]
    Thank you in advance!!
    Regards
    Deepika

  • What are the Mandatory Fields in Transaction ME51

    Hello Seniors,
    I have a requirement about purchase order creation. In this process, I am using the BAPI named   " BAPI_PO_CREATE1 ". I have passed all the fields but when I debug and look into the internal tables, I couldn't find certain records. I even debugged " bapiret2"  and I see an error which reads "" All mandatory fields are missing"". I have even created a PO  in ME51 and found out the mandatory fields but in vain. BAPIRET2 still says, there are some more mandatory fields missing. I need to know what are all the mandatory fields to create a Purchase order using TCODE - ME51.
    Your reply is most awaited and rewarded.
    Thanks and Regards,
    MARKIV

    hi ,
    Functionality
    Function module BAPI_PO_CREATE1 enables you to create purchase orders. The BAPI uses the technology behind the Enjoy purchase order transaction ( ME21N).
    Alternatively, the IDoc type PORDCR1 is available. The data from this IDoc automatically populates the interface parameters of the function module BAPI_PO_CREATE1.
    Functionality in Detail
    Authorization
    The following authorization objects are checked when an Enjoy purchase order is created (activity 01):
    M_BEST_BSA (document type in PO)
    M_BEST_EKG (purchasing group in PO)
    M_BEST_EKO (purchasing organization in PO)
    M_BEST_WRK (plant in PO)
    Controlling adoption of field values via X bar
    For most tables, you can determine via your own parameters in the associated X bar in each case (e.g. PoItemX) whether fields are to be set initial, values inserted via the interface, or default values adopted (e.g. from Customizing or master records) (for example, it is not mandatory to adopt the material group from an underlying purchase requisition - you can change it with the BAPI).
    Transfer
    Header data
    The header data of the Enjoy purchase order is transferred in the table PoHeader.
    Item data
    The item data of the Enjoy purchase order is stored in the table PoItem (general item data). The delivery schedule lines are stored in the table PoSchedule.
    Use the table PoAccount to specify the account assignment information. If account assignments have been specified for services and limits, you show the relevant account assignment line in PoAccount in the table PoSrvAccessValues via the package number of the service or the limit.
    Services and limits
    Services, free limits and limits with contract reference can be specified in the tables PoServices, PoLimits, and PoContractLimits.
    Conditions
    Conditions are transferred in the table PoCond; header conditions in the table PoCondHeader. Price determination is reinitiated via the parameter CALCTYPE in the table PoItem.
    Vendor and delivery address
    The vendor's address can be specified individually in the table PoAddrVendor; the delivery address in the table PoAddrDelivery. If you do not make any individual specification, the fields will be populated via the central address managementfacility.
    Note
    In this method, the following restrictions apply with regard to addresses:
    Addresses can only be created with this method - they cannot be changed. You can only change address data with the method BAPI_ADDRESSORG_CHANGE.
    When you create addresses, they are not checked by the method. An Enjoy purchase order may therefore contain faulty address data.
    Partner roles
    The partners can be maintained individually via the table PoPartner (with the exception of the partner role "vendor").
    Import/export data
    Import/Export data can be specified per item in the table PoExpImpItem. Foreign trade data can only be transferred as default data for new items.
    Texts
    Header and item texts can be transferred in the tables PoTextHeader and PoTextItem. Texts for services are imported in the table PoServicesText.
    Version Management
    You can make use of the Version Management facility via the table AllVersions.
    Return
    The PO number is returned in the parameter ExpPurchaseOrder. In addition, all information except the service and export/import tables is placed in the output structures.
    Return messages
    Messages are returned in the parameter Return. This also contains information as to whether interface data has been wrongly or probably wrongly (heuristical interface check) populated. If a PO has been successfully created, the PO number is also placed in the return table with the appropriate message.
    Example
    Example of population of BAPI interface in the Function Builder
    Parameter: POHEADER
    COMP_CODE = 1000
    DOC_TYPE = NB
    ITEM_INTVL = 00001
    VENDOR = 0000001000
    PMNTTRMS = 0001
    PURCH_ORG = 1000
    PUR_GROUP = 001
    CURRENCY = EUR
    Parameter: POHEADERX
    COMP_CODE = X
    DOC_TYPE = X
    ITEM_INTVL = X
    VENDOR = X
    PMNTTRMS = X
    PURCH_ORG = X
    PUR_GROUP = X
    Parameter: POITEM
    PO_ITEM = 00001
    MATERIAL = 100-100
    PLANT = 1000
    STGE_LOC = 0001
    QUANTITY = 15.000
    TAX_CODE = V0
    ITEM_CAT = 0
    ACCTASSCAT = K
    Parameter: POITEMX
    PO_ITEM = 00001
    MATERIAL = X
    PLANT = X
    STGE_LOC = X
    QUANTITY = X
    TAX_CODE = X
    ITEM_CAT = X
    ACCTASSCAT = X
    Parameter: POSCHEDULE
    PO_ITEM = 00001
    SCHED_LINE = 0001
    DELIVERY_DATE = 02.12.2002
    QUANTITY = 6.000
    PO_ITEM = 00001
    SCHED_LINE = 0002
    DELIVERY_DATE = 03.12.2002
    QUANTITY = 5.000
    PO_ITEM = 00001
    SCHED_LINE = 0003
    DELIVERY_DATE = 04.12.2002
    QUANTITY = 4.000
    Parameter: POSCHEDULEX
    PO_ITEM = 00001
    SCHED_LINE = 0001
    PO_ITEMX = X
    SCHED_LINEX = X
    DELIVERY_DATE = X
    QUANTITY = X
    PO_ITEM = 00001
    SCHED_LINE = 0002
    PO_ITEMX = X
    SCHED_LINEX = X
    DELIVERY_DATE = X
    QUANTITY = X
    PO_ITEM = 00001
    SCHED_LINE = 0003
    PO_ITEMX = X
    SCHED_LINEX = X
    DELIVERY_DATE = X
    QUANTITY = X
    Parameter: POACCOUNT
    PO_ITEM = 00001
    SERIAL_NO = 01
    QUANTITY = 15.000
    GL_ACCOUNT = 0000400000
    COSTCENTER = 0000001000
    CO_AREA = 1000
    Parameter: POACCOUNTX
    PO_ITEM = 00001
    SERIAL_NO = 01
    QUANTITY = X
    GL_ACCOUNT = X
    COSTCENTER = X
    CO_AREA = X
    Parameter: POCOND
    ITM_NUMBER = 000001
    COND_ST_NO = 001
    COND_TYPE = PB00
    COND_VALUE = 79.900000000
    CURRENCY = EUR
    CURRENCY_ISO = EUR
    COND_UNIT = KG
    COND_P_UNT = 1
    CHANGE_ID = U
    Parameter: POCONDX
    ITM_NUMBER =  000001
    COND_ST_NO =  000
    ITM_NUMBERX =  X
    COND_TYPE =  X
    COND_VALUE =  X
    CURRENCY =  X
    CHANGE_ID =  X
    Parameter: POPARTNER
    PARTNERDESC =  OA
    LANGU =  EN
    BUSPARTNO =  0000001100
    PARTNERDESC =  GS
    LANGU =  EN
    BUSPARTNO =  0000001200
    PARTNERDESC =  PI
    LANGU =  EN
    BUSPARTNO =  0000001000
    Help in the Case of Problems
    1. Note 197958 lists answers to frequently asked questions (FAQs). (Note 499626 contains answers to FAQs relating to External Services Management.)
    2. If you have detected an error in the function of a BAPI, kindly create a reproducible example in the test data directory in the Function Builder (transaction code SE37). Note 375886 tells you how to do this.
    3. If the problem persists, please create a Customer Problem Message for the componente MM-PUR-PO-BAPI, and document the reproducible example where necessary.
    Customer Enhancements
    The following user exits (function modules) are available for the BAPI BAPI_PO_CREATE1:
    EXIT_SAPL2012_001 (at start of BAPI)
    EXIT_SAPL2012_003 (at end of BAPI)
    The following user exits (function modules) are available for the BAPI BAPI BAPI_PO_CHANGE:
    EXIT_SAPL2012_002 (at start of BAPI)
    EXIT_SAPL2012_004 (at end of BAPI)
    These exits belong to the enhancement SAPL2012 (see also transaction codes SMOD and CMOD).
    There is also the option of populating customer-specific fields for header, item, or account assignment data via the parameter EXTENSIONIN.
    Further information
    1. Note 197958 contains up-to-date information on the purchase order BAPIs.
    2. If you test the BAPIs BAPI_PO_CREATE1 or BAPI_PO_CHANGE in the Function Builder (transaction code SE37), no database updates will be carried out. If you need this function, please take a look at Note 420646.
    3. The BAPI BAPI_PO_GETDETAIL serves to read the details of a purchase order. The BAPI cannot read all details (e.g. conditions). However, you can use the BAPI BAPI_PO_CHANGE for this purpose if only the document number is populated and the initiator has change authorizations for purchase orders.
    4. Frequently used BAPIs for purchase orders are BAPI_PO_CREATE, BAPI_PO_CREATE1, BAPI_PO_CHANGE, BAPI_PO_GETDETAIL, BAPI_PO_GETITEMS, BAPI_PO_GETITEMSREL, and BAPI_PO_GETRELINFO.
    5. For more information on purchase orders, refer to the SAP library (under MM Purchasing -> Purchase Orders) or the Help for the Enjoy Purchase Order, or choose the path Tools -> ABAP Workbench -> Overview -> BAPI Explorer from the SAP menu.
    regards
    reena

  • PO could not be creating using the Enjoy-BAPI

    Hi expersts.
    I have a problem with BAPI function module BAPI_PO_CREATE1. When program will generate orders for several suppliers for one supplier "PO could not be creating using the Enjoy-BAPI" and "Purchase order item 00010 still contains faulty schedule lines" and
    "Source not included in list despite source list requirement"  messages occur. Order won't be generated.
    When I am generating order only for that supplier, everything is fine. They are generated and no messages are displayed.
    Could anyone help me ?
    Thanks, regards.
    Dan.

    Hi expersts.
    I have a problem with BAPI function module BAPI_PO_CREATE1. When program will generate orders for several suppliers for one supplier "PO could not be creating using the Enjoy-BAPI" and "Purchase order item 00010 still contains faulty schedule lines" and
    "Source not included in list despite source list requirement"  messages occur. Order won't be generated.
    When I am generating order only for that supplier, everything is fine. They are generated and no messages are displayed.
    Could anyone help me ?
    Thanks, regards.
    Dan.

  • Creation of PO

    Hi,
    I had this function module B that is executed as a background task in a function module A. In this function module B, there's a standard function module BAPI_PO_CREATE1 used to create PO. However, if I execute function module B as a background task, it is not working. Is there any reason why is it so?
    Thanks.
    Best Regards,
    Wei Shan

    REPORT  ZPURCHASEORDER.
    data:
    header like BAPIMEPOHEADER,
    headerx like BAPIMEPOHEADERX,
    it_item like standard table of BAPIMEPOITEM,
    it_itemx like standard table of BAPIMEPOITEMX,
    return like standard table of BAPIRET2,
    wa_item like BAPIMEPOITEM,
    wa_itemx like BAPIMEPOITEMX,
    p_int type i,
    p_matnr like mara-matnr,
    p_pono like ekko-ebeln.
    DATA: BEGIN OF BAPIRETURN OCCURS 0.
            INCLUDE STRUCTURE BAPIRET2.
    DATA: END OF BAPIRETURN.
    constants:
    c_x type c value 'X'.
    header-comp_code = '3000'.
    header-doc_type = 'DP25'.
    header-creat_date = sy-datum.
    header-item_intvl = '10'.
    header-vendor = 'ARAMI-00'.
    header-langu = sy-langu.
    header-pmnttrms = '0001'.
    header-purch_org = '3000'.
    header-pur_group = '010'.
    header-currency = 'USD'.
    headerx-comp_code = c_x.
    headerx-doc_type = c_x.
    headerx-creat_date = c_x.
    headerx-item_intvl = c_x .
    headerx-vendor = c_x.
    headerx-langu = c_x.
    headerx-pmnttrms = c_x .
    headerx-purch_org = c_x.
    headerx-pur_group = c_x.
    *LOOP AT it_final2 INTO wa_final2.
    p_int = p_int + 10.
    wa_item-po_item = p_int.
    p_matnr = 'T-SRM01'.
    CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'
    EXPORTING
    input = p_matnr
    IMPORTING
    output = p_matnr
    EXCEPTIONS
    length_error = 1
    OTHERS = 2.
    *IF sy-subrc = 0.
    *MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    *WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    *ENDIF.
    wa_item-material = p_matnr.
    wa_item-plant = '3200'.
    wa_item-quantity = 100.
    wa_item-conf_ctrl = 'Z01'.
    wa_item-ACKN_REQD = 'X'.
    WA_ITEM-ERS = ''.
    APPEND wa_item TO it_item.
    wa_itemx-po_item = p_int.
    wa_itemx-material = c_x.
    wa_itemx-plant = c_x .
    wa_itemx-stge_loc = c_x .
    wa_itemx-quantity = c_x .
    wa_itemx-item_cat = c_x .
    wa_itemx-acctasscat = c_x .
    wa_itemx-conf_ctrl = 'X'.
    wa_itemx-ACKN_REQD = 'X'.
    WA_ITEMX-ERS = 'X'.
    APPEND wa_itemx TO it_itemx.
    *ENDLOOP.
    CALL FUNCTION 'BAPI_PO_CREATE1'
    EXPORTING
    poheader = header
    poheaderx = headerx
    IMPORTING
    exppurchaseorder = p_pono
    TABLES
    return = return
    poitem = it_item
    poitemx = it_itemx.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
               EXPORTING
                    WAIT   = 'X'
               IMPORTING
                    RETURN = BAPIRETURN.
    write:/ p_pono.
    Code Formatted by: Alvaro Tejada Galindo on Dec 26, 2008 10:25 AM

  • Replacing the bapi with the new bapi for purchase order creation

    Hi,
       In the customised code call is there for the bapi function module  'BAPII_PO_CREATE'.
       Iam trying to replace the call with the code that calls function module 'BAPI_PO_CREATE1'.
       Please help me about what changes I needed to do in the code . As there is much mismatch in the import and export parameters
    and tables in both the function modules.
       Thanks in advance.
    Edited by: anwar.indya on Mar 25, 2011 2:18 PM
    Edited by: anwar.indya on Mar 25, 2011 2:19 PM

    Hi,
    As per  u r requirement
    you can use  : BAPI =>    BAPI_PO_CREATE  with suitable Document  Type ( Stock trasnfert : STO )
    IF  u want to auto po must be created after each delivry in this case you need to use BADI
    'MB_MIGO_BADI; In This BAPI  There is method : POST_DOCUMENT
    In this method u can write code for Auto PO Creation by using BAPI .
    Hope This will Resolve u r query.
    Thanks and Regads
    Santosh

  • BUS2012 - CreateFromData1 - PO doesn't created

    Hi all, I have a WF with a Task calling the method CreatedFromData1 of BO BUS2012, when I run the WF all seems OK(I get the PO number), but  when I go to ME23N transaction the PO isn't created.
    Do you know if I need to call other task after CreateFromData1 for COMMIT WORK?.
    Regards
    Angel

    I find that for the method BUS2012-PurchaseOrder.CreateFromData the COMMIT WORK is automatic. However when it comes to method BUS2012-PurchaseOrder.CreateFromData1 the commit work can only be set via debugger if you see the code for function module BAPI_PO_CREATE1. So any reason you want to use PurchaseOrder.CreateFromData1  instead of PurchaseOrder.CreateFromData? If there is no reason, you can use PurchaseOrder.CreateFromData method and avoid the trouble.
    However if you do want to continue using PurchaseOrder.CreateFromData1 method then I think you should create a new custom class with a method that calls BAPI_PO_CREATE1 followed by BAPI_TRANSACTION_COMMIT.

  • Update EKKO Z field using Inbound Idoc

    I have an requirement where  I have to update Z field in EKKO while creating PO using inbound Idoc.
    Basic Idoc Type: PORDC103
    Function module: BAPI_PO_CREATE1
    Extended POHEADER and EKKO with z field.
    I am using exit EXIT_SAPL2012_001 to populate Z field while creating PO as below.
    poheader-zfield = '123'.
    extensionin-structure =  'Z_HEADER'.
    extensionin-valuepart1 =  '123'.
    APPEND extensionin.
    PO is getting created but z fields is not populated. Do i need to add any thing else apart from the above steps?.
    Any help appreciated.

    Rajitha,
    Add your Z field in structure BAPI_TE_MEPOHEADER and a corresponding flag in BAPI_TE_MEPOHEADERX.
    extensionin-structure = 'TE_MEPOHEADER'.
    extensionin-valuepart1 = '__________123'                      "'10 spaces than value for the field'.  
    APPEND extensionin.
    extensionin-structure = 'TE_MEPOHEADERX'.
    extensionin-valuepart1 = '__________X'                      "'10 spaces than X.  
    APPEND extensionin.
    You don't need to implement/use any exit for filling the custom fields.
    Regards,
    Diwakar

  • BAPI_PO_Create with reference purchase requisition

    Can someone help with the BAPI_PO_Create with reference to a purchase requisition step by step procedures?
    Any kind of assistance will be appreciated
    Thank you

    Hi
    BAPI_PO_CREATE is an old BAPI, you can try using BAPI_PO_CREATE1 -
    Function module BAPI_PO_CREATE1 enables you to create purchase orders. The BAPI uses the technology behind the Enjoy purchase order transaction (ME21N).
    Alternatively, the IDoc type PORDCR1 is available. The data from this IDoc automatically populates the interface parameters of the function module BAPI_PO_CREATE1.
    in SAP please use Transaction BAPI for details & example.
    in BAPI -Materials Management -> Purchasing -> PurchaseOrder -> CreateFromData1  or CreateFromData
    Checkout the documentation of the BAPI, it will have all the details with example.
    For testing the BAPI goto SE37 -> Enter the FM name BAPI_PO_CREATE1 & click on test poulate the fields as specified in the example & check the results.
    Thanks & Regards
    Kishore

  • Diff bt 2 bapi ?

    hi friends..
    i m new to bapi..
    i have some doubt in bapi..
    i want to create one PO in bapi..
    for that i have 1. BAPI_PO_CREATE 2. BAPI_PO_CREATE1
    wat is the diff bt these 2 bapi..
    can you help me how to create PO using bapi

    hi,
    both create purchase orders.. but bapi_po_create1 uses the technology behind the Enjoy purchase order transaction ( ME21N).Alternatively, the IDoc type PORDCR1 is available. The data from this IDoc automatically populates the interface parameters of the function module BAPI_PO_CREATE1.
    regards,
    Ashok Reddy

Maybe you are looking for

  • MacOSX 10.9.2 broke this Applescript progress bar :(

    Hello, Ever since I upgraded to MacOS 10.9.2, this download script with progress bar, which I frequently use, stopped working. Well the download bit works, but the progress bar, do not show the progress anymore. I have tried to resolve the issue, but

  • When I design with Muse and export as HTML Dreamweaver doesn't attach the style sheets. Any answers?

    When I design with Muse and export as HTML Dreamweaver doesn't attach the style sheets when I open the files with Dreamweaver. Essentially when I design with Muse the files don't render the same with Dreamweaver. Is this a bug? Any work arounds?

  • Internet port problem

    i am a using a WRT54GH linksys router.. which was working fine for a year.. there was thunderstorm and lightning a few days back.. since then my routers internet port (the first port which says internet in yellow) has stopped working...can some pleas

  • PI 7.0 Service pack level

    In PI 7.0 system SXMB_IFR    > Integration repository > logon as PISUPER > from menu bar     help > Information If you do the above it shows a pop up screen SAP Netweaver Exchange infrastructure System information Application :Design : Integration bu

  • Looking for some internet hosting advice.

    I am working on a website and I am trying to get an idea of what to expect in the future. If I wanted to add a video sharing area to my site, like YouTube, what would be the most cost-efficient way to do it? I would need a very large amount of disk s