Nintex Workflow Error (Update XML)

Within a Nintex Workflow, you might have seen this error :

The workflow could not update the item, possibly because one or more columns for the item require a different type of information.

I’ve been experiencing this during the development of a workflow – and it was happening as the workflow was about to do a Flexi Task.

BUT – the problem is actually happening earlier – and it’s related to the UPDATE XML activity.

InfoPath Forms – Update XML

When using an InfoPath form, it’s very easy to update the settings and values within a form, by the Update XML action to essentially ‘poke’ a value back into the InfoPath Form.

As below, you determine the XPath from within your InfoPath Form :

image

And – use the Update XML action within Nintex Workflow :

image

There is also the Query XML activity, to READ values – based on an XPath statement.

SharePoint List Columns – Update Item

Another useful step within the Nintex Workflow set of activities is ‘Update Item’ in which you can change the values of a SharePoint list column – for any fields that have been set as a promoted property.

Eg.  When publishing the form from InfoPath :

image

Within the Update Item, you choose the column, and the value to set :

image

Conflicting Updates – Great Scott !!

Here’s where the problem arises.

If/when you have a combination of these types of update – ie. UPDATE XML *and* UPDATE ITEM – you might run into the issue as detailed above.

The workflow could not update the item, possibly because one or more columns for the item require a different type of information.

This is a little misleading, and can be confusing until you understand how Nintex Workflow operates.

How The Flow Works

When the steps of a workflow are executed, any updates to the form, such as Security and Updates are not processed ‘immediately’.  

Instead, they are essentially batched up for processing at a pause-point.

By the term ‘pause-point’ – I’m meaning an activity when it’s awaiting a response from a user – or when the workflow stops to take a breath in processing – such as :

  • Flexi Task
  • Wait For Item Update
  • Change State
  • Pause For…
  • Pause Until…

It follows that there can be a mis-match of batch activities – and the QUERY XML and ITEM UPDATE don’t seem to play very well together.

You can almost understand this – one is an XML update via one API set, and the other is a SharePoint SPItem update – and if you consider versioning, and ‘concurrency’ – it’s a murky scenario.

The Solution

Introduce a pause-point !

More specifically, include a step that does a “Commit Pending Changes” within the workflow.

This will pause operations, and wait for the changes to be flushed back to the item (InfoPath Form).

 

image

 

Alternative Solution

My preference for designing workflows is to rely on the “Update XML” activities for updating values within the InfoPath Form – as opposed to “Update Item”.

If you can choose ONE of these approaches – and not BOTH – then you’ll further reduce the potential for problems.

Hope that might have assisted someone out there – happy workflow’ing…!

Smile

Advertisements

2 thoughts on “Nintex Workflow Error (Update XML)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s