Hi Sergey,
>1. The form Refresh doesn't have DODEFAULT() or NODEFAULT
> Result: the parent class code isn't executed, form refreshes after the end of Refresh() code.
Correct
>2. The form Refresh has DODEFAULT() only
> Result: the parent class code executed, the rest of form Refresh() code runs and form refreshes after the end of Refresh() code.
You'd think that's the way it would work, but not from the tests I've run ... the parent class code executes, the form refreshes, the rest of the form Refresh() code runs and the form refreshes
again!
>3. The form Refresh have DODEFAULT() and NODEFAULT
> Result: the parent class code executed and form refreshes, the rest of the form Refresh() code runs w/o second form refresh.
Correct
>4. The form Refresh has NODEFAULT
> Result: the parent class code executed, the rest of form Refresh() code runs. No form refresh at all?
No ... how can the parent class code execute if you don't have a DODEFAULT()? The form Refresh() code runs, but that's all. You are correct that there is no form refresh ... the rest of the objects on the form won't refresh.
>Also, I don't see any way to execute parent and form Refresh() coded and get form refresh at the end of form's Refres() code only.
Yeah, that seems to be a tricky one. The only way that I can see that you could make it happen would be if you want to run the form's Refresh() code first, you could have the DODEFAULT() after it (with a NODEFAULT after that).
I think that REFRESH() has always been a little weird anyway ... this seems to prove that it's still a bit quirky.
~~Bonnie