ProEd Manual
Chapter 8 : dialogs
The following dialogs are used in ProEd :
Project dialog
This dialog displays the high level properties of a project. This dialog is
accessed by:
-
Right click on background of project window and select "Properties" on popup
menu.
This dialog is divided in several tabs :
|
This tab displays the main properties of the project:
-
Name - the project name is required.
-
Description - this field can be used to enter a description of
the project.
-
Version - Displays the version of the project.
-
Author - The name of the author can be entered.
-
State of Publication - The status of this workflow can be
selected from the combo box. Values are "UNDER_REVISION", "RELEASED" and
"UNDER_TEST".
-
Role mapper - If an initiator mapper is to be defined, then this
combo box allows for the selection of the type of mapper, either "Ldap" or
"Custom". Ldap mappers are those defined in the "hero.initiatorMapper" package,
and "Custom" mappers are those defined in the "hero.mapper" package.
-
ClassName - If a role mapper type has been selected, then the
classname for the mapper must be entered here. In "connected" mode, the
available mapper classes will be displayed for easy selection.
|
Other tabs allows to display and manage all properties of the project
including attributes, participants, activities, transitions, iterations, and
hooks.
Activity dialog
This dialog displays the properties of basic activities. This dialog can
be accessed in the following ways:
-
Right click on the activity, then select the Properties menu.
-
Double click on the activity.
Like the process dialog, the activity dialog is divided into tabs :
|
This tab displays the main properties of the activity :
-
Name - the activity name must be unique.
-
Type - the activity type is displayed.
-
Start Mode - Select manual if a performer is required to start
this activity. Otherwise, select automatic for the system to start the activity
when it is ready. If automatic is selected, then at least one hook must be
defined for the activity.
-
Type of join - Select the join condition which determines
when the activity become ready in conjunction with input transitions.
-
Performer and Performer assignment - see
Performer assignment
-
Description - A description for the activity can be entered.
-
Deadline -see deadline dialog
|
Basic activities also allow the definition of
Attributes and Hooks.
Route activity dialog
This dialog displays the properties of route activities. This dialog can
be accessed in the following ways:
-
Right click on a route activity, then select the Properties menu.
-
Double click on a route activity.
-
Main menu "Process" -> Route activities.
|
This tab displays the main properties of the activity :
-
Name - the activity name must be unique.
-
Type - the activity type is displayed.
-
Start Mode - A route activity always has an automatic start mode.
-
Type of join - Select the join condition which determines
when the activity become ready in conjunction with input transitions.
-
Description - A description for the activity can be entered.
-
Deadline -see deadline dialog
|
Block activity dialog
This dialog displays the properties of block activities. A block
activity is a grouping of other activities contained in the process definition
file. This dialog can be accessed in the following ways:
-
Right click on the activity, then select the Properties menu.
-
Double click on a block activity.
-
Main menu "Process" -> Block activities
This dialog is divided into several tabs :
|
This tab displays the main properties of the activity :
-
Name - the activity name must be unique.
-
Type - the activity type is displayed.
-
Start Mode - A block activity always has an automatic start mode.
-
Type of join - Select the join condition which determines
when the activity become ready in conjunction with input transitions.
-
Description - A description for the activity can be entered.
-
Deadline -see deadline dialog
|
Block activities also allow the definition of
Attributes. In addition, tabs are available to view the activities,
transitions, iterations and hooks contained in the block.
Sub-process dialog
This dialog displays the properties of sub-Process activity. A subprocess is
actually a reference to another workflow definition (xpdl) file. This dialog
can be accessed in the following ways:
-
Right click on the activity, then select the Properties menu.
-
Double click on a sub-process activity.
The sub-process dialog is shown :
|
This tab displays the properties of the sub-process:
-
Process - This identifies the file containing the sub-process.
Use the "Open File" button to access the file chooser dialog to select the file
containing the desired sub-process.
-
Name - the activity name must be unique.
-
Type - the activity type is displayed.
-
Start Mode - A sub-process always has an automatic start mode.
-
Type of join - Select the join condition which determines
when the activity become ready in conjunction with input transitions.
-
Description - A description for the activity can be entered.
-
Deadline -see deadline dialog
|
Transition/iteration/condition dialogs
Transitions and iterations control flow sequence between 2 activities. See Define
a transition and Define an iteration
to define the link between 2 activities. Then the properties of the transition
or iteration can be defined as described below. These dialogs can be accessed
in the following ways:
-
Right click on the transition or iteration, then select the Properties
menu.
-
Double click on the transition or iteration.
The transition dialog and iteration dialog
have a similar structure as shown:
|
Transitions and Iterations have the following properties:
-
Name - The name must be unique. A default is
generated which is the source activity name and the destination activity name
separated by a "_". This can be changed as desired.
-
Source - The source activity name is displayed.
-
Target - The target activity name is displayed.
-
Description - A description of the transition or iteration can
be entered.
-
Condition - This panel displays the rules to be used for the
transition or iteration. The condition panel is described below.
|
The Condition panel displays the current set of rules for the
transition or iteration. This panel is present in the dialogs described above,
as well as in a free standing dialog as shown below. This panel is accessed in
the following ways:
-
Right click on the transition or iteration and select "Add/Update condition".
This displays the free standing dialog shown below.
-
Right click on the transition or iteration, then select the Properties
menu. The condition panel is at the bottom of the dialog.
-
Double click on the transition or iteration. The condition panel is at the
bottom of the dialog.
Columns in the condition dialog can be resized by selecting the column divider
in the header, and dragging either left or right. The resized column positions
are remembered as long as ProEd is not terminated.
The condition panel is shown below:
|
Each row in the table represents a rule. Multiple rules are logically combined
using the Operator column. The columns are as follows:
-
Op - This column allows the selection of either "AND" or
"OR" to logically combine multiple rules.
-
"(" - Multiple parenthesis levels can be used to build
complex conditions.
-
Attribute - This column will display a drop down list of all
attributes visible to the associated source activity. Select the attribute
desired for the rule.
-
Comp - Select either "=" or "!=" comparison for the
rule.
-
Value - Select or enter the desired comparison value. If the
selected attribute for this rule is an enumeration type, then the list of valid
enumeration values is displayed in this column.
-
")" - Same as above.
|
To change the value of a cell in the condition table, click on the desired cell and a text entry or
a combo box will appear that will allow the appropriate value to be entered or selected.
Attribute dialog
The attribute dialog is used to add a new attribute or edit an existing
attribute. Global attributes are defined at the process level.
Otherwise, attributes are defined at the activity level. This dialog can be
accessed in the following ways:
-
From Project Properties "Attributes" tab, add or edit button
-
From Activity Properties "Attributes" tab , add or edit button
An attribute can be one of three types: string, static enumeration or dynamic enumeration. The
content of the dialog is customized based on the attribute type selected.
Activity level attributes can be propagated to subsequent activities. Global
attributes are always accessible to all activities.

