The
-debugalert startup parameter adds a
Help button to all Alert-Boxes in an interactive session, whether it is a Character Client (ChUI) or Graphical Client (GUI).
When the Help button is selected, the ABL Stack Trace is displayed, along with a "Debug" button to start the Progress debugger.
This debugalert functionality may be useful in the following cases:
- Locating the source of error messages, such as: ** <file-name> record not on file. (138)
- Starting debugging at a certain point in an application. For example, a developer who uses SmartObjects might put a MESSAGE statement into a local version of a procedure or function to start debugging at that point.
Starting with
OpenEdge 10.1x, the debugalert parameter also influences what is written to a client log file:
- By default, if a client log is active (including .server.log for AppServer/WebSpeed) all error messages will be written to that log.
- If the -debugalert is active, the ABL stack trace will also be written to the log file, immediately after the error message.
- This is useful for non-interactive clients, or for errors that are displayed in the status-area instead of in an alert-box. (Such as the default behavior for character client)
An alternative way to activate this behavior is to use the
SESSION:DEBUG-ALERT attribute. This attribute can be set to TRUE to enable the feature, or to FALSE to disable it.
In GUI client only:The use of the -debugalert session parameter may cause a help dialog to appear behind the OpenEdge application window. When this happens, the dialog can only be accessed via
Alt-Tab or by dragging the dialog box from behind the window.
Follow these steps to recreate the problem:
- Open the AppBuilder directly.
- Connect to the Sports database.
- Open a new procedure window.
- Create a simple window and a browse.
- In the query builder, select the "CHECK SYNTAX" button.
Notice that the alert-box appears behind the Query Builder window, and that the NEW PROCEDURE window appears to parent the dialogue-box.
The problem can be resolved by removing any reference to
-debugalert from the Icon/Shortcut target properties and any startup file that is called for the AppBuilder. Alternatively, set SESSION:DEBUG-ALERT = FALSE.