I am extracting the data from one table using CustomSQL and one field has the xml structure. I am looping over results and taking the xml structure converting that to XMLStringToNode and from XMLNodeToDocument after I am trying to map to some of other flat file document.
Till XMLNodeToDocument the output value is coming fine. Values are showing in the document but when we are mapping these document values to flat file it is not returning anything giving null. Also server logs show as No source data available.
Please let us know if anyone has similar issue what would be the solution
Conceptually there is no problem, i have came across this scenerio so many times but never seen this issue unless there is some problem in document, say you are looping on document but in input is a document instead of a document list… just revisit your logic/inputs again, if you still don’t see any issues post the xml input to troubleshoot further.
All the xml data is converting to document and each loop it is showing the results correctly. Only the mapping part is not working. I am receiving all Null’s and the error in server logs is : [ISC.0050.0019V2] Copy failed: No source data available: But as I mentioned I am able to see the document with the values. Here is the attached xml file.
test.xml (4.3 KB)
Can you post a screen shot of your Developer screen showing the mapping step? Can you post what inputs are provided to XMLNodeToDocument?
Till xmlNodeToDocument it will works fine. I am getting the output I am able to see the output in results panel. But from that document if I map to any of the document or to string variable it is not returnign anything. Find the attached screen shot.
Are the 2 levels of intentional?
I am not sure this might help you, but just try and see…
If you can observe there is a @version field that is there in the document which might not be in the original document, so that is why it is not matching the structure and it is not mapping.
I had similar issue and have added that @version string to the original document and it did work for me…
hmmm after looking to your input file, this issue seems because of multi-level xml. In your xmlNodetoDocument service provide the documentTypeName (IS doc for the correct xml doc structure) and makeArrays = false. It should resolve your issue.
Basically this will generate the xml/IS document in pipeline with proper indexing as the document/flow is expecting to be mapped.
makeArrays won’t address nesting problems.
I suspect the issue is actually in your NodeToDocument step. I’m sure you have mapped the default output document of nodeToDocument step to the document reference (docNucleasNJRecon…) that you had created with the same XML.
Now please check it whether you have mapped the output document to the actual document reference in your pipeline or to the root node NucleasInterface inside the document reference. I suspect you have done the latter. That’s the reason why you are seeing two NucleasInterface nodes in the runtime pipeline where as your XML has only one as rightly pointed out by Rob earlier, one is from the converted XML and the other is the actual receiver’s name.
One way to verify this is if you take the drop off the document and compare the document and your reference document in the runtime pipeline you will find the difference in the structure yourself.
Hope this helps,