BTW, Jeff..

The UDFs that are published here have a pretty standardized header - sort of a mini-manual for the function. The important thing (which I overlooked today) is the Dependencies list, which identifies special needs of the UDF, whether they be other UDFs, external programs, or even DLLs needing to be registered.

Regarding your error message, try this:
 Code:
$Val = BadFunc()
'Val is ' $Val ?
Then try
 Code:
$Val = BadFunc('SomeData')
'Val is ' $Val ?

Do you see what's happening? The result is that "BadFunc" is treated as an unquoted string and simply stored in the variable. The parenthesis are used to group what is now either nothing (ex 1) or a string (ex 2), which is simply displayed on the console. This is a simple example to illustrate the result of a missing UDF... your earlier problem had a much more complex syntax, and I'd wager that things were fine until the interpreter encountered the comma and thought "hey! what's this doing here, and where is the ')' to close the opening '(' from back there?"... of course, what it thought was different from what it said - "line 132 expected')'". ;\) You can prove this logic by supplying a second arg to BadFunc in example 2.

I don't know your kix or scripting experience, but this is a fairly common mistake that many can learn from.. I often give my class a page full of bad commands so they can recognize what's wrong from the often cryptic messages.

Glenn
_________________________
Actually I am a Rocket Scientist! \:D