Using Decisions to Send a Workflow in Different Directions

Welcome to Skill Station 2.  Today we will learn how to edit your work stream. We are going to use decisions to send the flow in different directions.

Learning Concepts at This Station:

Creating new versions of streams
Production vs working versions of streams
Adding decision gateways to a work stream

Video Tutorial:



Let's start by creating a working version of our stream. In the upper right side of your screen, access your Streams Management dashboard by clicking on the gear icon next to your user name.

streams management, pulpstream, how to, tutorial

Here on the Your Streams page you will see all your work streams.

expense approvals, your streams, how to, tutorial, pulpstream

Select the Expense-Pre Approval Stream we made at the last Skill Station. Let's assume that this work stream that we created is in use by employees right now. (That is normally the case for a published version of a stream.) We want to enhance this stream. But, we don’t want to cause errors for our colleagues while we are making changes. So, we are going to create a working version of our stream to edit.  

This is an important concept to learn as you start to manage work streams. A version of your stream that is labeled "Production" or "Published" is the one that is live and in use by your team. The version labeled "Working" is the one that is in development. Changes you make to this version will not impact the work streams that are in use by your team. We will eventually merge the changes we make in our working version into a production version.

Now, let's create a working version of the stream. On the Your Streams page with the Summary tab selected, you’ll see a blue "Create New Version" button. Click that to create a new version.

expense approvals, version control, pulpstream, how to, tutorial


Note: You will not see 'Create New Version' button until you have locked the current published version.


In the Create New Version Comment box, type in a descriptive remark that will make what we are about to do to the stream clear to anyone who edits or audits this work stream. For example, “Adding a decision gateway to send workflow in different directions.”

expense approvals, version control, pulpstream, how to, tutorial

From your Stream Definition Canvas you will see a clone of the stream we created at the last Skill Station. In the top right side of the canvas, you can see which version you are working on by clicking on that pull-down menu. You could have multiple versions here, depending on your team size and enterprise complexity. See that “Version 2 (Working)” is the one selected.

expense approvals, version control, pulpstream, how to, tutorial

Next, we are going to reorganize the work stream flow to make it vertical and add more steps. Delete the end step, which is the circle with the X on it. To do this, select it with your mouse. Click the delete button on your keyboard to delete it. Delete the connector line too. 

In your Stream Definition canvas navigation menu, you will see a purple diamond icon. These are your gateway options.


Select and drag the Decision step onto the canvas below your Review Request step. In the Decision Matrix configuration popup, give it a title that anyone who sees it would instantly understand, such as “Task Outcome.” Check the radio button to tell the Pulpstream engine to use the previous task outcome to guide the decision. As you can see we can create robust decision matrices here by selecting the other option. Let's keep it simple while we’re learning. In the user task pull-down menu, select “Review Request.”

Save your changes.

Back on the Stream Definition canvas, you will see the gateway represented visually as a purple decision diamond. It’s not connected to anything right now. Let's connect it to our Review Request Task. Hover your mouse over the Review Request step to reveal the connector creation arrow. Click on that arrow and drag a connector line from the Review Request step to the Decision Gateway.

expense approvals, decision matrix, pulpstream, how to, tutorial

Now that we have a Decision Gateway, we need to make a User Task that will get used after the flow passes through the Decision step. As you see here, our stream is rather basic. Based on our Review Request step configurations, the stream can flow in three ways right now. The expense request is either going to be approved, rejected, or rejected with the caveat that if something is altered or fixed the request could be approved.  

On your Stream Definition canvas, in the navigation bar select a User Task and drag it onto your canvas. In the User Task configuration popup, we’re going to create a Fix Request step.

We start on the General tab. The Task Subject will be “Fix Request.” In the select a form to show record details … pull-down menu, select “Request Form.” Under that form there’s a Select an optional form that assignee will be required … pull-down menu. Select “Request Form.”

We need to give the task a due date. In the when will this task be due after… pull-down menu, select “It will be due in days specified here.” Enter a number of days the person has to complete this task. We are giving the user 2 days to complete this task, so enter that into the field.  Your General tab should now look like this: 


Next, click on the Assignment tab.

The Fix Request step needs to be assigned to the person who submitted the request. In the assign task to pull-down menu, select “Submitter.”

In the assignment options, check both boxes to allow delegation of the task and send task assignment notification email. In the action buttons available … section, we’re going to give the user one outcome: “Complete.” Choose that from the pull-down menu. Your Assignment tab should now look like this:

expense approvals, user task, how to, pulpstream, tutorial

Save your changes to the User Task.

Back on the Stream Definition canvas, connect the Decision step to the Fix Request step we just made. (Hover your mouse over the Decision diamond to reveal the connector line creation arrow icon. Click on it; and hold down your mouse to drag a connector line over to your Fix Request step. Because it’s a decision, a connector dialog box will popup.

expense approvals, user task, configuration, decision gateway, how to

This is where you tell the connector which decision it will use to send the flow of the stream through that Fix Request step. Choose “Send back to Requestor.” Now connect the Fix Request step to the Review Request Step. This will make it so that when this Fix Request Step is completed, the expense approver will review the request again.

When you’re done, the stream will look like this:

expense approvals, user task, work stream, pulpstream, how to, tutorial

From your Stream Definition canvas navigation menu, drag an end step onto the canvas. (It's the the dot with the X on it that is in the menu atop of the Stream Definition Canvas.) Connect it to the Decision diamond. Configure it so that the stream ends when the request is “Approved.” Drag another End step onto the canvas and connect it to the Decision step.  Configure it so that the stream will end if the request is “Rejected.”  

At this point, your stream should look like this:

expense approvals, stream definition, decision gateway configured

Save your process. And that's it! We've edited our work stream with a decision gateway that guides the flow of the stream based on a user decision. 

If you’d like to create a test record before publishing the stream, click on the gear icon next to the Checkin button. Select “Create Test Record.”

expense approvals, create test record, pulpstream, how to, tutorial

If you are happy with the test results, checkin and publish version 2 of the stream. In the Checkin comments popup, type in something that will help future stream collaborators or auditors identify the edits you made.  For example, “Added a decision gateway to configure work stream to handle accept, reject, or fix request conditions.”


 At the next Skill Station we will learn how to escalate expense approval decisions for higher approval based on an amount.