Hi
I receive the error in the title bar as a result of the following code but I can't see what I'm doing wrong:
<cfcomponent hint="sets background colour to help users see where they are during booking">
<cffunction name="cellcolour" returntype="struct">
<cfargument name="progressstage" type="string" required="true">
<cfset var stagecol="StructNew()">
<cfset oncolour="red">
<cfset offcolour="white">
<cfswitch expression="#progressstage#">
<cfcase value="progressstage1">
<cfset stagecol.colour1="#oncolour#">
<cfset stagecol.colour2="#offcolour#">
<cfset stagecol.colour3="#offcolour#">
<cfset stagecol.colour4="#offcolour#">
<cfset stagecol.colour5="#offcolour#">
</cfcase>
........... etc
Thew line where the error occurs is <cfset stagecol.colour1="#oncolour#">.
Thanks in advance for any advice
Dave
1. Are you using cftry/catch in our component? In some CF verison (at least), var scoped variables couldn't be referenced in cfcatch block.
2. What is your function returning? Is it a structure? Try removing the returntype attribute of the function.
3. Double check for overlapping variable names - try to change your variable names in the function and check if that helps.
And P.S. <cfset stagecol.colour1="#oncolour#"> is better and clearer written as <cfset stagecol.colour1 = oncolour>
Never use pound signs until you're outputting something, or dynamically evaluating a variable name.
-Fernis
North America
Europe, Middle East and Africa
Asia Pacific