SAP Function BAPI_CTRACPSOBJECT_CREATE - PSCD: BAPI Create Contract Object

Parameter Reference Type Length Default Optional Text
CTRACCOUNT BAPI_CTRACPSOBJECT_ACCOUNT-CTRACCOUNT C 12 X BAPI Accounting Data: Contract Account
CTRACCOUNTTYPE BAPI_CTRACPSOBJECT_ACCOUNT-CTRACCOUNTTYPE C 2 X BAPI Accounting Data: Contract Account Category
PARTNER BAPI_CTRACPSOBJECT_ACCOUNT-PARTNER C 10 X BAPI Accounting Data: Business Partner
PSOBJECTACCOUNT BAPI_CTRACPSOBJECT_ACCOUNTI u 174 X BAPI Accounting Data: Contract Object
PSOBJECTDETAIL BAPI_CTRACPSOBJECT_DETAILI u 65 X BAPI Basic Data: Contract Object
PSOBJECTGUID BAPI_CTRACPSOBJECT_HEAD-PSOB_GUID C 32 X GUID of a Contract Object (CHAR Format)
PSOBJECTKEYEXT BAPI_CTRACPSOBJECT_HEAD-PSOBJECTKEY C 20 X BAPI Header Data: Contract Object Key (for External Numbering)
PSOBJECTTESTRUN BAPI_CTRACPSOBJECT_ADMIN-PSOBJECT_TESTRUN C 1 X Switch to Simulation Mode for Write BAPIs
PSOBJECTTYPE BAPI_CTRACPSOBJECT_HEAD-PSOBJECTTYPE C 4 X BAPI Header Data: Contract Object Type
XUPDATETASK BAPI_CTRACPSOBJECT_ADMIN-XUPDATETASK C 1 'X' X Datenbank-Update with Update Task

Parameter Reference Type Length Text
PSOBJECTACCOUNTOUT BAPI_CTRACPSOBJECT_ACCOUNT u 258 BAPI Accounting Data: Contract Object
PSOBJECTDETAILOUT BAPI_CTRACPSOBJECT_DETAIL u 109 BAPI Basic Data: Contract Object
PSOBJECTGUIDOUT BAPI_CTRACPSOBJECT_HEAD-PSOB_GUID C 32 GUID of a Contract Object (CHAR Format)
PSOBJECTKEY BAPI_CTRACPSOBJECT_HEAD-PSOBJECTKEY C 20 BAPI Header Data: Contract Object Key

Parameter Reference Length Optional Text
EXTENSIONIN BAPIPAREX 990 X Reference Structure for BAPI Parameter ExtensionOut
EXTENSIONOUT BAPIPAREX 990 X Reference Structure for BAPI Parameter ExtensionOut
PSOBJECTCORR BAPI_CTRACPSOBJECT_CORR 60 X BAPI Contract Object Correspondence Recipient
PSOBJECTEXMT BAPI_CTRACPSOBJECT_EXMT 45 X BAPI Contract Object Exception Period
PSOBJECTFACTS BAPI_CTRACPSOBJECT_FACTS 144 X BAPI Facts for Public Sector Contract Object
PSOBJECTLOCK BAPI_CTRACPSOBJECT_LOCK 129 X BAPI Contract Object Locks
RETURN BAPIRET2 548 Return Parameter

Functionality
You can use this method to create a contract object. One or multiplebusiness partners with contract account categories and contractaccounts can be assigned to the object, however, only one dependentrecord is generated for each method call. Blocks are optional.
You can also create multiple records with different correspondencerecipients and exception periods for correspondence dunning notices.
The 'Return' parameter can provide multiple message numbers at the sametime.

Example