|
The attribute dialog has the following elements:
-
Name - Each attribute must be given a unique name.
The name may not contain spaces or '$$' (two dollar signs) or '||' (two pipe characters)
-
Description - Additional descriptive text can be associated
with the attribute.
-
Propagation - For activity level attributes, this property
determines if the attribute is available to "downstream" activities.
-
Type - The attribute type can be String, Static Enumeration, or
Dynamic Enumeration.
-
Initial Value Textbox - An initial value can be
specified.
|

|
In addition to the standard elements described above, if the attribute type is
static or dynamic enumeration, then the dialog contains the following additional elements.
-
Enumeration list - This list displays the current values of
the enumeration.
-
Add button - Press the button to add a new enumeration value
using the Enumeration dialog.
-
Edit button - To change an enumeration value, select the value
in the enumeration list and press the edit button to display the enumeration
dialog.
-
Delete button - Select an enumeration in the list and press
the delete button to delete it.
-
Initial Value Combobox - For enumerations, this combobox is
filled with the values defined for the enumeration. Select the desired default
value.
|
Participant dialog
A workflow process must define the participants that are used withing it. These
participants can then be added as performers of the various activities of the
process. A participant may be either a specific user, or a logical group
identifier, in which case, a runtime mapper must be specified to select an
individual from the group. The participant dialog is accessed in the following
ways:
-
Main menu, process -> participants, then select "Add", or "Edit" button.
-
Right click on graph background, select "Properties", then select
"participants" tab, and "Add" or "Edit" button.
-
Right click on activity, select "Properties", then select "New Participant"
button.
The participant dialog is shown:
|
This dialog allows for the selecting of an "Existing" participant, definition of
a "New" participant, and definition of a optional mapper to be used. These 3
panels are described seperately.
Select from list of existing participants
This panel is enabled in connected mode, and allows for the selection of
existing participants as defined in the user database. The panel contains the
following fields:
-
LDAP Search - If the user database is configured as LDAP, then
this button allows the LDAP user database to be searched. When the search
criteria is entered into the Ldap search dialog,
Then the participant list is filled with the LDAP search results.
-
Filter
- This drop down list allows for the selection of the type of users to display.
-
Participant List - The results of the search are displayed in
this list and the desired user must be selected by clicking on it.
Define new participant
The middle panel allows for the definition of a new participant. This panel
contains the following fields:
-
Name - Enter the name fo the new participant.
-
Type
- Select the radio button for the desired type.
-
Description - A description of the participant can be
entered.
Select/define mapper
If the participant type selected is either "role" or Organizational unit", then
a runtime mapper must be supplied. This panel contains the following fields:
-
Type- Select the desired type of mapper. This can be
either "LDAP", "Properties", or "Custom".
-
Classname - The mapper classname must be entered. In connected
mode, the list of deployed mappers of the selected type is displayed for easy
selection.
|
Hook dialog
The hook dialog allows for the definition/selection of a hook program to be used
for a process or activity. This dialog is accessed from the "add" or "edit"
button as described in Define Hooks. A hook
is a user written program which implements specific interfaces and must be
deployed on the server. The hook program has access to the process/activity
data as well as other server side functions through a defined API.
The hook dialog is shown:

