Parse Web Request Results SOAP XML into ?
Hello,
I have a newb question regarding how to approach a workflow.
The scenario is this…
- Identify a Feature
- Query a webservice with attributes of selected feature
- Receive Results (soap message (xml))
- Parse xml (Looking for TsgtObj and properties: Name, ObjectID, Type)
- Place Results objects into a collection or something that can be passed to a client activity for step 6
- (Basically – this is where I’m stuck. I can parse the xml – but how do I / what can I - populate/pass to a client activity so the user can make another selection?)
- Present the User with a list of options to select from the results (each object = one entry in the list to select)
- There are (2) TsgtObj.Type(s)
- i.folder
- ii.document
- There are (2) TsgtObj.Type(s)
- Query a different webservice endpoint (based on TsgtObj.Type) with selected property values from selection in step 6.
- If TsgtObj.Type = folder Repeat steps 3-7
- If TsgtObj.Type = document build a target _blank hyperlink and present in the UI for the user to click.
I have gotten through to step 4 using the workflow designer, some custom C# scripts and RunWorkflowWithArguments from the feature description but am struggling on how to get my results back to the UI so the user can make another selection.
Could someone point me to either a good sample that contains a similar working process or give me some suggestions on how I might achieve this in the html5 Viewer using a custom commands / workflows?
Sample SOAP Message:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><SearchTSGTResponse><SearchTSGTResult xmlns:a="http://schemas.datacontract.org/2004/07/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><a:TsgtObject><a:Name>RY</a:Name><a:ObjectId>0b00397b801f4e03</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>BA</a:Name><a:ObjectId>0b00397b80214439</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Batteries</a:Name><a:ObjectId>0b00397b802757d6</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW MAS Radio</a:Name><a:ObjectId>0b00397b802757d8</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Microwave</a:Name><a:ObjectId>0b00397b802757da</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW TNMS</a:Name><a:ObjectId>0b00397b802757dc</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Fiber Optic</a:Name><a:ObjectId>0b00397b802757de</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Telephone</a:Name><a:ObjectId>0b00397b802757e0</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW UHF Radio</a:Name><a:ObjectId>0b00397b802757e2</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Multiplex</a:Name><a:ObjectId>0b00397b802757e4</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Generator</a:Name><a:ObjectId>0b00397b802757e6</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW SCADA</a:Name><a:ObjectId>0b00397b802757e8</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Power Line Carrier</a:Name><a:ObjectId>0b00397b802757ea</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Chargers</a:Name><a:ObjectId>0b00397b802757ec</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Relaying</a:Name><a:ObjectId>0b00397b802757ee</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Tower</a:Name><a:ObjectId>0b00397b802757f0</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Facility</a:Name><a:ObjectId>0b00397b802757f2</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>CB</a:Name><a:ObjectId>0b00397b802882b6</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>IT</a:Name><a:ObjectId>0b00397b8040bf4d</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>LA</a:Name><a:ObjectId>0b00397b8040bf4f</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TR</a:Name><a:ObjectId>0b00397b8040bf50</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>AA</a:Name><a:ObjectId>0b00397b8043ec88</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TurnUpData</a:Name><a:ObjectId>0b00397b805549c1</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject><a:TsgtObject><a:Name>TW Networking</a:Name><a:ObjectId>0b00397b8069ecdb</a:ObjectId><a:Type>folder</a:Type></a:TsgtObject>"><a:TsgtObj><a:Name>Graph_Com30Jan2014.pdf</a:Name><a:ObjectId>0900397b8067cb67</a:ObjectId><a:Type>document</a:Type></a:TsgtObj><a:TsgtObj><a:Name>Graph_Com6Aug2014.pdf</a:Name><a:ObjectId>0900397b80711e83</a:ObjectId><a:Type>document</a:Type></a:TsgtObj></SearchTSGTResult></SearchTSGTResponse></s:Body></s:Envelope>
Thanks in advance!!
-
Figured it out…
The missing piece was ListToDataItemList
0
Please sign in to leave a comment.
Comments
1 comment