XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Show tree view Topic
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Postnext
Hatem JaberSubject: Help With Loop
Author: Hatem Jaber
Date: 05 Jan 2007 04:35 PM
I am new to the world of XML, XSL, XPATH, XSLT, etc...

If I ask a dumb question, please don't hold it against me!

I was fortunate enough to find some code for a "CFC Generator" that was open source. For those who are not familiar with ColdFusion, a CFC is basically a CLASS file, but for ColdFusion only. Ok, make a long story short, I generate an xml file dynamically based on my database table fields and some form fields that are filled in as well. The file attached is a gateway cfc with methods that: getbyfirst_name(), getbylast_name(), etc... These methods are created dynamically in the stylesheet with the help of a for-each loop. So in the xml file, if the <getby>1</getby> is present, it should dynamically write a function in the output file which is my personGATEWAY.cfc file attached.

Inside the methods, the problem lies. I use a <xsl:for-each> loop to loop through the <addtowehre> nodes and build my WHERE clause in the query. I also also add the <getby> nodes at the end of the loop to build on the query. Currently I need the <getby> selection and the <addtowhere> selection if they are the same not to repeat.

So what ends up happening is I have a query that looks like this:

[code]
SELECT *
FROM person
WHERE first_name = <cfqueryparam value="#arguments.person.getfirst_name()#" cfsqltype="cf_sql_VARCHAR" maxlength="50" />
AND last_name = <cfqueryparam value="#arguments.person.getlast_name()#" cfsqltype="cf_sql_VARCHAR" maxlength="50" />
AND first_name = <cfqueryparam value="#arguments.person.getfirst_name()#" cfsqltype="cf_sql_VARCHAR" maxlength="50" />
[/code]

Which is not right because we have:

WHERE first_name = ...
AND last_name = ....
AND last_name = ....

One of the last_name clauses comes from the loop that creates the WHERE clause and the other comes from the main loop that creates the method.

I hope I posted enough information that someone out there can help me with and I look forward to your response(s)!


Unknowngateway_new.xsl
XSL File

Unknownperson.xml
XML File

UnknownpersonGATEWAY.cfc
Generate CFC File

Postnext
Minollo I.Subject: Help With Loop
Author: Minollo I.
Date: 07 Jan 2007 09:10 PM
What Stylus Studio version, edition and build number are you running? (Help > About)

Posttop
Chris StevensonSubject: Help With Loop
Author: Chris Stevenson
Date: 09 Jan 2007 05:56 PM
There seems to be a problem with you attachments. Please re-upload them.

Thanks,
"The Freak"

 
Topic Page 1 2 3 4 5 6 7 8 9 Go to previous topicPrev TopicGo to next topicNext Topic
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.