Shareflex Business Application Platform – a deep dive into the workflows

Shareflex is an application development platform for realizing business applications on SharePoint Online. Shareflex is ideal for building (complex) custom applications, but also offers various standard business applications for SharePoint, such as the Contract Management application.

The Shareflex workflow designer is a browser-based tool to create a SharePoint workflow for just about anything you can think of. A Shareflex workflow consists of bindings, steps, actions and tasks.

A workflow binding connects a workflow to a list or library.
A workflow step is a set of workflow actions and possible outcomes. Steps can be executed either independent of each other, in parallel, or sequentially.
A workflow action is an automated operation that does not require user interaction.
A workflow task is a form that will be created  when a workflow step requires the interaction of one or more users, before it moves on to another workflow step.

If you require certain custom or advanced functionality, it is possible to extend a workflow with JavaScript (a Shareflex JS library is available) or BRE, which is a comprehensive proprietary XML-based domain specific language made by Shareflex.

The image below shows the design of a simple Shareflex workflow

The same workflow design at a different zoom level

Workflow bindings

A workflow binding (also known as workflow association) establishes a link between a workflow and a list or library. It allows you to select a list or library, a start-step, an end-step and a workflow start condition.

The following workflow start conditions are available:

  • New – start the workflow when a list item is saved.
  • Status – start the workflow when a list item field has a certain value. You can optionally combine this with JavaScript or BRE, for a highly customizable solution.
  • Query – start the workflow depending on a condition specified in a CAML query.
  • Manually – adds a ‘Submit Workflow’ button to a Shareflex form, so a user can start the workflow manually.
  • Function – start the workflow depending on a condition specified in a BRE function.

Each workflow can have multiple bindings, which gives you a lot of flexibility. For example, it means that multiple (corresponding) apps are able to use the same workflow, as long as they do not interfere with each other. It also makes it easy to automatically start the workflow at different steps, depending on a dynamic condition such as the value of a field, or

Workflow actions

The Shareflex workflow designer offers a couple of commonly needed operations such as sending an email or updating a list item field value. These actions are easy to add and do not require coding knowledge.

Adding an action to send an email or update a list item field value is very easy and does not require coding knowledge.

The proprietary BRE language can be used to create actions with custom functionality.

Workflow placeholders

Various useful placeholders can be used in all text fields of the Shareflex workflow designer. They will be replaced with their corresponding values once the workflow starts. For example, there are placeholders for the author of the list item that started the workflow, for the task approver, and for all field values of the list item.

 

Workflow tasks

A workflow task form will be created when a certain step requires the interaction of a user before it moves on to another step. For example, when a request needs approval, or when the next step has to be chosen manually.

All workflow tasks are stored in a dedicated Workflow Tasks list. Users will only be able to see the tasks they have been assigned to.

As shown in the image below, every workflow task page consists of two parts: the available workflow task options, and the list item that started the workflow. In this particular case, there are two options (approve and reject), and the task assignee is allowed to edit some of the form fields.

It is also possible to customize the workflow task form with JavaScript.

User experience

The video below demonstrates a Shareflex application with a workflow, in SharePoint Online.