K2 BLACKPEARL PRODUCT DOCUMENTATION: USER GUIDE
Reference - Workspace - Understanding My Worklist

Understanding My Worklist

To understand the functioning of the K2 Worklist, one has to understand the process designed in K2 for Visual Studio, K2 Studio or K2 Process Designer. Below is an explanation of a few concepts that will help you better understand the functioning of the K2 Worklist in conjunction with the process designed.

Process Design Concepts

Destination

Destination is an abstract definition for a User, Role or a Group.

Destination Set

If there is more than one destination set, the activity plan is followed unless there is a destination set rule. For example, if there is no destination set rule, all destination sets are treated as a single destination set. If there is a destination set rule, the destination set that evaluates to True according to the rule is the destination set used for the activity plan.

Activity Instance

Activity Instance is an instance based on an Activity Definition. Many instances can exist for an Activity. Each instance contains unique data and/or configuration. An Activity Instance is created when a certain path is followed in the process. The instance is created by a Line Instance and only when the Line Rule for that instance has evaluated to true. The Activity Instance is responsible for the Preceding Rule(Should the Activity Instance start-true/false), Start Rule(When should the Activity Instance start- datetime) and the Destination Rule(Plan option, Slot configuration, Keep In Sync settings, resolving configuration and the actual Destinations that will be used. This acts as the definition for an Activity Instance Destination). The Activity Instance will hold a collection of all the Activity Instance Destinations created.

Slots and Activity Instances 

Slots and Activity instances are two different concepts. Activity Instance is a unique copy of the definition that contains runtime data. Activity instances are created via line instances. A line instance is created for every route the process follows and when the Line Rule is true, the Activity instance is created  in the direction the line flows.

The following forms part of the Activity Instance:
Preceding Rule - Determines whether an activity instance should be created
Start Rule - Determines when the activity instance should start to execute
Destination Rule - Includes the Plan option, Slot configuration, Keep In Sync settings, resolving configuration and the actual Destinations that will be used. A destination can be a Role,User or a Group. This acts as the definition for an Activity Instance Destination. The Activity Instance will hold a collection of all the Activity Instance Destinations created.

Activity Instance Destination

Activity Instance Destination is a container that holds the instances of the events. Each Activity Instance Destination has one serial number. This serial number is used for Client, IPC and Server events. The number of Activity Instance Destinations created will depend on settings configured in the destination rule. Each Activity Instance Destination contains a list of Destinations it is responsible for, the amount of Slots available and a copy of the Data/Xml Fields that will be unique for the Activity Instance Destination. The Activity Instance Destination is also responsible for executing the Succeeding Rule. That’s why the Succeeding Rule will be executed after every Activity Instance Destination is completed. If the Succeeding Rule is true, all other active Activity Instance Destinations will be expired. All event instances in the Activity Instance Destination will be executed only once. Each Activity Instance Destination will only create one Event Instance for every Event as per definition.


The Plan Just Once option will only create one Activity Instance Destination.
The Plan per Destination option will create an Activity Instance Destination for every Destination.
The Plan per slot option will create Activity Instance Destinations and use the number of slots as a counter.
Each Activity Instance Destination contains a slots collection and a destinations collection. Each Activity Instance Destination contains a copy of its own data and XML fields. Each slot that is completed also contains a copy of its own data and XML field.

Event Instance

Event Instance, is an instance created from an Event Definition. The event Instance is contained by the Activity Instance Destination. The event Instance is responsible for the Event Succeeding Rule. The Event Succeeding Rule determines if the event should complete. Using this in a Client Event is most beneficial. The succeeding rule will be executed every time a slot is completed for this event instance.

Line Instance

Line Instance is an instance of a Line definition. There can be more than one instance for a Line definition. Each instance contains unique data or configuration based on the definition of the Line.

Keeping the above in mind, the following are examples of what will be created as soon as an instance of the process is started: 

Options Selected
Plan Just Once Create a slot for each destination 3 Destinations

The activity instance will contain 1 Activity Instance Destination and 3 slots as the option create slot per destination was configured. This means that one serial number exists for all Destinations, the one Activity Instance Destination has 3 slots and all Destinations configured in the destination rule will be added to the Destinations collection of the Activity Instance Destination. When a task item is delegated, the user gets added to the Destinations collection of that Activity Instance Destination. The slots count remains the same. When a task item is redirected, the redirected user is added to the Destinations collection of the Activity Instance Destination and the user who redirected the task is removed from the Destination collection.

Options Selected
Plan per destination Create a slot for each destination 2 Destinations

The activity instance will contain 2 Activity Instance Destinations and 2 slots as the option create slot per destination was configured. This means that a serial number exists for every Activity Instance Destination , each Activity Instance Destination has one slot and contains one Destination in the Destinations collection of the Activity Instance Destination. When a task item is delegated, the user gets added to the Destinations collection of that Activity Instance Destination. The slots count remains the same. When a task is redirected, the redirected user is added to the Destinations collection of the Activity Instance Destination and the user who redirected the task is removed from the Destination collection.

Options Selected
Plan per slot 2 Slots No destinations configured, but it works the same as Plan per destination


The activity instance will contain 2 Activity Instance Destinations, and 1 slot in each Activity Instance Destination. This means that a serial number exist for every Activity Instance Destination and each Activity Instance Destination has one slot and contains no Destinations in the Destinations collection of the Activity Instance Destination. This is only for server and IPC events that don’t need user interaction. 

Client Event Setting

Allow any user to complete the task is a necessary setting on the client event if tasks are to be actioned by users who are forwarded task notifications. However, delegated or redirected users automatically get rights to action the task. If this setting is not enabled, and the Worklist API is used to retrieve the serial number of a task, users not in the destination set receive an error when they try to open the task and the task remains Available to other users in the destination set.  Allow any user to complete the task ignores the instance rights set on the Event Actions. Tasks will not show on all users' worklists, but the rights are ignored when opening the task with a serial number, and any user will be able to execute any action. Global rights are still enforced.

Workflow Concepts

Destination User

 A user that is directly assigned a task or is a member of a Role, Group or SharePoint Group that is part of the destination set.

Task

This is a business user concept and is represented on a technical level as a Worklist Header. A serial number consists of the Process Instance ID and the Activity Instance Destination ID (8_10). Each task has a unique serial number. A serial number is owned by an Activity Instance Destination. In case of a Client Event, a Worklist Header is created, that identifies the Serial Number as a User Task.

A Group or a Role cannot respond to a task, only an individual user who may belong to a Group or Role.

Worklist Header

A Worklist Header is responsible for identifying a serial number as a user task item created by a client event. It stores the platform, serial number, slots available, total slots and the Data for the serial number which is better known as the Task item URL. This is basically what is visible on your worklist.

Slots

Action

An action is a business concept that represents a list of instructions for the Workflow server. This entails setting XML/data field values and performing one of the Server Tasks, like Update, Finish, Redirect, Release and Goto Activity. Security Rights are configured between Actions, Worklist Headers and Destinations. (User/Group or Role).  

Status

  

Role/Group/SharePoint Group

Delegate

Redirect

Out of Office (OOF)

Manager

Reports

See Also

 

 


K2 blackpearl Help 4.6.10 (4.12060.1690.0)