Search code examples
sharepoint-2013nintex-workflow

( Nintex Form for SharePoint 2013 ) Is it possible to lookup Lists outside the Site collection using the lookup() in Forms?


Our scenario

  1. Developing Nintex Form and Workflow to run on an Intranet subsite

  2. Based on the value of a form field; need to query a List that resides on the root site of Intranet.

  3. The Site collection of our project site is a child site of the root site. So the root site List is not a part of the project's site collection.

  4. Had been searching for this recently. found the below info in Nintex 2013 official documentation on lookup() :

image from Nintex 2013 doc

  1. From the 3rd and 4th step; the door seems to be closed.

Has anyone from the community faced a similar kind of issue. Kindly let me know :)

Regards


Solution

  • You are bumping into a core reason why I typically develop Nintex workflow/forms on lists within a site, rather than using sub-sites. On the plus side, lists on the same allow for effortless lookup fields within SharePoint lists, Nintex Workflow and Forms. A consequence of this approach to consider is that there are limits to the size of the Content DB. However, while I can't remember the cap for 2013 I do know for 2016 you can go up to 100GB without concern and have a cap at 200GB. That's a LOT of data though, and we have systems in production that have been built with this approach successfully over the years. That said, we don't consider SharePoint the place store lots of fat and unstructured documents.

    However, if your governance/policies etc. force you to maintain separate sites then it gets more complicated. I have used the Call Web Service action (currently through Insert Connector Action > Call Web Service in the designer).

    The good news is that SharePoint does provide it a Web Service, so you should be able to authenticate with your credentials. If you're using an Intranet only, then this shouldn't be an issue since SharePoint Server should make Web Services available in the domain.

    For url enter the root URL of the SharePoint site. I'd recommend a workflow constant credentials, and obviously, you'll want the account used to have access to whatever is being queried. Once the connection is made, a list of web methods will be available. You can then run the query and store to variables. However, I will say that I NOT often have used Call Web Services recursively to a SharePoint environment because it's quite a bit more work to develop and maintain a solution. In addition, having access to lookup fields in forms really does make for a more maintainable user experience.

    That all said, there is a massive caveat I need to add to this. We spend considerable up front time doing process analysis work before we use SharePoint and NWF to build platform type solutions. Feel free to add comments if you have any questions.