<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Purchase Order in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/purchase-order/m-p/1785652#M338361</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I need some information about Purchase Order. AS I have to work on that. Please define me what it is exactly. Creating Purchase Orsder means what.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you have any sample code then please do let me know.&lt;/P&gt;&lt;P&gt;Thanks &amp;amp; regards......&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 20 Dec 2006 04:41:42 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-12-20T04:41:42Z</dc:date>
    <item>
      <title>Purchase Order</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/purchase-order/m-p/1785652#M338361</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I need some information about Purchase Order. AS I have to work on that. Please define me what it is exactly. Creating Purchase Orsder means what.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you have any sample code then please do let me know.&lt;/P&gt;&lt;P&gt;Thanks &amp;amp; regards......&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Dec 2006 04:41:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/purchase-order/m-p/1785652#M338361</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-20T04:41:42Z</dc:date>
    </item>
    <item>
      <title>Re: Purchase Order</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/purchase-order/m-p/1785653#M338362</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;A PO is a formal request to a vendor to supply certain goods or services under the stated conditions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can create PO in transaction ME21n.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BAPI for creating PO is 'BAPI_PO_CREATE1'.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Dec 2006 04:45:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/purchase-order/m-p/1785653#M338362</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-20T04:45:47Z</dc:date>
    </item>
    <item>
      <title>Re: Purchase Order</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/purchase-order/m-p/1785654#M338363</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi SAM  , &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;U can create Purchase Order from Tcode ME21N .This is a Transaction ,first u have to know on that inputs SAP will create PO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1.Vendor.&lt;/P&gt;&lt;P&gt;2.Material.&lt;/P&gt;&lt;P&gt;3.QTy&lt;/P&gt;&lt;P&gt;4.Purchase Org data etc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If u want to do it thru program , u need following data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;FU BAPI_PO_CREATE1
____________________________________________________
Text
Create Purchase Order

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.

Please also refer to current information in Note 197958 in this connection.


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 -&amp;gt; Purchase Orders) or the Help for the Enjoy Purchase Order, or choose the path Tools -&amp;gt; ABAP Workbench -&amp;gt; Overview -&amp;gt; BAPI Explorer from the SAP menu.
Parameters
POHEADER
POHEADERX
POADDRVENDOR
TESTRUN
MEMORY_UNCOMPLETE
MEMORY_COMPLETE
POEXPIMPHEADER
POEXPIMPHEADERX
VERSIONS
NO_MESSAGING
NO_MESSAGE_REQ
NO_AUTHORITY
NO_PRICE_FROM_PO
EXPPURCHASEORDER
EXPHEADER
EXPPOEXPIMPHEADER
RETURN
POITEM
POITEMX
POADDRDELIVERY
POSCHEDULE
POSCHEDULEX
POACCOUNT
POACCOUNTPROFITSEGMENT
POACCOUNTX
POCONDHEADER
POCONDHEADERX
POCOND
POCONDX
POLIMITS
POCONTRACTLIMITS
POSERVICES
POSRVACCESSVALUES
POSERVICESTEXT
EXTENSIONIN
EXTENSIONOUT
POEXPIMPITEM
POEXPIMPITEMX
POTEXTHEADER
POTEXTITEM
ALLVERSIONS
POPARTNER

Exceptions
Function Group
2012&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Prabhu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Dec 2006 04:46:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/purchase-order/m-p/1785654#M338363</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-12-20T04:46:51Z</dc:date>
    </item>
  </channel>
</rss>

