After the scenario and the business object types and BAPIs used in it have been identified in the analysis, the BAPI signature is defined conceptionally within the design phase. The content should be described and the parameter names and the parameter structure must be defined.
Because BAPIs are business interfaces and not technical interfaces, when you develop a BAPI, you must fulfil the central requirement that:
In this phase you also have to decide from the BAPI's functions whether the BAPI is an instance method or a class method and whether it can be implemented as a
Standardized BAPI.
Instance methods refer to a specific instance of a business object type, for example, the BAPI SalesOrder.GetDetail retrieves the details of precisely one sales order. These methods are defined as instance-dependent in the BOR.
Class methods do not refer to a specific instance of a business object type, for example, the BAPI SalesOrder.GetList supplies a list of all the existing sales orders that match specific criteria. Standardized create methods also belong to class methods. A create method creates a new instance, for example, the BAPI SalesOrder.Create creates a new sales order in the R/3 System. These methods are defined as instance-independent in the BOR.
The specific instances of a business object type are identified by their key fields
, which is why they play a special role in this context. In the design phase, the keys of instance-dependent BAPIs should be identified as special parameters. For more details see Defining the Interface.When designing the BAPI signature you should keep in mind: