Manage Workflows

From LongJump Support Wiki
Revision as of 23:34, 4 March 2011 by imported>Aeric (Text replace - 'Setup > Customize > ' to 'Designer > Data & Presentation > ')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Create a Workflow

To create or edit a workflow:

  1. Click Designer > Data & Presentation > Objects > {object}
  2. Click the Workflows tab
  3. Click the [New Workflow] button
  4. In the workflow designer area, use the [Add State], [Add Action], and [Add Decision Box] tools to build your processes
  5. In the Properties section, complete the following information:
    Title
    Title of the workflow
    Name
    Name of the workflow
    Learn more: About Workflow Titles and Names
    Enabled
    Enable or Disable the workflow
    Allow Subscriber to disable
    Defines the Subscriber's rights to enable or disable the workflow
    Default Data Policy
    The policy to be executed on each workflow state change unless an individual policy is defined for a state

About States, Actions, and Decision Boxes

States, Actions, and Decision Boxes are the building blocks used to create complex and powerful database processes.

A State indicates the status or condition of a task or request record. The state name can be any term that is meaningful to your business process. Examples of typical workflow States:

  • Submitted
  • Pending
  • Under Review
  • Approved
  • Approved with changes
  • Resubmitted
Considerations
  • Each State is owned by at least one team member
  • States can optionally be edited by the Record Owner
  • Workflow decision makers are authorized to take action on the task or request, and advance the workflow
  • Data Policies can be executed when a record arrives in this state
  • Complex processes may route to several team members for approval

Actions determine what happens to a task/request record when it moves from state to state. Example workflow Actions include:

  • Approved
  • Rejected
  • On Hold, Pending (another action)
  • Optionally, an action can be part of a Data Policy, for example:
  • Approve after 3 days
  • Send email (to another party), reject if not acknowledged within 5 days
  • Escalate to Decision Maker’s manager if no change in status after 2 days
Considerations
  • Actions move records between states
  • Actions move records to and from decision boxes
  • Actions can optionally include user notification
  • Complex filter criteria can be designed to define whether an action is taken on a record
  • Actions can be based on other actions taken by a Record Owner or Decision Maker (Users or Team Members who are authorized to take an action on a workflow)

Decision Boxes are nodes that transmit the same action to different states based on criteria. An example of a workflow Decision Box would be a box for the Approved action that sends the action to:

  • The manager if the expense authorization is less than $100
  • The director if the expense authorization is equal to or more than $100
Considerations
  • All actions entering and exiting a decision box will have the same name
  • Only one action can enter a decision box
  • A minimum of one action must exit a decision box
  • Actions exiting a decision box can only enter a state; they cannot enter another decision box

Create New States, Actions, and Decision Boxes

The workflow designer area provides an interactive click-and-drag/drag-and-drop interface to add new States, Actions, and Decision Boxes.

To add a State:

  1. Hover the cursor over the Add State tool to display a tooltip with instructions on how to use the tool
  2. Click and drag the State tool to the work area and drop it into place
  3. In the Workflow Dialog Box, enter the requested information

To add an Action:

The Action arrow connects two states or connects a state and a decision box.

To connect two states:

  1. Hover the cursor over the Add Action Tool to display a tooltip with instructions on how to use the tool
  2. Click and drag the Action Tool to the work area
  3. Hover over the first state and drop the tool (release the mouse button)
  4. Move the mouse and Hover over the second state
  5. Click the mouse button to connect the action arrow to the second state
  6. In the Workflow Dialog Box, enter the requested information

To connect a state to a decision box:

  1. Hover the cursor over the Add Action Tool to display a tooltip with instructions on how to use the tool
  2. Click and drag the Action Tool to the work area
  3. Hover over the state and drop the tool (release the mouse button)
  4. Move the mouse and Hover over the decision box
  5. Click the mouse button to connect the action arrow to the decision box
  6. In the Workflow Dialog Box, enter the requested information

To connect a decision box to a state:

  1. Hover the cursor over the Add Action Tool to display a tooltip with instructions on how to use the tool
  2. Click and drag the Action Tool to the work area
  3. Hover over the decision box and drop the tool (release the mouse button)
  4. Move the mouse and Hover over the state
  5. Click the mouse button to connect the action arrow to the state
  6. In the Workflow Dialog Box, enter the requested information

