Contents
Index 🔎︎

# Database Form Events

The Events tab page, allows you to assign a macro to certain events which occur in a database form.

To access this command...

Open context menu of a selected form element - choose Form Properties - Events tab.

Open Form Design toolbar, click Form Properties icon - Events tab.

To link an event with a macro, first write a macro that contains all the commands to be executed when the event happens. Then assign this macro to the respective event by clicking the ... button beside the corresponding event. The Assign Macro dialog opens, where you can select the macro.

The following actions can be configured individually, meaning that you can use your own dialogs to depict an action:

1. Displaying an error message,

2. Confirming a delete process (for data records),

3. Querying parameters,

4. Checking input when saving a data record.

For example, you can issue a "confirm deletion" request such as "Really delete customer xyz?" when deleting a data record.

The events that are shown in the Events dialog cannot be edited directly. You can remove an event from the list by pressing the Del key.

The following lists and describes all events in a form that can be linked to a macro:

## After record action

The After record action event occurs directly after the current record has been changed.

## After record change

The After record change event occurs directly after the current record pointer has been changed.

## Before record action

The Before record action event occurs before the current record or record set are changed. Return True when changing is allowed, otherwise False. For example, the linked macro can request confirmation in a dialog.

## Before record change

The Before record change event occurs before the current record pointer - SQL cursor - is changed. Return True when moving is allowed, otherwise False.

## Before reloading

The Before reloading event occurs before the form is reloaded. The data content has not yet been refreshed.

## Before submitting

The Before submitting event occurs before the form data is sent. Returning True approves the submission, False stops it.

## Before unloading

The Before unloading event occurs before the form is unloaded; that is, separated from its data source.

## Before update

The Before update event occurs before the control content changed by the user is written into the data source. The linked macro can, for example, prevent this action by returning FALSE.

## After update

The After update event occurs after the control content changed by the user has been written into the data source.

## Prior to reset

The Prior to reset event occurs before a form is reset. Returning True approves the reset, returning False cancels the operation.

A form is reset if one of the following conditions is met:

1. The user presses an (HTML) button that is defined as a reset button.

2. A new and empty record is created in a form that is linked to a data source. For example, in the last record, the Next Record button may be pressed.

## After resetting

The After resetting event occurs after a form has been reset.

## Confirm deletion

The Confirm deletion event occurs as soon as data has been deleted from the form. Return True to allow row deletion, False otherwise. For example, the linked macro can request confirmation in a dialog.

## Error occurred

The Error occurred event is activated if an error occurs when accessing the data source. This applies to forms, list boxes and combo boxes.

## Fill parameters

The Fill parameters event occurs when the form to be loaded has parameters that must be filled out. For example, the data source of the form can be the following SQL command:

SELECT * FROM address WHERE name=:name

Here :name is a parameter that must be filled out when loading. The parameter is automatically filled out from the parent form if possible. If the parameter cannot be filled out, this event is called and a linked macro can fill out the parameter. Return True when the execution of the parametrized statement should continue, False otherwise.

## When loading

The When loading event occurs directly after the form has been loaded.

## When reloading

The When reloading event occurs directly after the form has been reloaded. The data content has already been refreshed.

## When unloading

The When unloading event occurs directly after the form has been unloaded; that is, separated from its data source.

## Vetoable events

Macros can interrupt event execution when they return a boolean value: True allows the execution of the event to continue and False stops the event execution.

The following events are interruptable by returning False:

- Before record action

- Before record change

- Before submitting

- Before update

- Fill parameters