Service Provider for Business
Objects
The service provider for business objects can insert Business Objects from all SAP application systems into Records Management.
Business objects are instances of Business Object Types. Business object types are administrated in the Business Object Repository (BOR). The BOR is the cross-client repository for business object types, and contains their definition and implementation. It identifies and describes the available business object types, and uses a programming interface to provide information about their structure and metadata (key attributes, method names, method parameters, data types of a parameter, and so on). The runtime environment of the BOR, the Business Object Broker, is responsible for both the addressing and for calling the methods. The BOR contains business object types and organizational types (for example company code, sales organization) and more technically oriented object types (such as text, note, work item).
Prerequisites for inserting a business object in Records Management: The corresponding business object type has implemented the BOR methods IFSAP~ExistenceCheck and IFSAP~Display.
You enter values for the connection parameters in registry maintenance when you create an element type in the service provider for business objects.
Enter the full name of a business object type. An element type always relates to exactly one business object type. For an overview of all existing business object types, see the Business Object Browser (transaction SWO3). The business object types are organized by component.
Enter the full name of the logical system. The logical system identifies the system in which the business objects of the selected business object type are stored. To determine the name, ask your system administrator or create the logical system yourself. For more information, see Creating a Logical System and an RFC Destination.
If you want to integrate business objects from the local system, enter the value “NONE” for the connection parameter “Logical system“.
Subtype of the business object (optional)
Method Create (optional). Enter the full name of the method.
Method Find (optional). Enter the full name of the method. If you do not assign a value, the default method FIND is called.
Prerequisites for the methods:
· The selected business object type supports the method in question. Note: To view the methods of a business object type, use transaction SWO1.
· The methods can be called remotely. To test this in the IMG activity Create or Change Element Types, choose Check in the context menu for the service provider for business objects.
· The methods do not have any mandatory parameters.
· The methods are synchronous.
If the business object type does not support one of the methods specified above, but you need one of these methods, you have the following options:
· Use one of the two user exits (see the connection parameters FUNCT_PUBLISH_CUSTOM and FUNCT_EXECUTE_CUSTOM below)
· Enhance the business object type.
· Write a new business object type.
· Implement a new service provider for the business object, which supports the actual methods.
Function module for publishing activities (optional)
Implementing this function module provides a user exit that you can use if you want to enhance the standard activities, or add your own new activities. Enter the name of a function module. For an example implementation, see the function module MY_PUBLISH_CUSTOM_TEST.
The SP for business objects calls this function module when the context menu of activities is structured. The SP for business objects transfers a range of parameters that you can use as decision criteria in the function module when deciding which activities you want to offer. The function module returns a list of activities to the SP for business objects.
Import parameters of the function module:
· BOR_TYPE, TYPE STRING: Value of the connection parameter BOR_OBJECT_TYPE
· BOR_ID, TYPE STRING: For instance activities, SP POID of the business object, and for model nodes, initial.
· SUBTYPE, TYPE STRING: Value of the connection parameter SUBTYPE
· LOGICAL_SYSTEM, TYPE STRING: Value of the connection parameter LOGICAL_SYSTEM
· POID_STATE, TYPE STRING: For model activities “MODEL”, for instance activities, “INSTANZ”
· BOR_RMF_POID, TYPE SRM_LIST_POID: Name-value pair of the element type ID of the business object.
· AREA_POID, TYPE SRM_LIST_POID: Name-value pair of the current RMS ID
· BOR_SP_POID, TYPE SRM_LIST_POID: Name-value pair of the business object SP-POID
Export parameters of the function module:
· ACT_LIST, TYPE SRMACTBOR: Activity list as a table with the following fields: Activity ID, activity text; indicator whether the activity is a changing activity.
Function module for executing activities (optional)
Implementing this function module provides a user exit that you can use if you want to enhance the standard activities, or add your own new activities. Enter the name of a function module that is responsible for executing the previously published activities. For an example implementation, see the function module MY_EXECUTE_CUSTOM_TEST.
The SP for business objects calls this function module when the user calls an activity that has been published using the connection parameter FUNCT_PUBLISH_CUSTOM. The SP for business objects transfers a range of parameters to which you can assign values for executing the activity.
Import parameters of the function module:
· ACTIVITY_ID, TYPE SRMACTID: ID of the activity selected by the user
· BOR_TYPE, TYPE STRING: Value of the connection parameter BOR_OBJECT_TYPE
· BOR_ID, TYPE STRING: For instance activities, SP POID of the BOR object, and for model activities, initial.
· SUBTYPE, TYPE STRING: Value of the connection parameter SUBTYPE
· LOGICAL_SYSTEM, TYPE STRING: Value of the connection parameter LOGICAL_SYSTEM
· POID_STATE, TYPE STRING: For model activities “MODEL”, for instance activities, “INSTANZ”
· BOR_RMF_POID, TYPE SRM_LIST_POID: Name-value pair of the element type ID of the business object.
· AREA_POID, TYPE SRM_LIST_POID: Name-value pair of the current RMS ID
· BOR_SP_POID, TYPE SRM_LIST_POID: Name-value pair of the business object SP-POID
· ANCHOR, TYPE STRING: Value of the context attribute ANCHOR
The following import parameters refer to the record containing the business object for which the activity is to be executed. You need these parameters if you want to manipulate the record, for example, using a BAPI.
· SOURCE_SP_POID, TYPE SRM_LIST_POID: Name-value pair of the SP-POID parameter of the parent record.
· SOURCE_RMF_POID, TYPE SRM_LIST_POID: Name-value pair of the element type of the parent record.
Export parameters of the function module:
RETURN, TYPE BAPIRET2: Table with the following error messages.
Manipulation of the record using BAPIs can only be carried out when the record is not in processing.
RFC destination of the SAP system containing both the function modules that you have defined under FUNT_PUBLISH_CUSTOM and FUNC_EXECUTE_CUSTOM (optional).
A function module that copies the display of an archived business object.
If the business object type supports Document Relationship Browser (DRB), you can use function module DRB_OBJECT_DISPLAY.
A function module that finds where the business object is located.
If the business object type supports the DRB, and you want to activate access to archived objects of this object type by means of the organizer or the record, you can use function module DRB_ORIGIN_GET.

Archived business objects that are not connected to the Document Relationship Browser can be connected by implementing two function modules (these must have the same interface as DRB_OBJECT_DISPLAY and ARCHIVE_ORIGIN_GET). To do this, it has to be known how the storage location can be determined and how an archived object of this type can be displayed (usually described in the documentation about the relevant object type).
You do not enter values for the context parameters in registry maintenance, instead, this is optional when creating a record model, if you create a model node to which you have assigned an element type of the service provider for business objects.
A marker in the record model.
Enter a character string of your choice. This is a marker for the model nodes for business objects. This marker can be used when inserting business objects that are automatically entered in the record (for example, using a BAPI), to ensure that these business objects are inserted exactly in this position. To enable this, you must provide the character string to the BAPI.