on 05-31-2007 9:21 PM
I'm trying to pass results from a BLS transaction back to the Xacute query that called the transaction. When 'Test'ing my query template, I get the correct column headings but no data. When I reference my query template in my display template it returns the correct column headings.
The last action in my BLS transaction is an XML Document where the incoming links transfer the results from previous calculation actions to the appropriate rows in the OutputXML. The outgoing link transfers the OutputXML to a transaction property called 'OutputXML' whose datatype is 'xml' and is flagged as a output parameter.
Why am I not returning any values from my transaction?
Does your XML document have the correct values after you execute the transaction manually from the BLS?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
David,
When you said your last action in your BLS is a XML Document,are you not talking about an XML Saver action?So when you configure an XML Saver, you specify a physical location.You could check if this xml document has the correct values.Ignore this if you did not use a XML Saver.
Thanks and Regards,
Ram
Message was edited by:
Ram
Some great ideas here!
Brian, I'm using 'Assign Value' links for my incoming links to link the previous calculation action outputs to the appropriate rows in my Illum Doc action. I'm using 'Assign XML' for the outgoing link to pass the results to the transaction property.
Ram, I'm only using the Illum Doc action block and it doesn't ask for an XML file name. How would I use the OutputXMLSaver transaction call? I've seen it in transaction templates I've downloaded off service marketplace but I wasn't sure what it did.
Jeremy - the link type is 'Assign XML' for my outgoing link and I'm linking the root XML icons
Your description of your efforts to map from the calculation action to the rows in the IllumDoc seems suspicious to me.
If your IllumDoc has all the columns defined and nothing valid happens to create actual rows in the document this would be demonstrated by your symptoms of just the column headings coming back from the XacuteQuery test and the column names showing up in the data mapping of your applet (they are essentially the same thing - only column names).
If the final output of the Calculated Columns is what you want then just map that to your OutputXML transaction property, but if you need certain elements from the calc block add a Row action to your document and link the values into it accordingly. This would then create a row in your output.
Regards,
Jeremy
I just confirmed the OutputXML doesn't have any row data - just columns (I got the XML Saver action working).
Jeremy - I agree with you - the linking of my calculation actions is where the problem is. Here's an example of one of my incoming links (for my IllumDoc action) - I have 14 such links - one for each calculation result:
Object: SaveXMLResults
Property: Output
XPath: SaveXMLResults.Output{/Rowsets/Rowset/Row/xCircuit1kA}
Expression: Circuit1kA.Result
My outgoing link is:
Object: SaveXMLResults
Property: Output
XPath: SaveXMLResults.Output
Expression: Transaction.OutputXML
Any more thoughts?
David
David,
Eliminate the unecessary xml saver action (useless disk I/O that is better served by running a Tracer action so you can see the desired intermediate Document building or calculation steps). Tracer actions only get processed when you run a TRX from the editor, so they don't create any overhead.
What actually creates the Row in your IllumDoc - are you using the Row action block? If you are not, just add a Row action that is configured to your Document action. Then do your calculation assignment links to the corresponding elements within the Row.
Regards,
Jeremy
David, a followup to Jeremy's recomendation to use the Tracer Action block.
Sometimes the long line of xml can be difficult to read in the Transaction Execution window.
Here's a tip to make it more readable (got this from Sam Castro):
Copy the [INFO ]: line and paste into a text editor
Delete the [INFO ]: portion (the line should now start with <?xml version="1.0" encoding="UTF-8"?>)
Save the file as <i>filename</i>.XML
open the file using your web browser.
A major step forward there, Jeremy! I'm getting rows and data now - the XML looks like this:
<?xml version="1.0" encoding="UTF-8" ?>
- <Rowsets DateCreated="2007-06-01T11:31:49" EndDate="2007-05-31T13:00:54" StartDate="2007-05-31T13:00:54" Version="11.5.3">
- <Rowset>
- <Columns>
<Column Description="Pounds production" MaxRange="100000" MinRange="0" Name="Production" SQLDataType="8" SourceColumn="Production" />
</Columns>
- <Row>
<Production>1612.67990269166</Production>
</Row>
</Rowset>
</Rowsets>
But now I'm not getting anything being returned to my Xacute query, neither columns or rows. I'm awfully close here but not quite there.
I really appreciate your help with this.
David
David,
Just make sure to do all of your document building (original creation and row adding) efforts on the same object and then in the final sequence add an Assignment action that maps the document to your Transaction's OutputXML property.
You may have some leftovers from your troubleshooting and xml saver efforts.
Regards,
Jeremy
So I'm left with a Document action that creates the XML rowset and column descriptions (no incoming or outgoing links but configured with the column names) followed by a Row action that links the calculation action results to individual rows in the XML and last, an Assignment action that links the XML from the Rows action to the Transaction's OutputXML property - each of the three actions is in it's own sequence.
My assignment action outgoing link is:
Object: AddRows
Property: IlluminatorDocument
Expression: Transaction.OutputXML
I've deleted the OutputXML Saver action.
I'm not getting anything back to my query, though.
User | Count |
---|---|
13 | |
6 | |
3 | |
2 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.