Salesforce

ABL Debugging: -debugalert Startup Parameter

« Go Back

Information

 
TitleABL Debugging: -debugalert Startup Parameter
URL Name19455
Article Number000120386
EnvironmentProduct: Progress
Version: 9.x
Product: OpenEdge
Version: 10.x, 11.x, 12.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

What does SESSION:DEBUG-ALERT do
Steps to Reproduce
Clarifying Information
Error Message
Defect Number
Enhancement Number
Cause
Resolution
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.
Workaround
Notes
Keyword Phrase
Last Modified Date2/10/2022 1:41 AM

Powered by