Hi all,
I'm trying to avoid having code attached to my library's form template but need to update multiple rows in a list from a repeating table in the form. A single row isn't a problem. I created the CAML xml data source, populated it with rules when the data changes, and can submit all without code but only a single row. I don't see any obvious rule method that would add a new node/update method to the xml batch as opposed to simply overwriting the same one every time. So, right now I just get one update from my repeating row and that's obviously from the last one I updated.
So, a simple CAML looks like so:
<?xml version="1.0" encoding="UTF-8" ?>
<Batch OnError="Continue">
<Method ID="1" Cmd="Update">
<Field Name="Client"></Field>
<Field Name="ID"></Field>
</Method>
<Method ID="2" Cmd="Update">
<Field Name="Client"></Field>
<Field Name="ID"></Field>
</Method>
</Batch>
There will be more fields but this is sufficient to test with.
What actually gets sent to the server looks like this:
<Batch OnError="Continue">
<Method ID="1" Cmd="Update">
<Field Name="Client">1234</Field>
<Field Name="ID">10</Field>
</Method>
<Method ID="2" Cmd="Update">
<Field Name="Client">1234</Field>
<Field Name="ID">10</Field>
</Method>
</Batch>
So, updating the field updates all of the fields for all methods.
The rule's update, after being exported and edited, like so:
Field[@Name = "ID"]
or technically like so:
<xsf:assignmentAction targetField="xdXDocument:GetDOM("UpdateInventoryCaml")/Batch/Method/Field[@Name = "ID"]" expression="."></xsf:assignmentAction>
Has anyone heard of doing this without writing code to add a new node and populate it before submitting?
SharePoint 2013 and Office/InfoPath 2013 are being used.