| Previous Next | Contents |
CPro.Make,CPro.Qualify if a dialogue-box refers to an invalid namespace as part of a variable name, we cannot safely continue the Make so this now traps all the way out and exits Make with Error 72. Also requires re-ordered lines in CPro.AddProperties so if we do trap out we have not messed up our internal list of variables and their spaces.
Designer.Run traps the SIGNAL from CPro.Make and reports the error to the session. This allows you to fix the problem and rerun safely.
CPro.ShowError re-instates the old debug=-1 setting from shareware Causeway. This puts a simple trap around anything Causeway executes (e.g. actions on buttons/menus, refresh expressions on data) and reports the error in an Abort/Retry/Ignore messagebox. The error text is generated from #.CPro.errortext by substituting various fields such as {ctl} to identify the control which caused the problem. In many cases it will be safe for the user to ignore the error, at least to the point of saving some data and exiting. Obviously your error text should encourage them to report the problem to you, along with the diagnostic message provided.
This does not entirely remove the need for a global trap setting, as a failure in (for example) a Class.XX function will not be trapped.