From 0af6c808e150ca10407cc20bca508ebd94a141e3 Mon Sep 17 00:00:00 2001 From: Dmitry Date: Thu, 1 Sep 2022 14:45:35 +0300 Subject: [PATCH] =?UTF-8?q?+=20=D1=81=D0=B1=D1=80=D0=BE=D1=81=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=B7=D0=B8=D1=86=D0=B8=D0=B8=20=D0=BF=D1=80=D0=B8=20?= =?UTF-8?q?=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD=D0=B8=D0=B8=20=D1=80?= =?UTF-8?q?=D0=B0=D0=B7=D0=BC=D0=B5=D1=80=D0=B0=20=D0=B8=D0=BB=D0=B8=20?= =?UTF-8?q?=D0=BD=D0=B0=D1=87=D0=B0=D0=BB=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Итератор/Ext/ObjectModule.bsl | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src/Итератор/Ext/ObjectModule.bsl b/src/Итератор/Ext/ObjectModule.bsl index 180dbb8..08161a9 100644 --- a/src/Итератор/Ext/ObjectModule.bsl +++ b/src/Итератор/Ext/ObjectModule.bsl @@ -248,6 +248,7 @@ Функция Начать() Экспорт Коллекция = Новый Массив; + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция НачатьС(_Значение) Экспорт @@ -255,14 +256,17 @@ КонецФункции Функция ВзятьИз(_Значение) Экспорт Коллекция = ЗагрузитьКоллекцию(_Значение); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция РазделитьСтроку(Знач Стр, Знач Разделитель, Знач ВключатьПустые=Ложь) Экспорт Коллекция = СтрРазделить(Стр, Разделитель, ВключатьПустые); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция ПоДиапазону(Число_С, Число_По) Экспорт Коллекция = __МассивПоДиапазонуЧисел(Число_С, Число_По); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция УстановитьКонтекст(_Контекст) Экспорт @@ -298,6 +302,7 @@ ЭтотОбъект.Начать(); КонецЕсли; Коллекция = __Фильтр(Код, Коллекция, Контекст); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция Свернуть(Знач Код, Знач Результат = Неопределено) Экспорт @@ -311,6 +316,7 @@ ЭтотОбъект.Начать(); КонецЕсли; Коллекция = __ВзятьНеБольше(Коллекция, Количество); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция Первые(Знач Количество) Экспорт @@ -321,6 +327,7 @@ ЭтотОбъект.Начать(); КонецЕсли; Коллекция = __Пропустить(Коллекция, Количество); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция Срез(Знач Начало=0, Знач Количество=0) Экспорт @@ -352,6 +359,7 @@ ЭтотОбъект.Начать(); КонецЕсли; Коллекция = __Транспонировать(Коллекция); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция Сортировать(Знач Направление=Неопределено) Экспорт @@ -427,6 +435,7 @@ ЭтотОбъект.Начать(); КонецЕсли; Коллекция.Очистить(); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция Получить(Индекс) Экспорт @@ -440,6 +449,7 @@ ЭтотОбъект.Начать(); КонецЕсли; Коллекция.Удалить(Индекс); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция Установить(Индекс, Знач Значение) Экспорт @@ -474,6 +484,7 @@ КонецЕсли; Значение = ЭтотОбъект.Получить(0); ЭтотОбъект.Удалить(0); + ЭтотОбъект.СброситьПозицию(); Возврат Значение; КонецФункции Функция СнятьПоследний() Экспорт @@ -483,6 +494,7 @@ Индекс = ЭтотОбъект.ВГраница(); Значение = ЭтотОбъект.Получить(Индекс); ЭтотОбъект.Удалить(Индекс); + ЭтотОбъект.СброситьПозицию(); Возврат Значение; КонецФункции @@ -491,6 +503,7 @@ ЭтотОбъект.Начать(); КонецЕсли; ОбщегоНазначенияКлиентСервер.ДополнитьМассив(Коллекция, ЗагрузитьКоллекцию(Источник), ТолькоУникальныеЗначения); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция ТолькоУникальные() Экспорт @@ -498,6 +511,7 @@ ЭтотОбъект.Начать(); КонецЕсли; Коллекция = ОбщегоНазначенияКлиентСервер.СвернутьМассив(Коллекция); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция РазностьС(ВычитаемаяКоллекция) Экспорт @@ -511,7 +525,8 @@ Индекс = ЭтотОбъект._Найти(_Значение); Если Индекс <> Неопределено Тогда ЭтотОбъект.Удалить(Индекс); - КонецЕсли; + КонецЕсли; + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция УдалитьВсеВхождения(Знач _Значение) Экспорт @@ -519,6 +534,7 @@ ЭтотОбъект.Начать(); КонецЕсли; ОбщегоНазначенияКлиентСервер.УдалитьВсеВхожденияЗначенияИзМассива(Коллекция, _Значение); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции Функция УдалитьВсеВхожденияТипа(Знач Тип) Экспорт @@ -526,6 +542,7 @@ ЭтотОбъект.Начать(); КонецЕсли; ОбщегоНазначенияКлиентСервер.УдалитьВсеВхожденияТипаИзМассива(Коллекция, Тип); + ЭтотОбъект.СброситьПозицию(); Возврат ЭтотОбъект; КонецФункции @@ -751,7 +768,6 @@ Счетчик = 1 + Счетчик; КонецЦикла; - ЭтотОбъект.СброситьПозицию(); // заполнение новой коллекции ЭтотОбъект.Начать();