Chris, I should clarify that. I think that what I said is true, if you know my assumptions. I'm assuming that a calling form may call any of n forms to perform various work. Now suppose my calling form gets the update-event. It knows only that 1 of n popup forms has returned. Therefore I need to inform the calling form somehow as to which popup form has just returned. I do this by including a special code as an argument to FrmUpdateForm, which is then passed as an argument for the update-event sent to the calling form. This clears up, I think, the "corrections" which you ahve made to my statement. To be really strict, nothing in life is really _necessary_. Things can only be conditionally necessary. That is, one must always ask "necessary for what?". And in this case, I claim that the reason for passing the identity of the called popup-form in the update-event is necessary for discriminating between multiple possible called popup forms. Of course, you can also leave this info lying around in a pre-agreed global variable. But then you can pass _all_ function parameters in this way. (It's gets more tricky for recursive function calls though.) Cheers from chilly Adelaide, Alan Kennington.