To add a Decision Box:

  1. Hover the cursor over the Add Decision Box tool to display a tooltip with instructions on how to use the tool
  2. Click and drag the Decision Box tool to the work area and drop it into place
  3. In the Workflow Dialog Box, enter the requested information

Workflow Dialog Boxes

A Workflow Dialog Box opens when any Action, Decision Box, or State (including Start State/End State) is created or selected for editing.

Edit an Intermediate State

An intermediate state is any state other than the Start or End state.

  1. Click the State icon in the work area
  2. In the Basic Information section, complete the following information:
    Title
    Title of the state
    Name
    Name of the state
    Learn more: About Workflow Titles and Names
  3. Optionally, click the checkbox to Allow the Record Owner to edit the record in this state
  4. In the Workflow Decision Maker(s) section, complete the following information:
    Workflow Decision Maker(s)
    Specify users who have permission rights to advance the workflow
    Choose from:
    • Specific User
    • Record Owner
    • Supervisor of Record Owner
    • Supervisor of Workflow Owner
    • Users with specific role in a team
    • User choice
    • Use a Function to determine Ownership
    Checkbox options
    Select whether the Workflow Decision Maker can do any of the following:
    • Send Email
    • Create Tasks
    • Allow Edits
  5. In the Execute Data Policy section, optionally, choose a Data Policy to execute when the record arrives in this state
  6. Click [Save]

Edit an Action

  1. Click the title in an Action arrow in the work area
  2. In the Basic Information section, complete the following information:
    Title
    Title of the action
    Name
    Name of the action
    Learn more: About Workflow Titles and Names
  3. In the Notifications section, optionally choose additional Users to Notify when this action is taken
  4. In the Criteria section, only shown for actions that move the record to a state, optionally create complex criteria to define whether an action is taken on a record
    Choose either Basic or Advanced and use the Criteria Builder to define:
    Actions are taken when this criteria evaluates to TRUE
  5. Click [Save]

Edit a Decision Box

  1. Click the Decision Box icon in the work area
  2. In the Basic Information section, complete the following information:
    Title
    Title of the decision box
    Name
    Name of the decision box
    Learn more: About Workflow Titles and Names

Edit the Start State

  1. Click the Start State icon in the work area
  2. In the Basic Information section, complete the following information:
    Title
    Title of the state
    Name
    Name of the state
    Learn more: About Workflow Titles and Names
  3. In the Workflow Initiator section, complete the following information:
    Workflow Initiator(s)
    Specify users who have permission rights to initiate the workflow
    Choose from: Specific User, All Users, Users with specific role in a team
  4. Click [Save]

Edit the End State

  1. Click the End State icon in the work area
  2. In the Basic Information section, complete the following information:
  3. Optionally, click the checkbox to Allow the Record Owner to edit the record in this state
  4. In the Execute Data Policy section, optionally, choose a Data Policy to execute when the record arrives in this state
  5. Click [Save]

About Workflow Titles and Names

In some workflow dialog boxes, the following options are available:

Title
Title of the workflow element
  • This title is displayed in the workflow
Name
Name of the element
  • This name is an internal name, used by developers in APIs
  • Name must contain only alphanumeric (a-z A-Z 0-9) and underscore (_) characters are allowed, no spaces

Workflow Processing by Email

This feature allows users to take action (such as approval or rejection of a request) by email, without requiring them to login to the platform user interface.

Prerequisite

Setting Up Workflow Processing by Email

To do workflow processing by email:

1. Add a Workflow.
2. Specify a decision-maker for each State.
3. Mark the "Send Email" checkbox for each decision maker.

When the workflow is activated, the decision maker in each State receives an email from "Company Name Workflow". The message contains important details related to the workflow.

To process the workflow:

