1C 8 бесконечный цикл

1. AlexDnepr 27.09.23 17:52 Сейчас в теме
Добрый день. Не пойму почему цикл не заканчивается, а переходит на первую строку и продолжается бесконечно

 ВыборкаВходящих = ДокВход.Выбрать(НачалоДня(ДатаБух1),КонецДня(ДатаБух2)); 
	 
	     Пока ВыборкаВходящих.Следующий() Цикл
		 ОбработкаПрерыванияПользователя();
		      ПлатВход=ВыборкаВходящих.ПолучитьОбъект();
              ДатаСтар=ПлатВход.Дата;
			 
			  ПлатВход.Дата=Дата(Формат(ДатаСтар, "ДФ=dd.MM.yyyy")+" "+Ч+":"+М+":"+С);
		Если ПлатВход.Проведен=Истина тогда	  
		ПлатВход.Записать(РежимЗаписиДокумента.Проведение);
		иначе
	    ПлатВход.Записать();
		КонецЕсли;
		С=С+1;
	     Сообщить("Изменен "+ПлатВход);

         КонецЦикла;
	Сообщить("ГОТОВО!");
Показать
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. user1936667 27.09.23 18:23 Сейчас в теме
(1)
почему цикл не заканчивается
Потому что записью документа с измененной датой ты сбиваешь выборку. Не выпендривайся и используй запрос.
2. Sashares 35 27.09.23 18:23 Сейчас в теме
Возможно это как-то связано с тем, что:
Объект этого типа возвращается методом Выбрать у объекта типа ДокументМенеджер.<Имя документа> и представляет собой специализированный способ перебора документов.
Обход документов выполняется системой динамически. Это означает, что использование выборки не считывает все документы сразу, а выбирает их порциями из базы данных. Такой подход позволяет достаточно быстро обходить с помощью выборки большие списки документов и не загружает в память всех элементов выборки.


Используйте запрос.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот