‎2008 Jun 18 11:58 AM
Hi Friends,
During using BAPI_PO_CREATE1, I am getting the following error message.
No instance of object type PurchaseOrder has been created. External reference:
Please provide the solution for the problem.
Raheja
‎2008 Jun 18 1:49 PM
‎2008 Jun 18 12:00 PM
I think this is because you may not have poulated the mandatory fileds in the parameters passsed to BAPI.Please check the structures nad tables passed to BAPI
‎2008 Jun 18 12:12 PM
‎2008 Jun 18 12:14 PM
Hi Pls find out the code.
POHEADER-COMP_CODE = 'GIL'.
POHEADER-DOC_TYPE = 'GR1' .
POHEADER-VENDOR = ITAB-LIFNR .
POHEADER-PURCH_ORG = 'GIL' .
POHEADER-PUR_GROUP = 'P02' .
POHEADER-CURRENCY = 'INR' .
POHEADER-ITEM_INTVL = '00001'.
POHEADER-PMNTTRMS = 'PV16'.
POHEADER-DOC_DATE = SY-DATUM.
POHEADER-EXCH_RATE = '1.00'.
POHEADER-CREAT_DATE = SY-DATUM.
POHEADER-OUR_REF = '1'.
POHEADER-REF_1 = '1'.
POHEADERX-COMP_CODE = 'X'.
POHEADERX-DOC_TYPE = 'X' .
POHEADERX-VENDOR = 'X'.
POHEADERX-PURCH_ORG = 'X'.
POHEADERX-PUR_GROUP = 'X'.
POHEADERX-CURRENCY = 'X' .
POHEADERX-ITEM_INTVL = 'X'.
POHEADERX-PMNTTRMS = 'X'.
POHEADERX-DOC_DATE = 'X'.
POHEADERX-EXCH_RATE = 'X'.
POHEADERX-CREAT_DATE = 'X'.
POHEADERX-OUR_REF = 'X'.
POHEADERX-REF_1 = 'X'.
LOOP AT ITAB.
V_TABIX = SY-TABIX.
POITEM-PO_ITEM = V_TABIX * 10.
POITEM-MATERIAL = ITAB-MATNR.
POITEM-PLANT = ITAB-WERKS.
POITEM-QUANTITY = ITAB-MENGE.
POITEM-ACCTASSCAT = 'E'.
POITEM-TAX_CODE = ITAB-MWSKZ.
POITEM-NET_PRICE = ITAB-NETPR.
APPEND POITEM.
POITEMX-PO_ITEM = V_TABIX * 10.
POITEMX-MATERIAL = 'X'.
POITEMX-PLANT = 'X'.
POITEMX-QUANTITY = 'X'.
POITEMX-ACCTASSCAT = 'X'.
POITEMX-TAX_CODE = 'X'.
POITEMX-NET_PRICE = 'X'.
APPEND POITEMX.
POACCOUNT-PO_ITEM = POITEM-PO_ITEM.
POACCOUNT-SD_DOC = SALESDOCUMENT.
POACCOUNT-SD_DOC = '40000432'.
POACCOUNT-ITM_NUMBER = POITEM-PO_ITEM.
APPEND POACCOUNT.
POACCOUNTX-PO_ITEM = POITEM-PO_ITEM.
POACCOUNT-SD_DOC = SALESDOCUMENT.
POACCOUNTX-SD_DOC = 'X'.
POACCOUNTX-ITM_NUMBER = 'X'.
APPEND POACCOUNTX.
POSCHEDULE-PO_ITEM = POITEM-PO_ITEM.
POSCHEDULE-SCHED_LINE = SY-TABIX.
POSCHEDULE-DELIVERY_DATE = SY-DATUM.
POSCHEDULE-QUANTITY = ITAB-MENGE.
APPEND POSCHEDULE.
POSCHEDULEX-PO_ITEM = POITEM-PO_ITEM.
POSCHEDULEX-SCHED_LINE = SY-TABIX.
POSCHEDULEX-DELIVERY_DATE = 'X'.
POSCHEDULEX-QUANTITY = 'X'.
APPEND POSCHEDULEX.
POCOND-COND_TYPE = 'ZB30'.
POCOND-ITM_NUMBER = POITEM-PO_ITEM.
POCOND-COND_VALUE = ITAB-NETPR.
POCOND-CURRENCY = 'INR'.
APPEND POCOND.
POCONDX-COND_TYPE = 'X'.
POCONDX-ITM_NUMBER = POITEM-PO_ITEM.
POCONDX-COND_VALUE = 'X'.
POCONDX-CURRENCY = 'X'.
APPEND POCONDX.
ENDLOOP.
CALL FUNCTION 'BAPI_PO_CREATE1'
EXPORTING
POHEADER = POHEADER
POHEADERX = POHEADERX
POADDRVENDOR =
TESTRUN =
MEMORY_UNCOMPLETE =
MEMORY_COMPLETE =
POEXPIMPHEADER =
POEXPIMPHEADERX =
VERSIONS =
NO_MESSAGING =
NO_MESSAGE_REQ =
NO_AUTHORITY =
NO_PRICE_FROM_PO =
IMPORTING
EXPPURCHASEORDER = EXPPURCHASEORDER
EXPHEADER =
EXPPOEXPIMPHEADER =
TABLES
RETURN = PO_ERROR_MSGS
POITEM = POITEM
POITEMX = POITEMX
POADDRDELIVERY =
POSCHEDULE = POSCHEDULE
POSCHEDULEX = POSCHEDULEX
POACCOUNT = POACCOUNT
POACCOUNTPROFITSEGMENT =
POACCOUNTX = POACCOUNTX
POCONDHEADER =
POCONDHEADERX =
POCOND = POCOND
POCONDX = POCONDX
POLIMITS =
POCONTRACTLIMITS =
POSERVICES =
POSRVACCESSVALUES =
POSERVICESTEXT =
EXTENSIONIN =
EXTENSIONOUT =
POEXPIMPITEM =
POEXPIMPITEMX =
POTEXTHEADER =
POTEXTITEM =
ALLVERSIONS =
POPARTNER =
POCOMPONENTS =
POCOMPONENTSX =
POSHIPPING =
POSHIPPINGX =
POSHIPPINGEXP =
.
‎2008 Jun 18 1:06 PM
‎2008 Jun 18 12:37 PM
‎2008 Jun 18 1:49 PM
‎2008 Jun 23 7:37 AM
‎2008 Jun 23 7:49 AM
Pass the Partner Information also.
Parameter: POPARTNER
PARTNERDESC = OA
LANGU = EN
BUSPARTNO = 0000001100
PARTNERDESC = GS
LANGU = EN
BUSPARTNO = 0000001200
PARTNERDESC = PI
LANGU = EN
BUSPARTNO = 0000001000
Check manually whether you are able to create PO or not and pass them as it is in the BAPI also and Use BAPI_TRANSACTION_COMMIT after BAPI_PO_CREATE1.
Regards
Kannaiah