4. Reply to the email message:
  • Include the desired Action in the first line of the email body.
  • The second line can include any comments related to this action.
  • The third line can contain the user ID or the user's full name.
    (This line is only processed if User Choice is specified as the the decision-maker for the next state. (The decision maker in the current state specifies who the decision-maker will be in the next state.)
  • Additional comments are ignored.

When the email reply is received, the record takes the action specified in the message.

Error Conditions

Invalid Action
If an invalid action is entered (or mistyped), the decision-maker will receive an email with the subject Invalid Action. Please enter valid action to process Workflow. The content of the email message will list the valid actions. To correct this action, Reply to the email message and select a valid action to update the workflow and move the record to the next state.
Lack of Workflow Owner in Next State
While processing the workflow, the platform also checks for the owner(s) of the next state of the workflow.
If the next state owner(s) are missing then user will get an email with subject Next State Workflow Owner(s) not Available. Please update the Workflow.
In this scenario, the workflow designer should edit the workflow to add owner(s) to the workflow before proceeding. After doing this they can reply to this email with proper action to move the workflow to the next state.

Templates in Workflows

When you automate a business process in a Workflow, you have the option to send email notifications based on state changes in the workflow.

The Templates option allows you to create personalized email messages that are sent automatically from the workflow. For example, a request is submitted for review, so an email notification is automatically sent to the requester.

If no templates are added to the workflow, the system default templates are used.

Each workflow can only have one Notification Template and one Global Workflow Template. A State-Specific Workflow Template can be used to override the Global Workflow Template for a specific state. Replies to the emails can also be used to trigger actions.

Create or Edit a Workflow Template

  1. Click Designer > Objects > {object}
  2. Click the Workflows tab
  3. Choose a workflow.
  4. Click the Notification Templates link.
  5. Choose an existing Template, or click the [New Template] button to add a new template
  6. Choose one of the following Template Types, then click [Next]:
    Notification Template
    Used to inform all record owners and additional users (specified in an action) of the state change
    Global Workflow Template
    Used to inform the workflow owners that an action from them is required
    State-Specific Workflow Template
    Used to inform the workflow owners that an action from them is required for a specific state (overrides Global Workflow Template)
  7. Compose the message template, completing the fields below.
    Template Information
    Template Type - Entered by default, based on your choice
    Template Title - Title of the template
    Description - Enter a description of the template
    Email Information
    Information in this section is used when Send Email is selected for a state:
    Subject - Enter a subject for the message
    Editor Type - Choose from HTML, Plain Text or WYSIWYG Editor
    Details - Provide the body of the message.
    Relay Feed Information
    Information in this section is used when Post a Feed is selected for a state:
    Feed Message - Enter the message to post
    Relay Feed Template - Enter the message to post
  8. Use the Template Variables to customize the message.
  9. Click [Save]

Template Variables in Workflows

Template variables can be used in both subject and body of a template. All the template variables related to the record are shown.

The Template Variables section provides a lookup to variables that will personalize the message.

In addition to the typical field-based template variables, these workflow-based variables are also available:

  • $workflow.id
  • $workflow.name
  • $workflow.title
  • $workflow.current_state - Name of current state
  • $workflow.previous_state - Name of previous state
  • $workflow.action_taken - Name of Action Taken
  • $workflow.available_actions_for_current_state - Names of available actions in current state
  • $workflow.current_state_title - Title (label) of current state
  • $workflow.previous_state_title - Title (label) of previous state
  • $workflow.action_title_taken - Title (label) of action taken
  • $workflow.available_action_titles_for_current_state - Titles (labels) of available actions in current state
  • $workflow.user_comments
  • $workflow.owner - Current record owner(s)
  • $workflow.history - History of workflow (a table)
  • $workflow.view_details_link - Link to view record details

Default Sample Templates

When you add a template, these sample templates are available for your use. Start with these samples, and customize your message to meet your needs.

Sample Notification Template

Subject: $record.name Workflow Has Been Updated
Hello,

The record $record.name has changed from 
    '$workflow.previous_state' state to the
    '$workflow.current_state' state.

Comments provided by previous workflow owner:
$workflow.user_comments

Current workflow owner(s): $workflow.owner.

Current workflow history:
$workflow.history

To view record details, click here:
$workflow.view_details_link


This is an automatically generated message. Please do not reply.

Sample Global State Template

Subject: Action required for $record.name
Dear $workflow.owner,

You are required to take action on the record $record.name

Comments provided by previous workflow owner:
$workflow.user_comments

To take action on this record, you can reply to this email 
directly with one of the following commands:
$workflow.available_actions_for_current_state

(Please keep the action as the first line and any 
comments within the second line)

Current workflow history:
$workflow.history

To view record details, click here:
$workflow.view_details_link

This is an automatically generated message. Any replies 
that do not have the proper actions will result in an error.

Best Practices

Updating or changing a workflow process can have unexpected results if data records have been added to the object and Workflow Status has changed. Instead, finalize and test workflows with test records to verify the workflow process, then delete test records before adding real data. If a workflow must be changed, create a new workflow that begins with the End State of the current workflow - this will allow all current records to enter the new workflow with the same workflow status

For Developers

Use Record Handling in the Java API to manage and support workflow processes.