I have recently implemented a scenario using SharePoint 2013 and Nintex Workflows 2013 and discovered – what I guess might be – a Nintex-Bug. Searching the web didn’t bring up any results so I decided to document what I have found out. Okay, here we go.
Scenario setup
I have created a Nintex Workflow collecting information. This action creates a task for the user to which he/she has to respond to. Within this workflow the user can then add data and upload files using a Rich-Text-Field.
The files are uploaded to a library available within the site. In the upload dialog the user can select a destination library from a dropdown before uploading.
As default destination library the Site Assets library is pre-selected in the dropdown-Control. In the example screenshot the Images library is set as Site Assets library. If you want to change the destination library, you need to change the Site Assets settings of the desired library.
Go to the “Library Settings”, “Enhanced Settings” and set the “Site Assets Library” switch to “yes”.
Said and done. It worked – at a first glance. Within the upload-dialog the correct library is selected and uploaded files are linked within the rich-text-field.
But when I clicked on the link I got an HTTP 404 – file not found error.
Looking into it I figured out that the documents I uploaded to the Site Assets Library are put into a “_layouts/15/WrkStat”-Folder. The files are there but the links do not work. I guess because the “_layouts/15/-Folder” is a server-path.
I descovered that uploading documents into the Site Assets library using the std. SharePoint Rich-Text-Field works fine. Subfolders are also created but they are named after the library I am uploading the files from.
The Nintex-Version I discovered the issue in was version 3.1.6.0.-english. I didn’t find a fix within the release notes of Nintex. Therefore I thought about a workaround. The only thing I could come up with is to deactivate the Site Assets setting for all available libraries within my site and rename my desired default destination library to be alphabetically the first one listed. For my solution that was sufficient and worked out.
Hope these insights are useful to you.
Happy Coding.