Skip to main content
Nintex Community Menu Bar

Hello Community, I have a Nintex task form for that reads data from multiline text field but it has data in xml form. Whereas I need in a tabular form. Can someone suggest a way to achieve this?

 

 

<?xml version="1.0" encoding="utf-8"?><RepeaterData><Version /><Items><Item><listItemdescription type="System.String">Desc</listItemdescription><listItemNumber type="System.String">Desc</listItemNumber><listSAPInventoryNumber type="System.String">Desc</listSAPInventoryNumber><listRegulatoryBatchCode type="System.String">123</listRegulatoryBatchCode><listQty type="System.String">12</listQty><listUOM type="System.String">ea</listUOM><listLoc type="System.String">12</listLoc><listValueAtStandardCost type="System.String">3001</listValueAtStandardCost></Item></Items></RepeaterData>

Hello,

 

You would need to use queryXML action in the workflow to first extract all of the information into a collection/dictionary or set of.

 

Then you would loop through each item building a string to list all of the items one after another.

 

Something like this.

 

 

Adding a new output for each field in the repeating section

 

Then running a for each on any of the fields storing the index we can use that to get the information from the other collections (index starting at 0 that is)

 

Creating singular versions of each you can store the individual values in the loop.

 

 

The actions should look something like this:

An example of the collection action is here, repeat this for each field

 

 

Now to build the table you need to build 3 strings, a header, footer and contents

 

header is easy

<table> <tr> <th>Item description</th> <th>Item Number</th> <th>SAP Inventory Number</th> <th>Regulatory Batch Code</th> <th>Qty</th> <th>UOM</th> <th>Loc</th> <th>Value At Standard Cost</th> </tr>

 

Footer is even easier

</table>

 

For the contents you would build a string like this.

In the for each loop you create the build string.

it looks something like this

 

The important part to note is the use of the output variable for this string builder at the top of the output, This is done so when the loop repeats its self, it will insert everything from the previous loop above the newest item, to reverse direction of items you simply move this variable to the bottom.

 

{WorkflowVariable:tableitems} <tr> <td>{WorkflowVariable:Itemdescription}</td> <td>{WorkflowVariable:ItemNumber}</td> <td>{WorkflowVariable:SAPInventoryNumber}</td> <td>{WorkflowVariable:RegulatoryBatchCode}</td> <td>{WorkflowVariable:Qty}</td> <td>{WorkflowVariable:UOM}</td> <td>{WorkflowVariable:Loc}</td> <td>{WorkflowVariable:ValueAtStandardCost}</td> </tr>

 

after the loop we combine all of our table variables into a table. 

 

this is the output we get from your xml