K2 BLACKPEARL PRODUCT DOCUMENTATION: USER GUIDE
K2 Roles

More information about defining Roles

Contextualized Assistance: Adding a Role using a SmartObject

K2 blackpearl supports the ability to create and consume Dynamic Roles as destinations in process design.

Users resolved at Design Time

A Role is a container for a list of users. The list of users can be provided in several ways.

  1. Users resolved at Design Time
    • From user browser
    • Fig. 1. Roles from user browser

  2. Users resolved at Runtime based on Role Resolution time (more on this later)
    • From SmartObject method return
    • From another Role
    • From a Security Group

      Fig. 2. Roles from SmartObjects

  3. The Role is defined in K2 Workspace Management tools
    • You can specify if the role is Dynamic here

Fig. 3. Roles in Workspace

Roles sit outside of process definitions, so it is not possible to use datafields here. It is possible to use datafield’s in the destination rule.

Role Resolution

When user values for a Role are not known at Design Time, they will be determined at runtime based on one of the three types of Role Resolution.

These are set on this screen.

Fig. 4. Destination Rule Options

Resolve all roles to User

  1. When the activity is planned
    • Runtime resolutions will happen when the Activity is Planned
    • For SmartObject (similar for nested groups and security groups)
      • Call SO Method (using any input parameters provided at design time)
      • Get list of Users returned
      • For each User
        1. determine if there is a Label by trying to resolve
        2. If not, append the default Label (set in k2 host server config file)
      • Assign rights for the users to the task item(s)

Create a slot for each role (Default)

  1. Marked as Role
  2. Assign rights to the Role
  3. Use poll interval, default is 10 minutes, it can be changed in management tools
    • Resolve users in the role at the interval
    • Assign rights for the users to the task item(s)
    • Every interval, repeat
  4. Scenario: once a day in SQL read a table that contains users in a role and cache them
  5. Scenario: We configure the Activity as Slot per Destination, if 10 people are in the Role, they will all be assigned a slot when the Activity is planned the first time. Then, every refresh interval of the role resolver, you might get a different set of users. The new users would then be assigned rights for the 10 tasks and users that are no longer in the role will have rights revoked.

Resolve roles dynamically

  1. Mark the Role as Dynamic
  2. Every time OpenWorklist is called by a user
    • Resolve all the users in all the roles that have been marked as Dynamic
    • Assign rights to the users to the task item(s)
    • Cache Time is configured at 3 seconds per role - this means that if 10 people call OpenWorklist within a 3 second window, the hit for resolving all roles will only be incurred for the first user. All the others will use the cache.
Cache time does not have management UI and must be configured in the database

Destination Rule

The Destination Rule dialog resolves Destination Users differently depending on how the Name field is populated.

Fig. 5. Destination Users

  1. If you type or drag something that resolves directly to a User, you're done, rights are assigned to users for task items.
  2. If you drag something that resolves to a role, you can decide how the role will resolve based on the Role Resolution options described previously. You will need to put the Destination Rule wizard into Advanced Mode to change the default options.

 

 


K2 blackpearl Help 4.6.11 (4.12060.1731.0)