Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
To fix or not to fix, that is the question
Message
 
 
To
11/07/2006 09:53:25
Mike Yearwood
Toronto, Ontario, Canada
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Environment versions
Visual FoxPro:
VFP 6
OS:
Windows XP SP2
Miscellaneous
Thread ID:
01135306
Message ID:
01135316
Views:
13
>Hi all
>
>I've got a situation. Inherited code, BTW. A formset - which seems really superfluous in this case, has a form. The form dimensions an array in the load. That's a private array, almost public.
>
>DIMENSION SomeArray[10]
>
>A button on the form calls a PRG which contains the line:
>
>EXTERNAL ARRAY SomeArray
>
>The array is not passed to the PRG as a parameter.
>
>The PRG calls a UDF, passing the array like this.
>
>DO UDF WITH SomeArray
>
>The programmer attempted to receive the array in a UDF.
>PARAMETERS SomeArray
>
>Technically, the array wasn't passed, just the first element's value.
>
>Subsequent references prove that the array is virtually public. The name is consistent throughout the set of code.
>
>x=SomeArray[5]
>
>DISPLAY MEMO shows SomeArray as Hidden in the UDF,
>
>It's confusing but it works. I could dispense with passing and receiving the array, which would make it clearer, or re-engineer it to make it properly encapsulated, which means changing the UDFs.
>
>Or just document the existing situation.
>
>What would you do?

My first simple take would be to change the call from
DO User Defined Function WITH SomeArray

to

=UserDefinedFunction(@SomeArray)

Then I would probably get rid of formsets, make other changes, etc. You may use FoxUnit to test, how your changes affect this form.
If it's not broken, fix it until it is.


My Blog
Previous
Reply
Map
View

Click here to load this message in the networking platform