ABL Debugging: -debugalert Startup Parameter

« Go Back


EnvironmentProduct: Progress
Version: 9.x
Product: OpenEdge
Version: 10.x, 11.x
OS: All Supported Operating Systems
Other: debugalert
Question/Problem Description
Use of startup parameter -debugalert to obtain an ABL Stack Trace for a Progress application at runtime

What is the -debugalert Startup Parameter

Steps to Reproduce
Clarifying Information
Error Message
Defect/Enhancement Number
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:
  1. Open the AppBuilder directly.
  2. Connect to the Sports database.
  3. Open a new procedure window.
  4. Create a simple window and a browse.
  5. 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.
Last Modified Date6/7/2017 1:25 PM

The origins of the information on this site may be internal or external to Progress Software Corporation (“Progress”). Progress Software Corporation makes all reasonable efforts to verify this information. However, the information provided is for your information only. Progress Software Corporation makes no explicit or implied claims to the validity of this information.

Any sample code provided on this site is not supported under any Progress support program or service. The sample code is provided on an "AS IS" basis. Progress makes no warranties, express or implied, and disclaims all implied warranties including, without limitation, the implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the sample code is borne by the user. In no event shall Progress, its employees, or anyone else involved in the creation, production, or delivery of the code be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the sample code, even if Progress has been advised of the possibility of such damages.

Was this article helpful?


Your feedback is appreciated.

Please tell us how we can make this article more useful.

Characters Remaining: 1025