IIF( test1, match1(@lnVar1, @lnVar2),; IIF(test2, match2(@lnVar1, @lnVar2),; nomatch(@lnVar1, @lnVar2)))and
LOCAL lnVar1, lnVar2 LOCAL test1, test2 * Change these values to see how it works with each test1 = .f. test2 = .f. TestMatch(test1,test2,@lnVar1, @lnVar2) ? lnVar1, lnVar2 procedure TestMatch lpara; test1, test2, lnVar1, lnVar2 if test1 match1(@lnVar1, @lnVar2) return endif if test2 match2(@lnVar1, @lnVar2) return endif nomatch(@lnVar1, @lnVar2) endproc FUNCTION match1 LPARAMETERS tnVar1, tnVar2 tnVar1 = 1 tnVar2 = 2 ENDFUNC FUNCTION match2 LPARAMETERS tnVar1, tnVar2 tnVar1 = 10 tnVar2 = 20 ENDFUNC FUNCTION nomatch LPARAMETERS tnVar1, tnVar2 tnVar1 = -1 tnVar2 = -2 ENDFUNCif you like if-else-if stacks, this will work as well
procedure TestMatch lpara; test1, test2, lnVar1, lnVar2 do case case test1 match1(@lnVar1, @lnVar2) case test2 match2(@lnVar1, @lnVar2) otherwise nomatch(@lnVar1, @lnVar2) endcase endprocupdate:
ICASE(.T.,TestMatch(test1,test2,@lnVar1, @lnVar2))Rick, I do not understand what you are trying to do. It returns .T. and altere teh paras, one way is more or less like the next.