Справка LibreOffice 26.8
Вкладка События позволяет назначать макрос на конкретное событие, происходящее в форме базы данных.
Чтобы связать событие с макросом, нужно сначала написать макрос, содержащий все команды, выполняемые при наступлении события. Затем следует назначить макрос соответствующему событию, нажав кнопку ... рядом с нужным событием. Откроется диалоговое окно Назначить макрос для выбора макроса.
Следующие действия можно настраивать отдельно, т.е. можно использовать собственные диалоговые окна для описания действия.
Отображение сообщения об ошибке.
Подтверждение процесса удаления (для записей).
Запрос параметров.
Проверка введённой информации при сохранении записи.
При удалении записи может появиться запрос подтвердить удаление, например, "Вы действительно хотите удалить пользователя Евгений?".
События, отображающиеся в диалоговом окне «События», нельзя изменять напрямую. Можно удалить событие из списка нажатием клавиши Del.
Ниже перечислены и описаны все события формы, которые могут быть связаны с макросом:
Событие Перед выгрузкой >наступает перед выгрузкой формы, отдельно от её источника данных.
Событие Перед обновлением наступает перед тем, как изменённое пользователем содержимое элемента управления будет записано в источник данных. Связанный макрос может, например, отменить действие, если вернёт значение FALSE.
Событие После обновления наступает после того, как изменённое пользователем содержимое элемента управления было записано в источник данных.
Событие Перед восстановлением наступает перед восстановлением формы. Верните True для подтверждения восстановления, и False для отмены операции.
Форма восстанавливается при выполнении одного из следующих условий.
Пользователь нажимает кнопку (HTML), являющуюся кнопкой восстановления.
При этом создаётся новая пустая запись в форме, связанной с источником данных. В последней записи, например, можно нажать кнопку Следующая запись.
Событие После восстановления наступает после того, как форма была восстановлена.
Событие Перед перезагрузкой наступает перед повторной загрузкой формы и до обновления её содержимого.
Событие Перед подтверждением наступает перед отправкой данных формы. Верните True для подтверждения передачи, и False для её остановки.
Событие Перед сменой записи наступает перед изменением указателя текущей записи - курсора SQL. Верните True, чтобы разрешить перемещение, и False в противном случае.
Событие Перед сохранением наступает перед изменением текущей записи или нескольких записей. Верните True, чтобы разрешить выполнение изменения, и False в противном случае. Например, связанный макрос может потребовать подтверждения операции в диалоговом окне.
Событие Подтверждение удаления наступает, как только из формы удаляются данные. Верните True для подтверждения удаления строки, и False в противном случае. Например, связанный с формой макрос может вывести диалоговое окно подтверждения.
Событие После смены записи наступает сразу же после изменения указателя текущей записи.
Событие После сохранения наступает сразу же после изменения текущей записи.
Событие Возникла ошибка наступает, если при доступе к источнику данных возникает ошибка. Это относится к формам, спискам и полям со списком.
Событие При выгрузке наступает сразу же после выгрузки формы, отдельно от её источника данных.
Событие При загрузке наступает сразу же после того, как форма была загружена.
Событие Заполнение параметров наступает, когда у загружаемой формы имеются параметры, которые нужно заполнить. Источником данных формы может быть, например, следующая команда SQL:
SELECT * FROM address WHERE name=:name
Где :name - это параметр, который должен быть заполнен при загрузке. Если возможно, параметр автоматически заполняется из родительской формы. Если заполнить параметр нельзя, то вызывается данное событие и связанный с ним макрос, который может заполнить параметр. Верните True, чтобы продолжить выполнение параметризованного запроса, или False в противном случае.
Событие При перезагрузке наступает сразу же после повторной загрузки формы и обновления её содержимого.
Макросы могут прерывать исполнение события при возвращении логического значения: True — исполнение события продолжается и False — исполнение события останавливается.
Следующие события можно прервать при возврате значения False:
Перед сохранением
Перед сменой записи
Перед подтверждением
Перед обновлением
Заполнение параметров