|
The hook dialog contains the following elements:
-
onReady
- This type of hook is called when an activity becomes ready. It
would be useful to send information to the user responsible to execute it the
activity.
-
onTerminate
- This type of hook is called just after the activity has terminated.
-
onTerminate (rollback)
- This type of hook is called just before the activity terminates.
-
onCancel
- This type of hook is called before cancelling an activity.
-
onStart
- This type of hook is called just before the activity starts.
-
onInstantiate
- This type of hook is called when the process is instantiated.
-
onTerminate
- This type of hook is called when the process is terminated.
-
Hook class name combobox - In connected mode, this combobox is
filled with the deployed hooks of the selected type. In offline mode, the
desired classname must be entered by the user.
The radio buttons for the hook type are enabled/disabled based on if the hook is
for a process or activity, as well as the activity start mode.
|
Action dialog
The action dialog allows for the selection/configuration of an action class to be used
for a process or activity. This dialog is accessed from the "add" or "edit"
button as described in Define Actions. An action class
is a simple user generated Java class which is deployed on the server and performs some useful function.
ProEd creates a HookScript entry in the xpdl that it generates.
This is sometimes referred to as an InterHook.
This HookScript is sort of a wrapper that invokes the desired functionality
of the specified action class, passing it information form the activity and
passing back return values.
It is created from a user configurable template and is based on the
activity context, the action class, and the settings selected in the
Add Action dialog.
In addition, there is a user configurable properties file,
that is associated with each action class, that provides additional
information to ProEd. This allows it to enhance the user interface by
providing such things as meaningful parameter names, parameter descriptions,
and predefined lists of parameter value options.
Note that this dialog interacts heavily with the server to obtain the
various parameters and options that it presents. Therefore, unlike the hook dialog,
it can only be used effectively while in the connected mode.
The action dialog is shown:

