Позиционирует выборку в начало.
Синтаксис
Сбросить()Примеры платформы
Выб.Сбросить();
Пока Выб.Следующий() Цикл
Объект = Выб.Получить();
ЗаписатьXML(Запись, Объект);
КонецЦикла;Полное описание, параметры и ограничения
ВыборкаДанных.Сбросить (DataSelection.Reset)
ВыборкаДанных (DataSelection)
Сбросить (Reset)
Доступен, начиная с версии 8.0.
Синтаксис:
Сбросить()
Описание:
Позиционирует выборку в начало.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Примечание:
После вызова метода Следующий выборка спозиционируется на первую запись в ней.
Пример:
Выб.Сбросить();
Пока Выб.Следующий() Цикл
Объект = Выб.Получить();
ЗаписатьXML(Запись, Объект);
КонецЦикла;
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Повторно пройти настоящую выборку собственных изменений
ВыборкаДанных создается планом обмена, не результатом SQL-запроса другого типа. Номер сообщения берется из реальной записи сообщения.
Где и как запускать
Сервер собственной учебной базы; также толстый клиент или внешнее соединение, если это разрешено указанным API.
Подготовка
Только собственная учебная конфигурация. Все указанные имена сначала создайте в Конфигураторе; объекты рабочей базы не заменяйте. Здесь код не запускается.
Настройте свой план обмена УчебныйОбмен с собственным узлом 02 и составом УчебныеТовары, зарегистрируйте свои учебные изменения. Это действие изменяет регистрацию номеров сообщений, не полностью безвредное чтение; никаких реальных файлов или передачи сети нет.
&НаСервереБезКонтекста
Процедура ДваждыПройтиУчебныеИзменения()
Узел = ПланыОбмена.УчебныйОбмен.НайтиПоКоду("02");
Если Не ЗначениеЗаполнено(Узел) Тогда
ВызватьИсключение "Создайте собственный узел 02";
КонецЕсли;
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.УстановитьСтроку();
Сообщение = ПланыОбмена.СоздатьЗаписьСообщения();
Сообщение.НачатьЗапись(ЗаписьXML, Узел);
Выборка = ПланыОбмена.ВыбратьИзменения(Узел, Сообщение.НомерСообщения, Метаданные.Справочники.УчебныеТовары);
ПервыйПроход = 0;
Пока Выборка.Следующий() Цикл
ПервыйПроход = ПервыйПроход + 1;
КонецЦикла;
Выборка.Сбросить();
ВторойПроход = 0;
Пока Выборка.Следующий() Цикл
ВторойПроход = ВторойПроход + 1;
КонецЦикла;
Сообщение.ЗакончитьЗапись();
ТекстСообщения = ЗаписьXML.Закрыть();
Сообщить("Проходы: " + Строка(ПервыйПроход) + ", " + Строка(ВторойПроход));
Сообщить("Длина оболочки сообщения: " + Строка(СтрДлина(ТекстСообщения)));
КонецПроцедурыРазбор по шагам
Создайте запись сообщения в памяти для своего узла.
Получите однородную выборку с фильтром своего справочника.
Сбросьте и заново посчитайте строки той же выборки.
Как проверить результат
Номер сообщения не выдуман константой.
Сбросить вызывается на ВыборкаДанных; при неизменной выборке количества двух проходов должны совпасть.
Ожидаемый результат
Показан возврат позиции настоящей выборки в начало.
На что обратить внимание
ПланыОбмена.ВыбратьИзменения проставляет номер сообщения в регистрации изменений. Этот пример не сериализует объекты и не является полноценным сообщением обмена для приема.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.