Notes
This BAPI uses the concept for customer enhancements with 'BAPI TableExtensions', for which you can use the following structures:

  • BAPI_TE_DPSOB, BAPI_TE_DPSOB_BP_ACC

  • BAPI_TE_DPSOB, BAPI_TE_DPSOB_BP_ACC_COR

  • BAPI_TE_DPSOB_BP_ACC_COR

  • Customer enhancement P510 is called to check the data you transferredto the BAPI and to provide additional data if required.
    Customer enhancement P515 is called at the end of this method toprovide entries in the fields of the output extension.
    You can see an overview of customer enhancements in Customizing underFinancial accounting -> Contract accounts receivable and payable ->Program enhancements -> Define customer-specific function modules.

    Description
    This export parameter contains all the accounting data of a contractobject that you have created.
    INCLUDE BAPI_DATAELEMENT OBJECT DOKU ID TX

    Description
    This export parameter contains all the basic data of a contract objectthat you created.
    INCLUDE BAPI_DATAELEMENT OBJECT DOKU ID TX

    Value range
    The adminstrative data, for example, the creation date, is notdisplayed However, this data is stored in the database and can bedisplayed using the method readcontract object.

    Description
    This export parameter contains the CHAR32 GUID of the contract objectthat you have created or for which you have created more contractaccount data.

    Description
    This export parameter contains the key of a contract object that youhave created, for example, for which you have created additionalcontract account data.

    Description
    In this import parameter, enter the contract account
    of the contract object that is to be created.

    Description
    In this import parameter, enter the contract accountcategory of the contract object that is to be created.

    Description
    In this import parameter, enter the business partner of the contract object to be created.

    Description
    This import parameter contains the accounting data that is assigned toa contract object or that can be created or changed.
    INCLUDE BAPI_PARAM_PSOBJECTACCOUNT OBJECT DOKU ID TX

    Description
    This import parameter contains basic and administrative data that youcan assign to a contract account, create, or change.
    INCLUDE BAPI_DATAELEMENT OBJECT DOKU ID TX

    Description
    In this import parameter, you enter the GUID of a contract object thatshould be created with this GUID, and/or for which you want to entermore accounting data.

    Description
    You determine a contact object's key in this import parameter.
    Creating Basic Data
    This parameter's value entry is only transferred by the system if thecontract object type assigned to the contract object is marked forexternal number assignment. In the case of an internal numberassignment, the import parameter that you entered is not processed bythe system.The system determines the new contract object keyautomatically.
    Creating Accounting Data (Contract Account Data)
    If you want to create a new accounting data (contract acccount data)record for an existing contract object, the contract object to be addedis selected using the key number that you specified. According to theseprerequisites, this import parameter's value entry is not justprocessed with contract objects with externally assigned keys, but isalso processed by contract objects with internally assigned keys.

    Value range
    Determine an alphanumeric key for the contract object.

    Description
    This function module is used to check the instance specifications inwriting BAPIs before you actually create the object instance in thedatabase. The object instance is not really created, it is merelysimulated and the data is not updated (posted).
    The following values are possible:

    • ' ' (no value)

    • No value means that the update takes place. This is the standard settingand corresponds with the expectations of the initiator (person callingthe program).
      • 'X'

      • This value means that the BAPI is only called in simulation mode and noupdate occurs when it is called.

        Description
        You define the contract object type of a contract object that is to becreated in this import parameter. Define the attributes of a contractobject in contract object type, for example, anexternal or internal key.
        Contract object types are defined in Customizing.

        Description
        With this import parameter, you can define whether the new/changed datais written with an update module or directly in the database. In bothcases, you can reverse the database changes in the Logical Unit ofWork (LUW) still open by using a ROLLBACK WORK. The differenceis that with the update, task data to be written for system checks (forexample, when you create a document that should refer to a contractobject just created) will not be regarded until a COMMIT WORK hasoccurred.

        Default
        The parameter is set to 'X' by default which means an update module isused for the database updates.

        Description
        Additional data can be transferred to the method in this importparameter, for example when you create customer-specific data for acontract object using customer enhancement P510.

        Description
        In this export parameter, more data processed by the method can betransferred, for example, when you process your customer-specific datausing customer enhancement P515.
        Customer enhancement P515 is called at the end of the method inorder to fill the output extension.

        Description
        You can make changes to the additional or different contract object'scorrespondence recipient in this table.
        The system only includes control data for correspondence in thecontract contract object if the indicator correspondence parameteractive for contract
        object is set. Otherwise the control data of the assigned contractaccount is included.
        INCLUDE BAPI_DATAELEMENT OBJECT DOKU ID TX

        Description
        In this table, you can define the exception period for the inboundcorrespondence of a contract object.
        INCLUDE BAPI_DATAELEMENT OBJECT DOKU ID TX

        Description
        In this table you can set locks for the processing of assignedaccounting data in a contract object. The contract object has the locktype 51.
        Lock entries in the contract object are only included by the system ifthe indicator Payment Data Active for Contract Object orCorrespondence Parameter Active for Contract Object is set.Otherwise, the control data of the assigned contract account isincluded.
        INCLUDE BAPI_DATAELEMENT OBJECT DOKU ID TX

        Value range
        The following processes can be locked in a contract object:
        Type,,Process
        01,,Dunning
        02,,Incoming Payment
        03,,Outgoing Payment
        05,,Invoice Creation
        INCLUDE BAPI_TABLE OBJECT DOKU ID TX

1535552Improvement of BAPI_CTRACPSOBJECT_CREATE for facts handling