I think the basic problem here may be scope of variables defined in calling program. Thus
** call.prg
NewVar = "Somevalue"
Do Form ThatForm
Return
If the form is not modal, the prg will continue to the Retrun, its variables will go out of scope, and so ... the problem??
You need to make the form modal, I think.
HTH
Mike
Regards
Mike