HALT


Синтаксис

HALT( [ ErrorCode: NUMERIC[0] ];
      [ AbortProg: ABORTPROG_IDENT ] );

ABORTPROG_IDENT = ABORTPROG

Описание

Если параметр ErrorCode равен нулю, процедура успешно завершает выполнение текущей программы, не выбрасывая исключения. Если же параметр ErrorCode не равен нулю, процедура выбрасывает исключение класса Exc_Halt с кодом ErrorCode; выброс исключения не сопровождается сообщением об ошибке. По умолчанию параметр ErrorCode принимает значение -1.

Параметр ABORTPROG указывает, следует ли сбросить очередь команд, если выброшенное данной процедурой необработанное исключение завершит выполнение программного комплекса.

Способ запуска программного комплекса Наличие ABORTPROG Поведение
Опциями RunProg, CALL или CallBP нет Если на старте программного комплекса очередь событий была непуста, будет выброшено исключение 547.
Опции, добавленные процедурой LIKEMENU в данном программном комплексе, будут исполнены
есть Исполнение очереди команд меню будет прекращено
В качестве обработчика события нет Исполнение или аннулирование опций, уже бывших в очереди до запуска программного комплекса зависит только от типа события.
Опции, добавленные процедурой LIKEMENU в данном программном комплексе, будут исполнены независимо от типа события
есть Исполнение или аннулирование всей очереди команд зависит только от типа события

Параметр ABORTPROG является пережитком, от его применений следует избавляться. В частности, комбинацию "STDFORM без исключения, по нажатию кнопки отказа 'X' - HALT(, ABORTPROG)" следует заменять кнопкой отказа типа 'Z', выбрасывающей исключение Exc_Halt, прерывающее исполнение очереди команд.

См. также