Here's the current script. I added the Alert for the length of the node just for debuggin. It will show me the node size for the records just fine up until it hits that one where this none has not been filled in yet and I Object Required.
I had already tried to test for null just like mentioned:
var field = node.selectSingleNode("Diameter");
but this line will error out with object required.
So I was trying to use the length thinking that if it was zero I could identify it that way but it still comes back with object required.
/ Get a copy of the main DOM node.
var clone = XDocument.DOM.selectSingleNode("/my:myFields/my:group3/my:Test_Details").cloneNode(true);
// Copy nodes from 2DS to main DOM.
var nodes = XDocument.GetDOM("GetListItemsStr").selectNodes("/dfs:myFields/dfs:dataFields/ns1:GetListItemsStrResponse/ns1:GetListItemsStrResult/Rows/row");
var node;
while(node = nodes.nextNode())
{
var newTestDetails = clone.cloneNode(true);
newTestDetails.selectSingleNode("my:field10").text = node.selectSingleNode("Test_Serial_Number").text;
//newTestDetails.selectSingleNode("my:field11").text = node.selectSingleNode("Diameter").text;
var field11 = newTestDetails.selectSingleNode("my:field11");
XDocument.UI.Alert(node.selectSingleNode("Diameter").text.length);
if (node.selectSingleNode("Diameter").length != 0)
{
var diameter = node.selectSingleNode("Diameter").text;
if (diameter != "" & field11.getAttribute("xsi:nil"));
field11.removeAttribute("xsi:nil");
field11.text = diameter;
}
XDocument.DOM.selectSingleNode("/my:myFields/my:group3").appendChild(newTestDetails);
}
// Write your code here
}