Add Function wizard

The Add Procedure wizard helps you add a function to an ABL procedure or include file.

This wizard appears when you select Source > Add Function.

The following controls are available:

Function (Required) Select this option to create a function. Enter a function name in the Name field.
Note: This option is available only if the current file open in the ABL Editor is an ADM (adm1 or adm2) file.
Override (Required) Select this option to have the Name field display a list of the functions for which you can create overrides. This list is the user-defined functions of all Super Procedures defined for the procedure file (excluding those user-defined functions defined as PRIVATE). This option is disabled when there are no functions to override.
Note: This option is available only if the current file open in the ABL Editor is an ADM (adm1 or adm2) file.
Name (Required) Specifies the name of the function.
Insert catch block If checked, adds a CATCH block to the generated procedure stub to support structured error handling.
Return type Specifies the data type of the value returned by the function.
Extent If checked, specifies that the value returned by the function is an extent (array) value and enables the adjacent field to the right where you enter the number of elements in the extent.
Insert catch block If checked, adds a CATCH block to the generated function stub to support structured error handling.
Insert finally block If checked, adds a FINALLY block to the generated function stub to support structured error handling.
Private Specifies the access modifier that applies to a function. If selected, the function cannot called from any other ABL procedure file.
DB-Required If checked, a preprocessor directive is wrapped around the generated function allowing it to be conditionally excluded from compilation.

For more information, see Specifying DB-Required code blocks.

Note: A function that is not DB-Required is excluded from a data object's client proxy r-code file and only included in the data object's main r-code file.
Insertion position Determines where the function code is inserted in the source file.