My input to the service is an Object * named “node”. My first step is the documentToRecord service. When it executes this step, I get this message in the debugLog:
000408 [B2BCORE.0050.0004] Copy failed: (Simple) No source data available: to=/
POSend(0)/ShowPurchaseOrder(0), from=/boundNode(0)
I map the “boundNode” output from that step to my defined PO record. But when I try to get any values from that PO record, there is no data. Any ideas on why I’m getting this error or if should be doing something differently?
The problem might be with Node object itself(hope you are receving PO via http)…or some thing might be missing in documentToRecord step.
For internal testing, If you have that xml document(which sender is posting) check with stringToDocument and documentToRecord and test if you are getting the proper boundNode.If you are success then problem might be with Node.
It could be that the XML you’re sending doesn’t match the record you imported or the mapping is incorrect. The best way to check this is step through your flow, stopping after the documentToRecord (don’t map it to your PO record yet). Look at the record on the ‘results’ tab of the Developer. You might be getting a different or one level deeper structure than you expected (eg. your XML is appearing underneath a boundNode).
Thanks for the help. I used stringToDocument and documentToRecord with the XML data from the source and it looks good. No problems.
I also looked at the XML at the documentToRecord step (without mapping to PO record) and it looks ok. There are some missing element fields, but when I mapped it back to the PO record, it stepped through with no errors and did what I wanted to do.
To explain a little more, I am HTTP posting the XML via a Visual Basic application. When I do this, I still see the “No source data available” message.
If the problem is with the node, how do I debug it?
Your last email brings up an entirely different problem. The parsing of your file into a Node coming from VB happens in a handler so you can’t debug it, but most likely you aren’t POSTing correctly. Have a look at the Developer docs (Passing XML to a Service for 4.6) or ISXmlGuide for 6.0 , but you have to set the name-value pair for an HTTP GET to $xmldata = your file (like in a browser) or do a POST and set the http header of content-type - text/xml.
Yes, the issue has been resolved. The “Content-Type” request header field did not have a value. Now the application is setting it to “text/xml” and I no longer see that message.