4D v16.3Catching Commands |
||
|
4D v16.3
Catching Commands
Catching Commands
The Catching Commands is a page of the Runtime Explorer that enables you to add additional breaks to your code by catching calls to 4D commands. Catching a command enables you to start tracing the execution of any process as soon as a command is called by that process. Unlike a break point, which is located in a particular project method (and therefore triggers a trace exception only when it is reached), the scope of catching a command includes all the processes that execute 4D code and call that command. Catching a command is a convenient way to trace large portions of code without setting break points at arbitrary locations. For example, if a record that should not be deleted is deleted after you have executed one or several processes, you can try to reduce the field of your investigation by catching commands such as DELETE RECORD and DELETE SELECTION. Each time these commands are called, you can check if the record in question has been deleted, and thus isolate the faulty part of the code. With some experience, you can combine the use of Break points and command catching. To open the Caught Commands page: 1. Choose Runtime Explorer from the Run menu. The Runtime Explorer window appears. 2. Click on the Catch button to display the Caught Commands List: This page lists the commands to be caught during execution. It is composed of two columns:
To add a new command: 1. Click on the Add New Catch button (in the shape of a +) located below the list. A new entry is added to the list with the ALERT command as default. You can then click on label ALERT and enter the name of the command you want to catch. Once you have finished, hit Enter or Return to validate your choice. To edit the name of a caught command:
To disable or enable a caught command:
Note: Disabling a caught command has almost the same effect as deleting it. During execution, the debugger spends almost no time on the entry. The advantage of disabling an entry is that you do not have to recreate it when you need it again. To delete a caught command:
To set a condition for catching a command:
Note: To remove a condition, delete its formula. Adding conditions allows you to stop execution when the command is invoked only if the condition is met. For example, if you associate the condition "Records in selection([Emp]>10)" with the break point on the DELETE SELECTION command, the code will not be stopped during execution of the DELETE SELECTION command if the current selection of the [Emp] table only contains 9 records (or less). Adding conditions to caught commands slows the execution, because the condition has to be evaluated each time an exception is met. On the other hand, adding conditions accelerates the debugging process, because 4D automatically skips occurrences that do not match the conditions.
See also
|
PROPERTIES
Product: 4D
HISTORY
ARTICLE USAGE
4D Language Reference ( 4D v16) |