Unit 11: Workflow

Unit 11: Workflow
1
Questions Covered
• What is workflow in Agiloft and how do we use the workflow editor?
• What is the main use for workflow?
• When do you use workflow rather than a rule?
• How do we use actions and conditions in a workflow?
2
What is Workflow in Agiloft?
•
In Agiloft, a workflow is a function that determines the states that a record passes through in its lifecycle,
and governs which paths are allowed between states. A workflow can include actions that run during state
transitions.
The workflow feature may or may not be used in a given implementation project. Our out-of-the-box
solution includes workflow, primarily for sending email notifications, on the Support Case and Helpdesk
Case tables.
•
Pictured here is the workflow for the Support
Case table in your Training Sample KB.
•
This graphical representation tells us that
a support case goes through up to eight
states in its lifecycle, including Open,
Assigned, Updated by Customer, and Closed.
3
The Workflow State Field
•
When workflow is set up for a table in Agiloft, it creates a field called Workflow State (wf_state). This field
appears on the Fields tab of the Table wizard, just like other types of fields.
•
The Workflow State field, often relabeled as Status, appears as a drop-down field on the record layout.
•
When editing a record, which choices appear in the drop-down for the state field depends on which
transitions are allowed in the workflow editor.
Workflow editor refers to the drag-and-drop interface found on the Workflow tab of any table wizard.
•
The workflow editor is used to define the allowed state values for records in the table, such as In Progress,
Assigned, or Completed, as well as the available transitions from one state to another.

For example, suppose a support case can move from the Assigned state to Canceled, but not from
Completed to Canceled.
•
A transition, represented by an arrow between state boxes in the workflow editor, permits users of the
system to move a record from one state to another.
•
Last, workflows can include actions that are executed between particular state values.

Example: Run an email action notifying the customer when the support case state changes from In
Progress to Completed.
4
Practice
Accessing the Workflow Editor
• Later in this unit we will add a workflow to our new Tasks table. For
now, let’s view an existing workflow in the Helpdesk Cases table to see
how it works.
• Click Setup Helpdesk Cases in the left pane and navigate to the
Workflow tab.
Previous Agiloft releases use Java to run the workflow editor. If you
are working on an old release you need to install Java and use a
supported browser, such as Firefox or Internet Explorer.
5
About the Workflow Editor
• The Workflow State (Status) field appears as a drop-down field on a layout, but the
available choices depend on which transitions are allowed in the workflow editor.
• The next slide shows the workflow editor for the Helpdesk Cases table in your
training KB (Setup Helpdesk Cases > Workflow).
• Carets (arrows) above a state indicate that a record can be created with this value.
• Carets below a state indicate that a record can be deleted with this value.
• A circled A
indicates that an action is defined for the transition between states.
• A circled G indicates there are guards defined for the state transition.
• We are already familiar with actions from earlier units, and a guard is a condition
that must be satisfied to allow the transition, similar to a validation action.

We’ll discuss actions and guards individually and in more detail later in this unit.
6
Workflow Editor Example
• Pictured below is the workflow for the Helpdesk Cases table. In your KB, try
dragging and dropping the states to rearrange them, then Cancel to close the
table wizard.
Action:
A circled A on a creatable (or deletable) arrow
means an action runs when the record is first
created (or when the record is deleted).
Action:
A circled A on a transition arrow
indicates an action runs during that state
change.
Creatable: The caret
icon above a state box
indicates that records
can be created in that
state.
Transition:
A transition
arrow between
states allows the
record to move
from one status
to the next.
Deletable: The caret
icon below a state box
indicates that records
can be deleted in that
state.
7
User Interaction with Workflow
• Workflow actions can be displayed on-screen while the record is edited so staff users
know exactly what actions will occur, and may have the option to override them,
when making a state change.
• The transparency for staff users is one benefit of the workflow feature. It displays a
set of checkboxes in the record form listing the actions that will be triggered by the
state change.
• To see this for yourself, edit a Helpdesk Case with a Status of Open. Change the
Status to Closed and note how the action
Send Closing email to Customer appears
on the screen.
8
Practice
Let’s Practice with Workflow
• In the next slides, we will add a workflow to the Tasks table we
created. We will use this workflow as an alternative to the existing
Status choice field in our Tasks table.
• To access the workflow editor, click Setup Tasks in the left pane and
navigate to the Workflow tab.
9
Practice
Create a Workflow
• Let’s begin by adding the same values we created for the Status choice
field in our Tasks table.
From here on, we will refer to the Workflow State field as a Status.
• In the text box, enter the following values, separated by commas:
Assigned, In Progress, Done, Canceled, Pending Creator Feedback.
• Click Add States to add the states to the workflow editor (or press Enter).
10
Practice
Workflow Transitions
• Agiloft automatically adds transition arrows between the statuses you
just entered.
• To delete unnecessary transitions, click the transition arrow to select it
and then click Delete, or press the delete key on your keyboard.
• Delete all the state transitions now and we will add back just the ones
we want on the next slide.
11
Practice
Adding Transitions
• Now let’s re-arrange our statuses and add new transitions to the workflow.
• Start by clicking the edge of the Assigned state box and drag the arrow over to
the Canceled status to create a transition from Assigned to Canceled. Repeat the
process to add the rest of the transitions,
as pictured here.
• The available transitions are:

