Задача выглядит ак: в ручных операциях в списке документов долждно быть видно, где движения выключены.
В самом документе поля такого нет. Сам при открытии формы документ анализирует все сохраненные движения всех регистров на предмет активности. Если все неактивны ставится признак неактивности на форму.
АктивностьДвижений = Истина;
Для каждого СтрокаРегистра Из Регистры Цикл
... Если СтрокаРегистра.Записывать Тогда
АктивностьДвижений = АктивностьДвижений И ЭтотОбъект[ИмяРеквизита][0].Активность;
КонецЕсли;
КонецЦикла;
...
Но в списке операций такое не реализовано. Список динаминческий и собирается запросом:
...
ДокументОперацияБух.ТиповаяОперация КАК ТиповаяОперация,
ДокументОперацияБух.МоментВремени КАК МоментВремени,
ВЫБОР
КОГДА ДокументОперацияБух.ПометкаУдаления = ИСТИНА
ТОГДА 2
ИНАЧЕ 1
КОНЕЦ КАК СостояниеДокумента,
ВЫБОР
...
Возник вопрос, как можно или из запроса вызывать функцию, чтобы каждый док проверить на активность/неактивность. Или же подготовить данные связки "док-активность" на требуемый список заранее и потом подгрузить в запросс. Но подготовка данных по всем докам будет долгой и хотелось бы понять, можно ли выяснить тот список доков, что планируется к показу, чтобы не собирать данные по документам, что на экран пользователю не попадут.
(0) дык все же документы ОперацияБух потенциально попадут в список
Такое вообще нужно реализовывать через реквизит документа или отдельный регистр сведений, остальные методы показа будут нещадно тормозить
(0) наверняка хватит условия "хотя бы одно движение неактивно". Сделай новое поле в запросе "ЕстьНеактивноеДвижение" путем соединения с любой записью регистра бухгалтерии, в котором Активность=Ложь
Основная теорема систематики: Новые системы плодят новые проблемы.