Building a User Interface

There is more than one way to build a user interface with Oracle BPM. This section outlines how to build a user interface using a BPM Object with BPM Object Presentations. The presentations are called in turn from a screenflow.

This is a standard Oracle BPM approach to user interaction, and you should be familiar with it even if you will use other methods, such as JSP pages.

  1. Define the information which should be present in the user interface, including both the data the user will see and the data the user will input. You should have a unique name for each data element and know what data type best represents it.
    Consider the following tips:
    • The best data type for a given data element may not always be obvious. For example, it's easy to see that you must use a String data type for a name field, but do you want to use a number for the postal code? What happens if the process will be used in countries where postal codes can include letters?
    • If you will receive or send data to an external application or service, some data type decisions have already been made for you. You can follow them precisely or you may elect to use a different type within your process and convert where data exchange requires it.
  2. Create a BPM Object with attributes for the data you defined in the first step.

    • If you need to work with tabular data, such as a list of items on an invoice, you can use groups. You do not need to explicitly represent each item (item1, item2, item3, and so forth.). Instead, you should create a group such as items[].
    • For strings, you should set a maximum length even though this is optional. The Presentation Wizard will later use this maximum length to determine whether to use a one-line or multiple-line text box when you create the presentation. The default threshold is 20. You can change this value, called the Maximum Column Count, in the BPM Preferences dialog box, in the Presentation Preferences > Text page.
    • Some information may be derived mathematically from other data. Such data should not be stored. For instance, the total value on an invoice is a sum of the other invoice values. You should implement such data elements as virtual attributes.
  3. Create one or more presentations for the BPM Object. Design each presentation as a function of a particular task in your process. In some cases, you will be able to use the same presentation from different activities. As a general rule, each presentation should show or allow input of the data required for the activity it is designed for, and no more.
  4. Create a screenflow with an interactive component call activity (Interactive Component Call icon
				). The main task of this activity should be of implementation type BPM Object Interactive Call. Choose the Use BPM Object Presentation option, and specify the name of the presentation you want to use.
  5. Use the screenflow created in step 4 from an interactive activity in your process design.