Последовательность выполнения обработчиков |
На одно и тоже событие для записи может быть целый ряд как внешних, так и внутренних обработчиков:
Рис. 1-3 – Список обработчиков для приходной накладной
Все они выстраиваются в цепочку по следующему правилу. Первыми выполняются внешние обработчики в порядке их загрузки, а уже потом внутренние. Причем последние в этой цепочке не показываются, они скрыты во внутреннем коде программы.
В списке могут показываться и правила операций (в нашем примере это "Приобретены ТМЦ"). С точки зрения языка СБиС++ правило операции – это тоже некоторый обработчик событий, описанных в этом правиле. Подробнее на этом остановимся немного позже.
При завершении выполнения команд одного обработчика следующий обработчик вызывается с помощью функции СледФункция():
Рис. 1-4 – Список всех доступных обработчиков
Если не указать явный вызов этой функции, то цепочка обработчиков будет прервана.
Бывают случаи, когда необходимо изменить последовательность выполнения действий. В этом случае может понадобиться следующая комбинация:
{
перем пРезультат=СледФункция();
...
вернуть пРезультат;
}
# сначала выполняются действия, описанные в следующей функции, а
уже потом функция переходит к выполнению своих действий.