Последовательность выполнения обработчиков

На одно и тоже событие для записи может быть целый ряд как внешних, так и внутренних обработчиков:

Рис. 1-3 – Список обработчиков для приходной накладной

Все они выстраиваются в цепочку по следующему правилу. Первыми выполняются внешние обработчики в порядке их загрузки, а уже потом внутренние. Причем последние в этой цепочке не показываются, они скрыты во внутреннем коде программы.

В списке могут показываться и правила операций (в нашем примере это "Приобретены ТМЦ"). С точки зрения языка СБиС++ правило операции – это тоже некоторый обработчик событий, описанных в этом правиле. Подробнее на этом остановимся немного позже.



При завершении выполнения команд одного обработчика следующий обработчик вызывается с помощью функции СледФункция():

Рис. 1-4 – Список всех доступных обработчиков

Если не указать явный вызов этой функции, то цепочка обработчиков будет прервана.

Бывают случаи, когда необходимо изменить последовательность выполнения действий. В этом случае может понадобиться следующая комбинация:

{
   перем пРезультат=СледФункция();
   ...
   вернуть пРезультат;
}
# сначала выполняются действия, описанные в следующей функции, а уже потом функция переходит к выполнению своих действий.