Below is the classes diagram of the main Workflow subsystem elements.
-
Design
- the object that stores the process design. -
Proc
- the executable process. Process attributes:-
design
- link to the design that was used to create the process. -
name
- the meaningful process name. The name is specified at the design stage. However, it can be set in the process editor screen as well. -
jbpmProcessKey
- the process key in the jBPM execution engine. It is generated automatically when deploying the process design. -
code
- the process code that can be referenced by software tools. Defaults tojbpmProcessKey
, but can be changed in the process editor screen. -
messagesPack
- the name of the messages pack that contains localized names of states and transitions, various descriptions and process messages. This package is generated automatically at the process design deployment stage and is stored along with other process files in the appropriate subdirectory of the application configuration directory. -
roles
- list ofProcRole
type objects that define the roles of process participants.
-
-
ProcRole
- a process role. Objects of this type are created automatically when the process design is deployed, if it contains Assignment states, which assign tasks to users and halt the execution of the process until the user takes required actions. Initially,ProcRole
objects are not connected to any system users. However, you can assign a default holder for each role in the process editor screen. -
DefaultProcActor
- list of holders of a certain role; this list is defined at the process level. -
Card
- the process card. Generally, a particular domain entity is inherited from theCard
class to acquire the ability to move through the process.Card
attributes:-
description
- an optional text description of a given card instance that allows the user to distinguish between cards without loading attributes of a particular type that extends theCard
. For example, if the card represents a document, then it may be useful to enter the type, number, and date of this document in thedescription
field. -
proc
- the link to a process. -
roles
- the list of CardRole type objects that define the process role holders for a given card. -
jbpmProcessId
- the identifier of the process instance in the jBPM execution engine. -
state
- the name of the current process state. -
assignments
- the list ofAssignment
objects created in this process instance. -
attachments
- the list ofCardAttachment
type objects that enable associating the files downloaded during process execution with the card.
-
-
CardRole
- the entity that defines the process role holders for a given card.CardRole
attributes:-
card
- the card, for which the role holder is defined. -
procRole
- the process role. -
user
- the role holder of theUser
type (a system user).
-
-
CardAttachment
- an attachment that enables associating downloaded files with the card. Attributes (together with theAttachment
superclass):-
card
- the card. -
assignment
- if the file is uploaded during the assignment stage, this attribute contains a link to the correspondingAssignment
object. -
file
- the uploaded file of theFileDescriptor
type. -
name
- the attachment name. -
comment
- the comment on the attachment.
-
-
Assignment
- the assignment. Object of this type are created in the system when the process transitions to the Assignment state. In this state, the process pauses and waits for a command from the user or the system. When a finish command is received, thefinished
,finishedByUser
andoutcome
attributes are set for the assignment, and the process transitions to its next state. For one card and user, only one pending assignment can exist.Assignment
attributes include:-
card
- the card. -
user
- the system user the assignment has been issued for. -
proc
- the same process as the one set for the card at the moment of assignment creation. -
name
- the assignment name. -
description
- the assignment description. -
jbpmProcessId
- the identifier of a jBPM process instance corresponding to the card executed at the time of assignment creation. -
dueDate
- the assignment completion deadline. -
finished
- the actual time when the assignment has been completed. Isnull
until the assignment is completed. -
finishedByUser
- the user who has actually completed the assignment. Isnull
until the assignment is completed. -
outcome
- the name of the assignment state outcome that the user has selected. For example, the business process schema may contain an assignment node that asks the user to check whether a particular bug has been addressed, and to select one of the two options to continue the process: "OK" or "Not OK". If the user chooses "OK", then this string is written to theoutcome
field of the assignment, and vice versa. -
attachments
- the list ofCardAttchment
objects that were created for this assignment.
-