Posted at: 6:12 PM on 07 October 2016 by Muhimbi
One of the key reasons our customers love our popular range of server side PDF conversion and document automation products is the ability to automate processes. A friendly user interface to convert and merge files into a single PDF is nice and all, but being able to automate business processes using SharePoint workflows is where our products really shine.
Over the years we have created workflow actions for various environments; SharePoint Designer for the SP2007 & SP2010 workflow engine, Nintex Workflow 2007-2016, K2 blackpearl, the Workflow Manager included with SP2013/2016, and more recently the SharePoint Online / Office 365 workflow engine.
To keep everything consistent for our customers, we have always made sure that - regardless of the workflow platform used - all our workflow actions look and behave exactly the same. This has always worked well for us, but sometimes the underlying workflow platform throws a spanner in the works.
This post provides more details about recent changes that affect the SharePoint 2013-2016 Workflow Manager as well as SharePoint Online’s ‘SP2013’ workflow engine.
Before going into more detail, for the sake of simplicity and clarity let’s agree that the SharePoint 2013-2016 Workflow Manager and SharePoint Online’s ‘SP2013’ workflow engine are identical, and refer to both these workflow engines as the Workflow Manager. (They are based on the same technology, but the implementation is different.)
The previous version of our Workflow Manager actions worked well. However there was room for improvement in the following areas:
- Reusable Workflows: In the ‘old style’ SP2007-2010 workflow engine, reusable workflows worked pretty much the same as regular list workflows. It was possible to create one generic workflow and assign them to any list with little additional effort. This behaviour was changed in the Workflow Manager, which makes it much more difficult to carry out a lookup against a list that is not fixed at design time. Our new workflow actions address this by allowing the path to the input file to be specified at run-time. Confused? Keep reading, examples are provided below.
- Site Workflows: As Site Workflows are not associated with a specific List or Library item, Site Workflows were previously not supported. Fortunately, the same change that allows Reusable Workflows to work bettermakes it possible to integrate our software in Site Workflows.
So what has changed? Have a look at the old and new workflow sentences for the Convert Document action (the same change has been made to all other workflow actions)
Old Workflow Sentence
New Workflow Sentence
As you can see, the change is simple. Previously it was a requirement to specify the document using a workflow look-up. Usually the workflow developer would specify ‘Current Item’ to refer to the document that started the workflow. However, it was also possible to carry out a lookup on a different, but always the same, list. Less than ideal when it comes to reusable workflows.
The new Workflow Sentence changes ‘this document’ to ‘this document or this source file’. As a result the new workflow actions are fully backwards compatible, any workflow created using the old actions will work just fine using the new ones. However, it is no longer necessary to always use a workflow lookup as this source file is a text field that accepts a file path.
Entering static text for the input file will rarely be the right solution as very few workflows always act on the same source file. The solution is to generate the path to the source file at run time, e.g. by storing it in a workflow variable. Alternatively you can carry out a lookup for the Encoded Absolute URL on the current item as per the screenshot below.
This works particularly well for reusable workflows. Regardless of the list the workflow is associated with, this will always point to the item that the workflow was started on. For details about specifying paths using Muhimbi’s software, see this blog post.
A tutorial showing how to create re-usable workflows is outside the scope of this post, but please keep in mind that after publishing a reusable workflow it needs to be associated to a list or library using the ‘Add a Workflow’ option.
The SharePoint Online version of the new workflow actions can be found here. The new version of the on-premise Workflow Manager actions are included in version 8.2 of the Muhimbi PDF Converter for SharePoint.
If you have any questions, or suggestions for additional improvements, then leave a comment below or contact us..