В обычных формах разных самописных конфигураций не раз видел
Построитель = Новый ПостроительЗапроса;
Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ДокументСписок);
Результат = Построитель.Результат;//отобранные строки типа РезультатЗапроса
ТЗ = Результат.Выгрузить();
ПостроительУдал = Новый ПостроительЗапроса;
ДокументСписок.Отбор.ПометкаУдаления.Значение = Истина;
ДокументСписок.Отбор.ПометкаУдаления.Использование = Истина;
ПостроительУдал.ИсточникДанных = Новый ОписаниеИсточникаДанных(ДокументСписок);
Результат = ПостроительУдал.Результат;//отобранные строки типа РезультатЗапроса
ТЗУдал = Результат.Выгрузить();
Попытка
ЭлементыФормы.ДокументСписок.Колонки.СуммаПоАкту.ТекстПодвала = ТЗ.Итог("СуммаПоАкту") - ТЗУдал.Итог("СуммаПоАкту");
Исключение
КонецПопытки;
Попытка
ЭлементыФормы.ДокументСписок.Колонки.ИтогоНачислено.ТекстПодвала = ТЗ.Итог("ИтогоНачислено") - ТЗУдал.Итог("ИтогоНачислено");
Исключение
КонецПопытки;
Попытка
ЭлементыФормы.ДокументСписок.Колонки.Отклонение.ТекстПодвала = ТЗ.Итог("Отклонение") - ТЗУдал.Итог("Отклонение");
Исключение
КонецПопытки;
ДокументСписок.Отбор.ПометкаУдаления.Использование = Ложь;
При этом тип документа совершенно не важен, важно что журнал используют как отчет - смотрят за вычетом помеченных на удаление. и системе это счастья не добавляет. Но не у всех документов есть хоть какие-то регистры, не все виды документов проводятся.
Вот и я думаю что ключница водку делала. Но такое решение для самописок почти типовое и считается у отсталых народов гениальным.
Все иначе
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший