First of all, it is important to identify the object type which is used in the scenario.
You have already familiarized yourself with the process flow of the scenario and discovered the application functionality that can be used. To find this information, see Tutorial: Creating Events via Message Control.
You have seen that in the scenario which is set up in this tutorial, a (specific) object with the object type sales order is looked at and edited.
In the Business Object Repository of the SAP System, you will find the object type with the identifying name BUS2032 and the short text sales order under the business application component Sales and Distribution ® Sales ® Sales order.
Carry out the following steps to look at the object type BUS2032.
1. Now branch to the Workflow area menu SAP Business Workflow (Development) (Transaction SWLD, Menu: Tools ® Business Engineering ® Business Workflow ® Development)
The area menu SAP Business Workflow (Development) is the starting point for all activities that you will perform in the course of this tutorial.
2. Then choose Definition tools ® Business Object Builder.
This takes you to the screen Change Business Object Types.
3. Search for the object type BUS2032 via the component hierarchy (see above).
By double-clicking on the entry BUS2032 shown in green, you can branch to the object type definition.
You are now in the screen Display Object Type BUS2032.
Familiarize yourself with the object type definition.
The plus sign in the folder symbol in front of one of the entries Key fields, Attributes, Methods or Events shows that these elements are available and defined for the object type definition.
Double-click in each case on the folder symbol to display an overview of the available elements!
The key field of the object type BUS2032 is SalesDocument (sales document) and refers to the table field VBAK-VBELN, which contains the number of a sales document. This key field uniquely identifies an object with the type BUS2032 and allows its attributes to be accessed for reading.
You can see this detailed information on the key field by double-clicking on the entry CustomerOrder.SalesDocument.
The definition of the object type BUS2032 as supplied by SAP is insufficient for use in the scenario, meaning that the object type must be extended.
In one of the following chapters, you will learn how changes to the material master data are broadcast to the entire system using an event.
All events which are to be used must be defined beforehand as elements of "your" object type. It is therefore necessary to define an appropriate event for the object type.
Since no changes are allowed to be made directly to the object type BUS2032 provided by SAP, first create a customer-specific object type as a sub-type of this object type. This sub-type inherits all attributes and methods of its super type.
Create a new object type ZXX_2032as a sub-type of the object type BUS2032. Enter your initials for XX. Carry out the following steps to create the sub-type:
1. First find the object type BUS2032 in the Business Object Repository. To do this, go back to the screen Change Business Object Types.
Position the cursor on the object type BUS2032 and select Object type ® Create. The dialog box Create object typeappears.
2. Create a new object type under the name ZXX_2032 and enter a short text and description.
Also enter ZXX_2032 as the name of the program, which will contain the additional or changed implementation of the object type, and enter Z as the code letter of the application.
3. Save your entries (as Local object).
You are now in the entry screen Change Object Type ZXX_2032 where you can maintain your newly created object.
Make sure that this object type has inherited all the methods and attributes of its super type BUS2032. You can recognize inherited elements in that they are green.
The creation of the sales document with a delivery block is to be reported by an event with the identifying name DeliveryBlockSet.
This event can only be generated if it is defined for the object type. This is not yet the case.
1. To create a new event, position the cursor on the entry Events (blue background) on the initial screen for object type maintenance (Change object type ZXX_2032), and choose Edit ® Create.
2. Enter the identifying name DeliveryBlockSet as the event.
Describe the meaning of the event as clearly as possible using the Name and short description. Enter "Delivery block set", for example.
So far, you have "only" described that the event DeliveryBlockSet is available for the object type ZXX_2032 in the object type definition. You must ensure that the event is actually created. This is described in one of the following chapters.
To activate the object type, select Object type ® Generate.
Go back to the initial screen of the Business Object Repository. Position the cursor on "your" object type and select Object type ® Release ®Release.
So that you can work through this tutorial with a number of different users at the same time and in the same system, it has been designed so that you can start working with the object type ZXX_2032, that you have just created as a subtype of the object type BUS2032. This procedure is particularly appropriate for training situations.
For extensions to object types and their use in productive workflow scenarios, SAP recommends a slightly modified procedure, which uses the functionality of delegation in the Business Object Repository.
For further information, please refer to Extending and Adapting Object Types. However, please note that this tutorial does not use the functionality described there.
You are now familiar with the Business Object Repository. You have created a sub-type ZXX_2032 for the object type BUS2032 and have defined an event for it.
For further information on defining object type, please refer to the SAP Business Workflow Documentation under Maintaining Object Types.