Выполнение кода через заданное время (setTimeout) в 1С Предприятие 8.3

Обработчик не останавливает выполнение скрипта и ожидает запуска, а ставит метку через какое время запустить процедуру которая указана первым параметром.

Пример:

ПодключитьОбработчикОжидания("ПроцедураТетовая",0.1,Истина);

процедура на которая будет запущена должна быть экспортной.

 

Подробное описание

Обработчик ожидания – это механизм, который используется на стороне клиентского приложения (в пользовательских формах и т.п.). Его задача запустить процесс, который выполнит определённые действия однократно или через заданный интервал времени. Обработчик ожидания выполняет свои действия параллельно (в выделенном потоке) основной работе пользователя.

 

ПодключитьОбработчикОжидания(<ИмяПроцедуры>, <Интервал>, <Однократно>) – Подключает вызов указанной процедуры 1С через определённый интервал времени.

  • ИмяПроцедуры — <Строка> – Путь к экспортируемой процедуре. Процедура должна располагаться на клиенте и не содержать параметров.
  • Интервал — <Число> – Интервал (точность до 0,1 секунды) в секундах через который будет осуществляться вызов процедуры.
  • Однократно — <Булево> – Однократно или многократно будет исполнен код подключаемой процедуры.

ОтключитьОбработчикОжидания(<ИмяПроцедуры>) – Отключает вызов процедуры, которая была подключена ранее с помощью ПодключитьОбработчикОжидания.

  • ИмяПроцедуры — <Строка> — Путь к процедуре, которая должна быть отключена.

 

Вызов обработчика ожидания продолжается до тех пор, пока пользовательская форма не будет закрыта или пока не будет вызвана процедура ОтключитьОбработчикОжидания.

Обработчик ожидания доступен только на клиенте. Чтобы вызвать серверную функцию, необходимо обратиться к ней из клиентского окружения.

&НаКлиенте
Процедура ПодключитьОбработчик()
 ПодключитьОбработчикОжидания("ОбработатьОжидание", 60, Ложь);
КонецПроцедуры
 
&НаКлиенте
Процедура ОбработатьОжидание()
 ОбработатьОжиданиеНаСервере();
КонецПроцедуры
 
&НаСервере
Процедура ОбработатьОжиданиеНаСервере()
 //Выполняем серверный код 1С
КонецПроцедуры;

Источник: http://life1c.ru/post/2115