From Assigned to: In Progress; Canceled;
Pending Creator Feedback

From In Progress to: Canceled; Done

From Pending Creator Feedback to:
Canceled, Assigned, In Progress, Done

No transitions from Canceled or Done.
12
Practice
Update Workflow States
• If the Assigned status is not identified as
the Default status, click and highlight the
“Assigned” status and check the Default
checkbox.
Double-clicking one of the state boxes
opens the Edit dialog where you can
change the state name, make the record
Creatable or Deletable in that state, and
add a Description.
• Double-click the Done state box and select
the Creatable checkbox.
13
Practice
Saving Workflow Changes
• Now the diagram looks suitable, but is not yet saved.
• Click Next to navigate to the WF Overrides tab.
• Here, you define which groups can view workflow actions on-screen by checking
the box under Visible.
• Choose which groups can override workflow actions by checking the Optional
column.

Select Visible and Optional for the Admin group.

Select Visible for the Support Staff group.

Add any other groups you want to have these
privileges, then click Finish.
• It may take a few moments to save the workflow.
You will be redirected to Setup > Tables.
14
Practice
Adding Workflow to the Layout
•
Now that the workflow is saved, let’s add it to the layout.
•
First, navigate to the Fields tab of the Tasks table wizard. Let’s
rename the Workflow State field to something more meaningful.
•
Edit the Workflow State field and relabel it Alt Status
so we can compare it to the existing Status field. Click Finish.
•
On the Layout tab, add the Alt Status field next to the existing Status field in the layout.
•
Click Finish to save your work.
Adding Alt Status to your current view of the Tasks table will make it easier to identify
records in the proceeding exercises. Take a minute to adjust the view now if you wish.
15
Practice
Adding an Action
• Let’s add an email action when the Status changes to Canceled to notify
the user who created the task that it has been canceled.
• Reopen the Task table Workflow tab to edit the workflow you just saved.
• You may receive a security warning pop-up when reopening the workflow
editor. If the warning
appears, click Allow. (You can
also check the box to not show
the warning again.)
16
Practice
Adding an Action (cont.)
• Double-click the transition between Assigned and Canceled to open the action
dialog, then choose Create New Action > New Email Action… from the dropdown.
• Using the skills you learned in unit 8, create an email action called “Email
Creator Task is Canceled” that sends an email to the task’s creator informing
them the task was canceled.
When adding the email action, you can save time by copying and editing a similar email
template like the Email task creator that the task is done template.
17
Practice
Finishing an Action
•
After creating the email action, click Finish in the action wizard and the action will be added
to the Selected column.
•
Click Finish one more
time to save the state
transition and return
to the workflow editor.
•
The action should now
appear on the transition
arrow:
•
Click Finish to save the workflow.
18
Practice
Interacting with Workflow Actions
•
Let’s see how the new action interacts with our workflow.
•
Open the Tasks table and edit an existing record—the Alt Status will have the default
value of Assigned.
•
In the record form, change Alt Status to Canceled to see the workflow email action
appear:
If you add a Description to the action, it will be displayed along with the action name.
•
By deselecting the checkbox next to the action name, staff users can prevent the
system from sending the email when the task record is saved.
•
Deselect the checkbox and save the record now. Try changing the status in other
records and verify that the system does or does not send an email as appropriate.
19
What are Conditions?
•
Conditions define a set of criteria that is validated before a workflow
action is allowed to occur.
•
In Unit 9 we learned that all rules
can be filtered by a saved search
criteria, set on the Condition tab
of the Rule wizard.
•
Additionally, individual actions within an If-then-Else action are
filtered by search conditions that determine whether to run
the nested action, like in the image below.
20
What are Conditions? (cont.)
•
In a workflow, conditions serve the same purpose as they do in rules, acting
as a decision gate that prevents or allows an action. Be careful, though—the
logic works just a bit differently.
•
The primary difference between workflow conditions and rule conditions is
the range of filters available to use:
•
•
In rules, the full range of saved search filters are available; in workflow, only Simple
and Script conditions can be used.
It’s important to remember how a condition and action interact in
workflow:
•
If the condition (criteria) is true about a record when the state change occurs, the
action occurs.
21
Practice
Adding Conditions
•
Let’s add a condition that checks to see if the task was not canceled
by the creator. That way, the system will only send the email if the
task is canceled by someone other than the creator.
•
On the Workflow tab, begin by double-clicking the transition from
Assigned to Canceled.
•
In the pop-up, click to highlight the email action you just added in
the Selected column.
•
From the Set Condition dropdown, select Define Simple Condition.
22
Adding Conditions (cont.)
•
A pop-up window will open. Enter a name for the condition (e.g., Updater is Not Creator) and
click Next.
•
On the Condition tab, click the Simple button.
•
Create a condition that finds “Updated By (post) is not equal to <Field> Created By (pre)” as
in the screenshot below:
•
Remember, the action occurs if the condition is true—in this case, if the updater is not the
creator, then send an email.
23
Practice
Finish Adding a Condition
•
Click Finish to save the condition. The Guard/Condition wizard will
close and return to the transition properties screen.
•
The condition is automatically added to the selected action:
•
Click Finish once more to return to the Workflow tab.
•
Click Finish on the Workflow tab to save your changes.
24
What are Guards?
•
Guards are similar to conditions, but instead of preventing actions, they
prevent the state change itself if the search condition is true. For
example, in the Support Cases table we might want to prevent the
transition from Open to Closed unless the Solution field is filled out.
Since guards and conditions operate on the same types of search
criteria, you can reuse a condition as a guard and vice versa. We’ll see
what this looks like up close when we add a guard over the next few
slides.
25
Practice
Add a Closing Comment Field
•
Let’s add a guard to prevent a task from being marked Done unless
the Closing Comment field has a value.
•
Before creating the guard, we need to add a Closing Comment text
field to our Tasks table.
•
Use the skills you learned in Unit 3 to add a text field labeled
“Closing Comment.”
•
Set a maximum of 2,000 characters.
•
Set a visibility dependence condition so Closing Comment appears only when Alt
Status equals Done.
•
Copy the permissions from the Working Notes field.
26
Practice
Adjust the Layout
•
Add the Closing Comment field to the layout, at the bottom of the
Task Details tab.
•
Navigate to the Workflow tab. Double-click the transition from In
Progress to Done to open the transition properties dialog.
27
Practice
Adding Guards
•
Click the Guards tab and notice how the
new Updater is not Creator condition
appears in the Available column.
•
From the Create New Guard drop-down,
select New Simple Guard.
•
A new window will open. On the
General tab, enter a name
(e.g., Closing Comment
Required) and description for
the guard.
•
Click Next.
28
Practice
Adding Guards (cont.)
•
Click Simple to create a new condition.
•
In the first drop-down, select
the Closing Comment field
•
In the second box, leave the
default <post> selected
•
Use the third drop-down to select is not equal
•
Next, leave the default <Value> selected
•
Leave the final input box blank to find empty field values
•
Click Finish to save the
condition and close the
pop-up window.
•
The new guard is
automatically added to
the Selected Guards pane.
•
Click Finish.
29
Practice
Saving Guards
•
Your guard now appears on
the state transition:
•
Click Finish to save the workflow changes.
You can add the same guard to other transitions by editing the
transition. Select the guard from the Available pane and click the >
button to move it to the Selected Guards pane.
30
Practice
Interacting with Guards
•
Let’s see how the new guard interacts with our workflow.
•
Open the Tasks table and edit any record that has an Alt Status of In
Progress.
You may need to edit a task with an Alt Status of Assigned and save it
as In Progress, then reopen the record.
•
Change the Alt Status to Done to see the new guard appear:
31
Practice
Interacting with Guards (cont.)
• Save the record without adding a closing comment. You should receive an
error message at the top of the record form similar to “cannot change state to
‘Done’ due to guard: Closing Comment Required,” as in the image below.
Since the guard name appears in the error message, it’s important that the
name indicate what is required. If you add a Description, it will appear in the
error.
Although available, our experts use Validation and If-then-else actions in rules
more often than workflow guards, since rules offer more filtering options to
handle more complex conditions. For instance, the error presented to users is more
customizable in a validation action than a workflow guard.
• This concludes our practice with guards.
32
Workflow Summary
•
In this unit we learned what workflow is in Agiloft.
•
We learned how to use the workflow editor.
•
We practiced creating a workflow with actions, conditions, and
guards.
33