Корректнее для сдвига использовать для установки МоментВремени... Соответственно для установки использовать следующий код:
//НВЮ/ Найдем Момент Времени для установки Границы
ЗпрГр = Новый Запрос;
ЗпрГр.Текст = "ВЫБРАТЬ ПЕРВЫЕ 100
| ТекПоследовательность.Регистратор,
| ТекПоследовательность.Период,
| ТекПоследовательность.Организация
|ИЗ
| Последовательность.Взаиморасчеты КАК ТекПоследовательность
|ГДЕ ТекПоследовательность.Период >= &ТрПериод
|";
ЗпрГр.Текст = СтрЗаменить(ЗпрГр.Текст, "Взаиморасчеты",ИмяПоследовательности);//Укажем Текущую последовательность
ЗпрГр.УстановитьПараметр("ТрПериод",ДатаГраницыВосстановления);
Для Каждого Эл Из Отбор Цикл//Перенос Фильтра
ЗпрГр.Текст = ЗпрГр.Текст +" И ТекПоследовательность."+Эл.Ключ+" = &"+СокрЛП(Эл.Ключ);
ЗпрГр.УстановитьПараметр(СокрЛП(Эл.Ключ),Эл.Значение);
КонецЦикла;
Рез = ЗпрГр.Выполнить().Выбрать();
Если Рез.Следующий() Тогда//Установим Найденный МоментВремени
МоментГр = Новый МоментВремени(Рез.Период, Рез.Регистратор);
Последовательности[ИмяПоследовательности].УстановитьГраницу(МоментГр, Отбор);
Иначе//НВЮ/Установим Границу на Период из Формы (как в исходнике)
Последовательности[ИмяПоследовательности].УстановитьГраницу(КонецДня(ДатаГраницыВосстановления), Отбор);
КонецЕсли;
Показать