Yep, naming conventions were from me trying to simplify the problem and
remove unneeded code.

One approach I've used in the past for longer functions is to declare a
struct named 'local' and assign all vars local to the function to this
struct.

<cfset var local = StructNew()>
<cfset local.test = "#raguments.test#">

Should I just do this for everything?

On Wed, Nov 18, 2015 at 10:16 AM, Marcus F <[email protected]> wrote:

> Here's how I understand it (I may be off, someone correct me if I am,
> please).
>
> They are different scopes, but OpenBD traverses scopes to see if it can
> access a variable for you, so when you set the testVar it checks the scopes
> and sets arguments.testVar
>
> A co-worker tells me that if you var testVar, it would create a local
> testVar variable that you can reference separately.
>
> Granted, you should never be using names that can be confused in this way,
> but I assume it's just test code.
>
>
> On Wednesday, November 18, 2015 at 10:52:04 AM UTC-5, Jason Allen wrote:
>>
>> This is what's confusing me.
>>
>> If you declare an argument, say 'test' and I pass it into the function,
>> isn't it's value 'argument.test'?
>>
>> If I then declare a simple variable 'test', isn't a different variable
>> than 'arguments.test'?
>>
>> Or, when declaring a function, do I not need to use the 'argument.'
>> prefix to reference it?
>>
>> Basically, is 'arguments.test' the same as 'test'?
>>
>> If so, it's new to me. I thought they were different.
>>
>> On Wed, Nov 18, 2015 at 6:40 AM, Marcus F <[email protected]> wrote:
>>
>>> Because you're setting the variable to a blank value.
>>>
>>> The variable name is testVar, and you specifically set <cfset testVar =
>>> ""> before checking the value.
>>>
>>> Name it something else and it'll work.
>>>
>>>
>>> On Tuesday, November 17, 2015 at 6:33:12 PM UTC-5, Jason Allen wrote:
>>>>
>>>> *Hi Guys, *
>>>>
>>>> *I'm getting what I think is strange behavior. *
>>>>
>>>> *I'm building a function.  *
>>>>
>>>> *  <cffunction name="testFunction" returntype="struct" output="no"
>>>> access="remote" returnformat="json">*
>>>>
>>>> *    <cfargument name="testVar" type="numeric" required="false"
>>>> default="" hint="" />*
>>>> * <cfset var test=StructNew()>*
>>>> * <cfset test.originalTest = "#arguments.testVar#">*
>>>> * <cfset test.originalTestTrim = "#trim(arguments.testVar)#">*
>>>> * <cfset test.testVar = "">*
>>>> * <cfset testVar = "">*
>>>> * <!--- test --->*
>>>> * <cfif trim(arguments.testVar) eq ''>*
>>>> *  <cfset testVar = "woops">*
>>>> * </cfif>*
>>>>
>>>> *        <cfset test.testVar = "#testVar#">*
>>>> *  <cfsetting showdebugoutput="false" />*
>>>>
>>>> *    <cfreturn test>*
>>>>
>>>> *  </cffunction>*
>>>>
>>>>
>>>> *The part I'm having trouble with is*
>>>>
>>>> *<cfif trim(arguments.testVar) eq ''>*
>>>>
>>>> *Even though I've supplied the argument 'arguments.testVar' and it is a
>>>> recongized value (able to assign value to test.oroginalTest, *
>>>> *the if statement is returning true and setting testVar to 'woops'. *
>>>>
>>>> *What am I missing? *
>>>>
>>> --
>>> --
>>> online documentation: http://openbd.org/manual/
>>> http://groups.google.com/group/openbd?hl=en
>>>
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "Open BlueDragon" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
> --
> online documentation: http://openbd.org/manual/
> http://groups.google.com/group/openbd?hl=en
>
> ---
> You received this message because you are subscribed to the Google Groups
> "Open BlueDragon" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
-- 
online documentation: http://openbd.org/manual/
 http://groups.google.com/group/openbd?hl=en

--- 
You received this message because you are subscribed to the Google Groups "Open 
BlueDragon" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to