Jump to content

Using Cfcomponent


Recommended Posts

I'm working on a cfcomponent application. I currently have 2 functions in my cfcomponent. My first function is getData which queries the DB and takes 2 arguments. My second function is buildTable which builds a table out of the query from getData. The problem I have is I get the error "Variable MYTABLE is undefined". myTable is created in my buildTable function.

<cfinvoke component="emissions" method="getData" returnvariable="myTable"><cfinvokeargument name="year" value="2007" /><cfinvokeargument name="location" value="BC" /></cfinvoke><cfdump var="#myTable#" />

EDIT:I got the problem resolved! Instead of my getData function calling buildTable I have buildTable calling getData and that seems to work :)

Edited by vchris
Link to comment
Share on other sites

  • 2 weeks later...

I see you resovled this, but I was working with a couple CFCs today and figured I might offer this little tip.When I make calls to functions or components I build all my code around them returning a pass or fail message. And data structure(s) that are built inside the component are defined in the request scope. Since a component can only return one variable, I ran into situations where an SP I was calling inside the CFC had multiple record sets and it was odd to pass one in the return variable and then force the other somewhere else (request scope). So now, I wrap almost everything I do in the CFC with a cftry/cfcatch and have the return variable pass back a pass or fail string. If it is fail, i don't even bother looking in the request scope for anything, if it passes, then I do. I now do that with all my components so my code is consistent.Does that make any sense?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Create New...