Blog Post

How to Use Nintex Workflow to Convert Documents to PDF

Clavin Fernandes
Illustration: How to Use Nintex Workflow to Convert Documents to PDF
Information

We recently released the Muhimbi PDF Converter Xtension for Nintex Automation Cloud. You can download it here or learn more about available Muhimbi deployments for Nintex on our product page.

Although I have only recently started using Nintex Workflow, I have completely fallen in love with it. What used to be painful to achieve in SharePoint Designer has become absolute child’s play when using Nintex Workflow, especially in combination with the PDF Converter For SharePoint’s native Nintex support.

In addition to the PDF Conversion Workflow Activity described in this post, Nintex activities for PDF watermarking, PDF security, PDF merging, HTML to PDF conversion and more.

Let’s illustrate the power of these combined tools using an example that is very difficult to achieve in SharePoint designer: Act on a set of list items. In this example, which took only 5 minutes to create, a workflow retrieves all files modified during the current day and converts them to PDF. Ideally you would schedule this workflow to run off-peak to batch process all new and modified files.

Please follow the instructions below or download the complete workflow in NWF format.

Multiple-filesThe finished workflow – BRILLIANT!

Prerequisites

Before we start building the workflow, please make sure all prerequisites are in place. It is also assumed that the reader has some knowledge of building Workflows using Nintex Workflow.

  1. Make sure the PDF Converter for SharePoint version 4.1 (or newer) is installed in line with chapter 2 of the included Administration Guide.

  2. Naturally Nintex Workflow will need to be installed as well. Nintex Workflow version 2007, 2010 and 2013 are supported.

  3. Make sure the Muhimbi.PDFConverter.Nintex.WebApp SharePoint Feature is activated on the relevant Web Application using SharePoint Central Administration.

  4. The user (you) will need to have the appropriate privileges to create workflows.

Creating a new workflow

To get started, create a new workflow and choose the blank template. Make sure the workflow doesn’t start automatically and add the workflow variables listed in the following screenshot.

Workflow-Variables

Please make sure that the appropriate data types are assigned (They are listed between round brackets behind each variable name). The names are largely self describing, but some additional information is provided below:

  • Source Item ID: By default the item that triggered the workflow is converted to PDF format. However, as we are iterating over multiple items we need to specify the ID of the item to convert in this variable. In SharePoint 2010 / 2013 select Integer as the Type, not List Item ID.

  • Source List ID: The PDF Converter assumes the item that is being converted is located in the same list the workflow is attached to. However, if this is not the case then the ID (a GUID) of the list will need to be specified as well. In this example everything is located in the same list so this variable is not actually used.

  • Source Files: As we are potentially converting multiple files we need to define a variable of type Collection to hold the list of files we’ll be iterating over.

  • Generated PDF Item ID: Once a file has been converted to PDF, you may want to carry out additional actions on this new file, for example checking it in. Once converted, the ID of the PDF is automatically stored in this variable. In SharePoint 2010 / 2013 select Integer as the Type, not List Item ID. This example uses the (Legacy) Convert to PDF Workflow Activity, if you use the newer Convert Document activity then please take into account that the Generated PDF Item ID is of type Text. If you wish to pass this ID into a secondary activity then you may need to convert it to the correct data type using the Convert Value Workflow Activity. An example can be found here.

  • Generated PDF List ID: As the PDF Converter allows files to be written to different document libraries, and even completely different Site Collections, you may want to know the ID of the destination list.

Adding the workflow actions

We are now ready to add the actions to the workflow. Begin by adding a Query List action, which will allow us to retrieve all files modified today and store the results in the Source Files collection.

Query-List

Please fill out the settings for this action as in the screenshot listed above. You may want to add an additional filter rule to check that Content Type is not equal to Folder or Document Set.

Continue by adding the For Each action to the workflow. Specify the name of the collection to iterate over and the name of the variable to store the Item’s ID in.

For-Each

The next set of actions will all need to be added inside the For Each action, to make sure they are executed separately for each file in the list.

We want to make sure that we only invoke the PDF Converter for files that are not already in PDF format, so add a condition and check that the file type equals ‘pdf’ as per the following screenshot.

Set-Condition

Add the Convert file to PDF action listed under the Muhimbi PDF section to the No branch of the condition (type is not pdf). Fill it out as per the left most image in the following screenshot.

Convert-PDFThe PDF Converter integrates with Nintex Workflow 2007 & 2010.

You may want to leave the Destination Path empty, which will write the PDF File to the same location as the source file. For more information about the Destination Path or any of the other fields, hover the mouse over the small information icons.

The workflow is now done. You may want to add some tracking information using the Log In the History List action. In our example we use the following 2:

  • Last action in the No branch:

    List ID: {WorkflowVariable:Generated PDF List ID} - List Item ID: {WorkflowVariable:Generated PDF Item ID}

  • Last action in the Yes branch:

    Already in PDF Format: {WorkflowVariable:Source Item ID}

Running the workflow

Finalise the workflow by saving and publishing it, after which it is ready to be executed.

You can either run the workflow manually or schedule it to run at a time of your choice.

Author
Clavin Fernandes Developer Relations and Support Services

Clavin is a Microsoft Business Applications MVP who supports 1,000+ high-level enterprise customers with challenges related to PDF conversion in combination with SharePoint on-premises Office 365, Azure, Nintex, K2, and Power Platform mostly no-code solutions.

Explore related topics

Share post
Free trial Ready to get started?
Free trial