Съдържание
Индекс 🔎︎

# Събития на формуляри за бази от данни

Разделът Събития ви позволява да припишете макрос на определени събития, възникващи във формуляр за база от данни.

За достъп до тази команда...

Отворете контекстното меню на избран елемент от формуляр - изберете раздела Свойства на формуляр - Събития.

Отворете лентата с инструменти Проектиране на формуляр, щракнете върху иконата Свойства на формуляр - раздел Събития.

За да свържете събитие с макрос, първо напишете макрос, съдържащ всички команди, които да се изпълнят при възникване на събитието. След това припишете макроса на съответното събитие, като щракнете върху бутона ... срещу името на събитието. Ще се отвори диалоговият прозорец Приписване на макрос, в който можете да изберете макроса.

Следващите действия могат да бъдат конфигурирани поотделно, което означава, че можете да използвате ваши собствени диалогови прозорци, за да визуализирате действието:

1. показване на съобщение за грешка,

2. потвърждаване на изтриване (за записи с данни),

3. запитване за параметри,

4. Проверка на въведените данни при съхраняване на запис.

Например, можете да покажете запитване за потвърждаване на изтриването от рода на „Наистина ли желаете да бъде изтрит клиентът xyz?“ при изтриване на запис с данни.

Събитията, показани в диалоговия прозорец „Събития“, не могат да се редактират пряко. Можете да премахнете събитие от списъка, като натиснете клавиша Del.

По-долу са изброени и описани всички събития във формуляр, които могат да бъдат свързани с макрос:

## Възникнала грешка

Събитието При възникване на грешка се активира, ако възникне грешка при опит за достъп до източника на данни. Това важи за формуляри, списъчни полета и комбинирани полета.

## Потвърждаване на изтриване

Събитието Потвърждаване на изтриване възниква точно след като данните са били изтрити от формуляра. Върнете True, за да разрешите изтриването на реда, или False в противен случай. Свързаният макрос може например да изисква потвърждение чрез диалогов прозорец.

## Преди записване

Събитието Преди записване възниква преди да бъде променен текущият запис. Върнете True, ако промяната е разрешена, и False в противен случай. Свързаният макрос може например да изисква потвърждение чрез диалогов прозорец.

## Преди обновяване

Събитието Преди обновяване възниква преди промененото от потребителя съдържание на елемента за управление да се запише в източника на данни. Свързаният макрос може например да предотврати това действие, като върне FALSE.

## След обновяване

Събитието След обновяване възниква след като промененото от потребителя съдържание на контролата е било записано в източника на данни.

## Преди връщане в начално състояние

Събитието Преди връщане в начално състояние възниква преди формулярът да бъде приведен в начално състояние. Върната стойност True потвърждава нулирането, а False отказва операцията.

Формулярът се връща в начално състояние, ако се изпълни едно от следните условия:

1. ако потребителят натисне бутон (в HTML), зададен като бутон за връщане в начално състояние;

2. ако във формуляр, свързан с източник на данни, бъде създаден нов празен запис – например, може в посления запис да бъде натиснат бутонът следващ запис.

## След връщане в начално състояние

Събитието След връщане в начално състояние възниква след като формулярът е бил върнат в начално състояние.

## Преди освобождаване

Събитието Преди освобождаване възниква преди премахването на формуляра от паметта, т.е. отделянето му от съответния източник на данни.

## Преди подаване

Събитието Преди подаване възниква преди да бъдат изпратени данните от формуляра. Връщането на True потвърждава подаването, а False го спира.

## Преди презареждане

Събитието Преди презареждане възниква преди формулярът да бъде презареден. Съдържанието на данните в този момент още не е опреснено.

## Преди смяна на записа

Събитието Преди смяна на записа възниква преди да се промени указателят на текущия запис, т.е. курсорът на SQL. Върнете True, ако придвижването е позволено, и False в противен случай.

## При зареждане

Събитието При зареждане възниква веднага след като формулярът бъде зареден.

## При освобождаване

Събитието След освобождаване възниква точно след премахването на формуляра от паметта, т.е. отделянето му от съответния източник на данни.

## При попълване на параметри

Събитието При попълване на параметри възниква, когато зарежданият формуляр има параметри, които трябва да бъдат попълнени. Например източник на данни за формуляра би могла да бъде следната команда на SQL:

SELECT * FROM address WHERE name=:name

Тук :name е параметър, който трябва да бъде попълнен при зареждане. Ако е възможно, той автоматично се попълва от родителския формуляр. Ако параметърът не може да бъде попълнен, се извиква това събитие и свързаният с него макрос може да попълни параметъра. Върнете True, ако изпълнението на параметризирания оператор трябва да продължи, и False в противен случай.

## При презареждане

Събитието При презареждане възниква, когато формулярът е бил презареден. В този момент съдържанието на данните вече е опреснено.

## След записване

Събитието След записване възниква точно след като текущият запис е бил променен.

## След смяна на записа

Събитието След промяна на запис възниква точно след като указателят на текущия запис е бил променен.

## Събития с възможност за забраняване

Макросите могат да прекъсват изпълнението на събития, като връщат булева стойност: True позволява изпълнението на събитието да продължи, а False го спира.

Следните събития могат да бъдат прекъсвани чрез връщане на False:

- Преди записване

- Преди смяна на записа

- Преди подаване

- Преди обновяване

- Попълване на параметри