Событие |
Описание события |
Особенности обработки |
---|---|---|
Добавление До |
Выполняется перед добавлением строки в таблицу. На момент выполнения события строка не существует ни на клиенте, ни на сервере. В случае ошибки в вычислениях события выводится сообщение об ошибке, добавление строки отменяется |
Нельзя использовать функции изменения значения реквизитов, работающие в контексте текущей строки таблицы, поскольку на момент срабатывания события строка еще не существует |
Добавление После |
Выполняется после добавления строки в таблицу. На момент выполнения события строка существует только на компьютере пользователя. При копировании записи к моменту срабатывания события реквизиты еще не будут заполнены скопированными значениями. В случае ошибки в вычислениях события выводится сообщение об ошибке, добавление строки не отменяется |
На момент выполнения события функция СпрТблСтрКол() и свойство IDataSet.RecordCount возвращают старое количество строк, то есть без учета только что добавленной строки |
Удаление До |
Выполняется до удаления строки из таблицы. На момент выполнения события строка еще существует и на клиенте, и на сервере. Событие не выполняется при отмене добавления строки. Отмена добавления строки происходит в том случае, когда курсор уходит с вновь добавленной строки без заполнения хотя бы одного поля. Поле № не учитывается. В случае ошибки в вычислениях события выводится сообщение об ошибке, и удаление строки отменяется |
После выполнения события и до фактического удаления строки принудительно очищаются значения всех числовых реквизитов удаляемой строки, как следствие выполняются все вычисления на этих реквизитах. Поэтому, если в карточке справочника есть итоговые реквизиты, суммирующие данные из таблицы, то для их корректного пересчета можно использовать функцию СпрТблИтог() в вычислении на суммируемом реквизите таблицы. В этом случае не нужно дублировать пересчет итоговых реквизитов в событии «Таблица.Удаление После» |
Удаление После |
Выполняется после удаления строки из таблицы. На момент выполнения события строка удалена только на клиенте. Событие не выполняется при отмене добавления строки. Отмена добавления строки происходит в том случае, когда курсор уходит с вновь добавленной строки без заполнения хотя бы одного поля. Поле № не учитывается. В случае ошибки в вычислениях события выводится сообщение об ошибке, удаление строки не отменяется |
Нельзя использовать функции записи реквизитов, работающие в контексте текущей строки, так как на момент выполнения события удаляемой строки уже нет |
© Компания DIRECTUM, 2018 | Сообщество пользователей DIRECTUM |