Пауза в исполнении кода в 1С

В языке 1С нет команды паузы. Ну нет и всё тут! Парадигма: если чего то нет, что вам нужно, значит вы что то делаете не так (с) конечно хороша… Но усложнять код ради «выверта»? Код должен быть читаем и прост! Ну вот как например ПРОСТО сделать 10 попыток чтения чего-то с паузой в 60 секунд например не городя огород из костылей? Например, элементарная схема:

	    
  Для Сч = 1 По 10 Цикл
       рез=ПопытатьсяЧтоТоСделать();           
	если рез=Ложь тогда
	 ГлПауза(1);
	иначе	
	    Прервать;
	конецесли				
 конеццикла

А вот так можно реализовать функцию ГлПауза:

 Процедура глПауза(Сек)
scr = Новый COMОбъект("WScript.Shell");
scr.Run("sleep "+СокрЛП(Число(Сек)),0,1);
КонецПроцедуры;

Вариант 2 с загрузкой процессора:

Процедура глПауза(Сек)
	КонДата = ТекущаяДата() + Сек;
  	Пока ТекущаяДата() < КонДата Цикл
      // ждемссс....
  	КонецЦикла;	
КонецПроцедуры

Комментарии:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Лимит времени истёк. Пожалуйста, перезагрузите CAPTCHA.

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.