Skip to content

Build the Purchase Request Process Flow

Key Lesson: In this step, you learn how to create the Purchase Request Process, assign responsibility through swimlanes, define the Process variable, and configure the User Tasks that move the request between roles.

Create the PurchaseRequestProcessing Process that routes a Purchase Request through approval, revision, and procurement.

Create a new Process definition in Lowgile Studio.

  1. Go to Design → Object Types → Process.
  2. Add a new Process and name it PurchaseRequestProcessing.

The Process Editor opens with a Default Process Diagram. Let’s modify this placeholder diagram to build the Purchasing Process.

  1. Delete the default Hello World task and its connectors.

For each swimlane, the Name identifies the participant and the Assignee expression determines which role can perform the tasks inside it.

Tip

Prefer a visual walkthrough? This short video demonstrates the complete sequence of adding and naming swimlanes.

1.1. Rename and configure the Requester swimlane

Section titled “1.1. Rename and configure the Requester swimlane”
  1. Select the existing Initiator swimlane.

  2. In the Properties panel, set:

PropertyValue
NameRequester
Assignee
return {
  users: [],
  groups: [],
  roles: [This.$Roles.Requester],
}
  1. Save your changes before continuing.

1.2. Add and configure the Approver swimlane

Section titled “1.2. Add and configure the Approver swimlane”
  1. On the right side of the process diagram, click the Add lane below icon.
  2. Select the new swimlane.
  3. In the Properties panel, set:
PropertyValue
NameApprover
Assignee
return {
  users: [],
  groups: [],
  roles: [This.$Roles.Approver],
}
  1. Save your changes before continuing.

1.3. Add and configure the Procurement swimlane

Section titled “1.3. Add and configure the Procurement swimlane”
  1. Click the Add lane below icon to create the third swimlane.
  2. Select the new swimlane.
  3. In the Properties panel, set:
PropertyValue
NameProcurement
Assignee
return {
  users: [],
  groups: [],
  roles: [This.$Roles.Procurement],
}
  1. Save your changes before continuing.

The PurchaseRequestProcessing Process uses request to carry the submitted Purchase Request between task screens.

  1. Open the Variables tab at the top of the Process Editor.
  2. Click + Add new variable, then configure it as follows:
NameContextTypeDefault expression
requestInput
This.PurchaseRequest
(leave blank)
  1. Save your changes before continuing.

Add a single User Task to each swimlane and configure its properties.

Tip

For more information about how task outputs and output handlers select Process routes, see How task outputs select a route.

3.1. Add and configure the Approve PR task

Section titled “3.1. Add and configure the Approve PR task”
  1. Select the Approver swimlane.
  2. Add a new User Task.
  3. In the Properties panel, set:
TabPropertyValue
PropertiesNameApprove PR
ScreenPurchasing.PurchaseRequestApprove
Inputsrequest
process.request
Output handlerssubmit
process.request.comment = data.comment

return data.isApproved ? "approve" : "reject"
  1. Save your changes before continuing.

Attention

If the Inputs or Output handlers tabs do not appear after assigning the task screen, see User Task Inputs and Output Handlers Do Not Appear.

  1. Select the Requester swimlane.
  2. Add a new User Task.
  3. Configure the task as follows:
TabPropertyValue
PropertiesNameRevise PR
ScreenPurchasing.PurchaseRequestUpdate
Inputsrequest
process.request
Output handlerssubmit
process.request = data

return "resubmit"
  1. Save your changes before continuing.

3.3. Add and configure the Request Quotation from Vendors task

Section titled “3.3. Add and configure the Request Quotation from Vendors task”
  1. Select the Procurement swimlane.
  2. Add a new User Task.
  3. Configure the task as shown in the following table.
  4. Save the Process, then reselect the Request Quotation from Vendors task before configuring the Inputs and Output handlers shown in the table below.
TabPropertyValue
PropertiesNameRequest Quotation from Vendors
Screen
PurchaseQuotationCreate
Inputsrequest
process.request
Output handlerssubmit
return "sendRequest"
  1. Save your changes before continuing.

Understand the BPMN elements and flow patterns used in Lowgile Processes.

Learn how swimlanes, roles, and assignments determine task responsibility.

Review how Process diagrams, activities, User Tasks, and variables work together.