|
The action dialog contains the following elements:
- Event
- selects the event that triggers the action.
- Type
- selects the action type.
This is a general category classification which allows
similar actions to be grouped together.
- Action
- selects the particular action. This corresponds to a Java class
that implements the functionality of the action (the action class).
It contains one or more functions that may be called by an action event,
however a particular action event may call only one function in one action class.
- Action Parameters
- The items in this box specify how this action event will access
the functionality in the action class.
- Function
- selects the action class function that will be called.
- Parameters list
- the input and output parameters of the selected function.
- Radio buttons
- select the value type that will be applied to the parameter
that is selected in the parameter list.
|
The Event combo box will contain one or more of the following events,
dependent on the context of the action:
- onReady
- The action is called when an activity becomes ready. It
would be useful to send information to the user responsible to execute it the
activity.
-
onTerminate
- The action is called just after the activity has terminated.
-
onTerminate (rollback)
- The action is called just before the activity terminates.
-
onCancel
- The action is called before cancelling an activity.
-
onStart
- The action is called just before the activity starts.
-
onInstantiate
- The action is called when the process is instantiated.
-
onTerminate
- The action is called when the process is terminated.
Parameter list:
If the function has a return value, it will be listed first,
with a name of "Return" (in English). The return name will be localized
to the appropriate text depending on the language selected.
The fields within an entry in the list are separated by colons ( : )
-
The first entry is the parameter name.
If a more specific parameter name is not specified in the
properties file associated with the action class,
the parameter names will default to p1,p2,…
-
The second entry is the parameter type. (String, int, float, …)
-
The third entry is the value type.
This describes what kind of value is assigned to the parameter.
It will be one of:
A Return parameter can only have the attribute type.
-
The fourth entry is the value. For a Return parameter,
this is the name of the attribute that the return value will be assigned to.
For an input parameter this will be:
-
Blank if the value type is null
-
The actual value that will be used for the parameter
if the value type is fixed
-
The attribute name from which the parameter value will
be taken if the value type is attribute
-
The fifth entry is the parameter description.
This field will contain an entry only if a description for
the parameter is present in the properties file associated with
the action class.
Radio buttons:
-
Null parameter value causes the input parameter
to be assigned a value of null.
-
Fixed parameter value causes the input parameter to
be assigned a specific value. This value is specified in the box to the
right of the radio button. Depending on the optional value option specification
in the properties file associated with the action class,
this box may be either a simple text box, a combo box from which
only the specified items may be selected, or a combo box which allows the user
to enter a new value as well as select from the list. Note: when typing in new
values into a combo box which allows this, the new value is NOT entered into the
parameter list until the user presses the [Enter] key while the cursor is in the
combo box.
-
Attribute parameter value causes the input parameter value
to be taken form an attribute. It is also used to specify the attribute to which
a function return value will be assigned. The attribute that is used is selected
from the combo box to the right of the radio button, which contains all the attributes
available to the activity.
Deadline dialog
A deadline is a event that can occur at a specific time, or after a specific
elapsed time. Deadlines can be associated with activities and subprocesses.
This dialog is accessed from the "add" or "edit" button of the Activity
properties dialog.
The deadline dialog is shown:
|
The deadline dialog has the following fields:
-
Duration - This radio button means that the deadline is for
the specified elapsed time entered in the "Days" and "Hours" boxes.
-
Date - This radio button means that the deadline is for a
specific data and time. The "Calendar" button can be used to select the date
using the dialog shown at the right.
-
Exception - A java hook class name must be entered. If
Connected mode is enabled, then the list of available hooks is displayed for
easy selection.
|
|
Logon dialog
A number of ProEd features make use of data retrieved form a remote server.
In order to obtain this data, ProEd must be operating in the connected mode.
The Logon dialog allows the user to logon to the remote server and enter the connected mode.
The Logon dialog is shown :
|
The values shown are the default for a JOnAS server located on the same machine as Eclipse.
You will need to obtain the proper values for your particular case from the administrator of the
server to which you are trying to connect.
You must also enter a valid User name and Password.
Selecting OK will logon to the remote server, and will display a message indicating whether the logon succeeded.
|
Ldap search dialog
If the user database is stored in LDAP, and if ProEd is in connected mode, then
the Participant dialog
enables the "Ldap Search" button to allow searching of the LDAP data.
The LDAP search dialog is shown :
|
The LDAP search dialog contains the following fields:
-
Attribute Name - Select the type of LDAP attribute to search.
-
Search Operation - Select the search operation.
-
Value - Enter a value for the search.
When the search criteria is entered, select the OK button. This causes the
search to be done and the results are displayed in the
Participant dialog.
|
Prev |
|
|
Chapter 7 : Participant view |
|
Chapter 9 : Internationalization
|