A BPM Object is a user-defined component that contains attributes, methods, and presentations.
A BPM Object can be used to encapsulate any type of information that the process requires. For example, It can be to input and store information that would be persisted in another type of data container, such as a database or an XML file.
| BPM Object Element | Description |
|---|---|
| Attributes | Attributes are data elements (like
variables), used to store data that define and describe the BPM Object.
Attributes can be defined as virtual, in which case they do not actually contain any data, but are instead implemented as a pair of methods for reading and writing. Virtual attributes are accessed like regular attributes. |
| Methods | Methods are like functions or subroutines
associated to the object. Youwrite methods in PBL, and can use them to access
or set BPM Object data indirectly. For example, you may want to obtain the sum
of several numeric attributes. In this case you can read each attribute from
the BPM Object and add them, or you can add a method to the BPM Object, called
for example
attributeSum, which will return the summed
value.
The resulting code is easier to maintain. For example, if you add a new attribute to the BPM Object which must also be summed, you can edit the attributeSum method to include the new attribute. By doing it this way, you avoid the need to track every piece of code which requires the sum of the attributes of the object. |
| Groups | Groups are objects made up of one or more
related attributes and stored in an array. Groups are designed to be used
wherever you require a list of items and each item has several attributes. For
example, in an invoice there can be several items, and each item has a
description, a quantity, and a price.
If you are a Java programmer, you can think of a group as being analogous to an inner class. |
| Presentations | BPM Object Presentations are essentially
forms which either show or allow input of BPM Object properties. A presentation
can show all or some of the properties of a BPM Object
Every BPM Object may contain one or more presentations. Each of the fields on the presentation are tied to one of the attributes. Presentations provide a simple way for end users to view or to input the attributes of the BPM Object. When a BPM Object is created, it is only a data container or non-presentable BPM Object until a presentation is added to it; then it becomes presentable. See User Interface Overviewfor more information about how BPM Object data is presented to end users. |

The BPM Object above shows methods, attributes, groups, and presentations. Most of these were added by the developer, while a few of the methods were created automatically based on the properties set when creating the different attributes. An example of an automatically generated method is the costCenterValidValues method. This method is created by setting a list of valid values to the costCenter attribute when defining it. This method returns an array containing all the values allowed for that attribute, which is used by presentations to display a drop-down list with the possible values of an attribute.