It's all down to scope.
The following is a better solution as it avoids exposing the variables in the function:
code:
Break ON
Report(InitialiseVariables())
Function InitialiseVariables()
Dim $PCsetting[4]
$PCsetting[1]='one'
$PCsetting[2]='two'
$PCsetting[3]='three'
$InitialiseVariables=$PCSetting
EndFunction
Function Report($PCSetting)
For Each $element In $PCsetting
$element ?
Next
EndFunction
If you really need the array to have a global scope then the following works:
code:
Break ON
GLOBAL $PCSetting
$PCSetting=InitialiseVariables()
Report()
Function InitialiseVariables()
Dim $PCsetting[4]
$PCsetting[1]='one'
$PCsetting[2]='two'
$PCsetting[3]='three'
$InitialiseVariables=$PCSetting
EndFunction
Function Report()
For Each $element In $PCsetting
$element ?
Next
EndFunction
Don't forget the array subscript starts at zero, not one.
[ 03 May 2002, 12:36: Message edited by: Richard Howarth ]