Sapass

 Simplify SAP R/3 development with Excel VBA/VB RFC  
Home> Bapi>PurchaseOrder



Index

PurchaseOrder

PurchaseOrder


The business object Purchase order is a request or instruction
from a purchasing organization to a vendor (external supplier) or a
plant to deliver a certain quantity of material or to perform certain services at a certain point in time.

Structure

A purchase order (PO) consists of a number of items, for each of which
a procurement type is defined. The following procurement types exist:



  • Standard

  • Subcontracting

  • Consignment

  • Stock transfer

  • Service


  • The total quantity of the material to be supplied or the service to be
    performed set out in the PO item can be subdivided into partial
    quantities with corresponding delivery dates in the lines of a delivery schedule.


    With respect to PO items involving subcontracting work, the material
    components to be provided to the subcontractor can be specified for each delivery date.


    An item of the procurement type "service" comprises a set of service
    specifications. The specifications are structured by means of outline
    levels and the quantity ordered is set out in service lines. Value
    limits are stipulated in place of service lines for services that cannot be specified precisely.


    If services are to be released (ordered) against existing contracts,
    the PO item can contain a value limit relating to a certain contract.

    Conditions can apply at various levels:



  • to the entire purchase order

  • at item level for a material to be supplied or the specifications for services

  • at the level of the service line for an individual service


  • The costs incurred can be apportioned among different Controlling objects through the account assignment.


    The vendor can indicate to the purchasing organization that the delivery date will be met, or advise of any likely deviations
    therefrom, by sending various types of confirmation.

    The business transactions following on from the purchase order are
    documented item by item in the PO history.

    Integration

    Instead of the vendor as order recipient, other business partners can
    appear in various partner roles (as goods supplier or invoicing party, for example).

    In the purchase order, each item is destined for a plant. Each plant belongs to a company code, to which the creditor's invoice is
    addressed.


    11-Dec-2005


    Methods

    Available Methods


    • Change : Change Enjoy Purchase Orders [ BAPI_PO_CHANGE ]
    • CreateFromData : Create Purchase Order [ BAPI_PO_CREATE ]
    • CreateFromData1 : Create Enjoy Purchase Orders [ BAPI_PO_CREATE1 ]
    • GetDetail : Display Purchase Order Details [ BAPI_PO_GETDETAIL ]
    • GetItems : List Purchase Order Items [ BAPI_PO_GETITEMS ]
    • GetItemsForRelease : List Purchase Orders for Release [ BAPI_PO_GETITEMSREL ]
    • GetList : List Purchase Orders - Only up to 4.0A [ BAPI_PO_GET_LIST ] (Obsolete in 40A)
    • GetReleaseInfo : Detailed Release Information on Purchase Order [ BAPI_PO_GETRELINFO ]
    • Release : Release Purchase Orders [ BAPI_PO_RELEASE ]
    • ResetRelease : Cancel Release of Purchase Orders [ BAPI_PO_RESET_RELEASE ]

    11-Dec-2005


    Change

    Change


    You can use this method to change Enjoy purchase orders.

    Notes

    Authorization
    When you change an Enjoy purchase order (activity 02), the systemchecks the following authorization objects:

  • 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
  • Transfer
    The header for the Enjoy purchase order is transferred in table PoHeader
    and the item data is transferred in table PoItem.

    If an item is subject to account assignment, the account assignmentdata for each purchase order item can be transferred in table PoAccount. The account assignment category determines which cost-accounting-relevant objects in the account assignment data must be
    transferred. For example, if the account assignment category is K, the system must transfer a cost center.

    Delivery schedule lines are transferred on an item basis in table PoSchedule.

    Conditions are transferred in table PoCond.


    The vendor address is transferred in table PoAddrVendor, the delivery address in table PoAddrDelivery. The central address administration fields are used for this.

    Note
    In this method, you should note the following restrictions for addresses:


  • Addresses can only be created with this method, and not changed.You can change address data only using the method BAPI_ADDRESSORG_CHANGE.
  • If you create addresses, the method does not check them. This means
    that an Enjoy purchase order can contain address data that includes errors.
  • You transfer service items in table PoServices. The followingdata can also be transferred: account assignments (table PoSrvAccessValues), texts (table PoServicesText
    , limits (table PoLimits), and limits with reference to a contract (table PoContractLimits).

    Note
    In this method, you can only create service items, you cannot change them.

    Customer-specific fields


    If you want to process customer-specific fields in this BAPI, you can use either the ExtensionIn and ExtensionOut parameters or the SAPL2012 customer exit.

    Return messages
    Messages are returned in parameter Return.


    Restrictions

  • Texts, partners, import data and subcontracting components cannot be transferred using these BAPIs.
  • Further Information

    For more information on purchase orders, see the SAP Library at MM Purchasing -> Purchase Orders
    and the application help for the Enjoy purchase order.


    11-Dec-2005


    CreateFromData

    CreateFromData


    This method enables you to create purchase orders.

    Notes

    The following authorization objects are checked with the activity 01 (Create):

  • M_BEST_BSA Document type in purchase order
  • M_BEST_EKG Purchasing group in purchase order

  • M_BEST_EKO Purchasing organization in purchase order
  • M_BEST_WRK Plant in purchase order
  • Transfer

    The PO header data is passed on in the table POHeader and the item data in the table POItems
    . If the account assignment category is set in an item, account assignment data can be passed onfor each PO item in the transfer table PoItemAccountAssignment.The account assignment category determines which objects that haverelevance to costing must be passed on in the account assignment data.
    If the account assignment category is K, for example, a cost center must be passed on.

    If the item is to be ordered from a one-time vendor, the latter's ordering address must be passed on in the table POAddress.

    The table POItemSchedules must be passed on with the delivery date (among other data) for each item.


    Limits

    Limit data relating to the PO item can be passed on in the tables POLimits und POContractLimits.

    Services

    Service data relating to the PO item can be passed on in the tables POServices und POSrvAccAssValues

    See also the documentation on the parameters, in particular the documentation on the parameters POHeaderAddData, HeaderAddDataRelevant, POItemAddData, and ItemAddDataRelevant.

    Return


    The purchase order number is returned in the parameter Number.

    Messages returned

    Messages are returned in the parameter return. The parameterdocumentation shows the return codes and their meanings.



    11-Dec-2005


    CreateFromData1

    CreateFromData1


    You can use this method to create Enjoy purchase orders.

    Notes

    Authorizations
    When you create an Enjoy purchase order (activity 01), the systemchecks the following authorization objects:

  • 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
  • Transfer
    The header data in the Enjoy purchase order is transferred in table PoHeader
    and the item data is transferred in table PoItem.

    If an item is subject to account assignment, the account assignment data is transferred for each purchase order item in tablePoAccount. The account assignment category determines which cost
    accounting-relevant objects must be transferred in the account assignment data. If, for example, the account assignment category isK, a cost center must be transferred.

    Delivery schedule lines are transferred on an item basis in table PoSchedule.


    Conditions are transferred in table PoCond.

    The vendor address is transferred in table PoAddrVendor, and the delivery address is transferred in tablePoAddrDelivery. The central address management fields are used for this.


    Note
    You should note the following restrictions for addresses in this method:

  • Addresses can only be created using this method, but not changed. You can change address only using method BAPI_ADDRESSORG_CHANGE only.

  • When you create addresses, the method does not check them. This meansthat an Enjoy purchase order may contain inncorrect address data.
  • You transfer service items in table PoServices. You can alsotransfer the following data: account assignments (table PoSrvAccessValues), texts (table PoServicesText
    ), limits (Tabelle PoLimits), and limits with reference to a contract (table PoContractLimits).

    Customer-specific fields
    If you want to edit specific fields in this BAPI, use the parameters
    ExtensionIn
    , ExtensionOut and customer enhancement SAPL2012 to do so.

    Return
    The purchase order number is returned in parameter ExpPurchaseOrder.

    Return messages
    Messages are returned in parameter Return.


    Restrictions

  • Texts, partners, import data, subcontracting components, and customer-specific fields cannot be passed using these BAPIs.
  • Further Information

    For more information on purchase orders, see the SAP Library at MM Purchasing -> Purchase Orders
    and in the application help for the Enjoy purchase order.


    11-Dec-2005


    GetDetail

    GetDetail


    This method enables you to list the detailed data on a purchase order.

    Notes

    The following authorization objects are checked with the activity 03 (Display):

  • M_BEST_BSA Document type in purchase order
  • M_BEST_EKG Purchasing group in purchase order

  • M_BEST_EKO Purchasing organization in purchase order
  • M_BEST_WRK Plant in purchase order
  • Transfer

    The import parameters allow you to specify whether you wish to displayinformation pertaining to the items, the release process, account
    assignment, texts, and service items in addition to the header data (document type, purchasing group, etc.).

    The parameters for this additional information are not set by default (i.e. only the header data is returned).

    These parameters allow you to influence both the volume of data and system performance.


    Return

    The header data is returned in the parameter PoHeader and the vendor's address data in the parameter PoAddress. The data is returned in the relevant tables in dependence on the import parameters set.


    Return messages

    Messages are returned in the parameter return. The parameterdocumentation shows the return codes and their meanings.


    11-Dec-2005


    GetItems

    GetItems


    This method enables you to list purchase order items. You pass on thedesired selection criteria (e.g. purchasing group, plant, vendor) inthe import parameters. For more information, refer to the relevant parameter documentation.

    Notes


    The following authorization objects are checked with the activity 03 (Display):

  • M_BEST_BSA Document type in purchase order
  • M_BEST_EKG Purchasing group in purchase order
  • M_BEST_EKO Purchasing organization in purchase order

  • M_BEST_WRK Plant in purchase order
  • Return

    The items that satisfy the selection criteria are returned in the table PoItems.

    Return messages

    Messages are returned in the parameter return. The parameter
    documentation shows the return codes and their meanings.


    11-Dec-2005


    GetItemsForRelease

    GetItemsForRelease


    This method allows you to list all purchase orders that have to bereleased with a certain release code and group (collective release).

    Notes

    Authorization object M_EINK_FRG is checked.

    Transfer

    The release code (RelCode) and the release group (RelGroup) must be passed on.


    The parameter ItemsForRelease determines the following:

  • whether POs awaiting release are selected or
  • whether already released POs are selected
    This is useful, for example, if you wish to generate a list for thecancellation of releases.

  • Return

    The results are returned in the table parameters PoHeaders and PoItems.

    Return messages

    Messages are returned in the parameter return. The parameterdocumentation shows the return codes and their meanings.


    Further Information

    For further information on the release (approval) process, refer to the MM Purchasing documentation.


    11-Dec-2005


    GetList

    GetList


    You can use this method to list all purchase orders that have to bereleased (approved) with a certain release code and group (collective release).

    As of SAP Release 4.0A, use the method GetItemsForRelease of the business object PurchaseOrder.

    Notes

    Authorization object M_EINK_FRG is checked.

    The release code (RelCode) and the release group (RelGroup) have to be passed on.

    The parameter ItemsForRelease determine whether:


  • purchase orders awaiting release, or
  • already-released purchase orders
  • are selected.
    This is useful, for example, if a list is to be generated for thecancellation (revokation) of previously effected releases.

    The results are returned in the table parameters Headers, Addresses and Items.

    Further Information

    For further information, refer to the MM Purchasing documentation.


    11-Dec-2005


    GetReleaseInfo

    GetReleaseInfo


    This method enables you to display release information.

    Notes

    The authorization object M_EINK_FRG is checked.

    Transfer

    The purchase order number must be passed on. If you additionally passon the release code, the release prerequisites are also determined.


    Return

    The following are returned:

  • General release information (e.g. the release group and release strategy)
  • The release prerequisites (only if the release code was passed on)
  • The release codes with which previous releases have been effected

  • All release codes involved in the approval procedure
  • Return messages

    Messages are returned in the parameter return. The parameterdocumentation shows the return codes and their meanings.

    Further Information


    For further information, refer to the MM Purchasing documentation (section entitled "Release Procedure").


    11-Dec-2005


    Release

    Release


    You can use this method to release (approve) purchase orders. The POnumber and the release code must be passed on. The new release status and the new release indicator are returned.

    Notes

    The authorization object M_EINK_FRG is checked.


    Further Information

    For further information, refer to the MM Purchasing documentation.


    11-Dec-2005


    ResetRelease

    ResetRelease


    You can use this method to cancel (revoke) already effected releases ofpurchase orders. The PO number and the release code must be passed on.The release status and release indicator valid prior to the release are returned.

    Notes

    The authorization object M_EINK_FRG is checked.


    Further Information

    For further information, refer to the MM Purchasing documentation.


    11-Dec-2005