как в 1С документооборот программно закрыть задачи, которые были сформированы вне обработки документа – по кнопке “отправить” – “задача на ознакомление”? (отсутствует значение в реквизите “источник”)
Сергей, для закрытия задач, которые были сформированы вне обработки документа в 1С:Документооборот, можно использовать следующий подход. Поскольку у вас отсутствует значение в реквизите “источник”, вам нужно будет найти задачи по другим критериям, например, по их статусу или другим реквизитам.
Вот пример кода, который может помочь вам закрыть такие задачи:
1С (Код)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
1C
Процедура ЗакрытьЗадачиНаОзнакомление()
// Создаем запрос для выборки задач на ознакомление
И Задачи.ТипЗадачи = ЗНАЧЕНИЕ(Перечисление.ТипыЗадач.НаОзнакомление)
И Задачи.Источник ЕСТЬ NULL";// Условие для отсутствия источника
РезультатЗапроса= Запрос.Выполнить();
ВыборкаЗадач= РезультатЗапроса.Выбрать();
ПокаВыборкаЗадач.Следующий()Цикл
Задача= ВыборкаЗадач.Ссылка.ПолучитьОбъект();
// Закрываем задачу
Задача.Закрыть();// Метод закрытия задачи
Задача.Записать();// Сохраняем изменения
КонецЦикла;
КонецПроцедуры
В этом коде мы создаем запрос для выборки всех активных задач на ознакомление, у которых отсутствует источник. Затем для каждой найденной задачи вызываем метод Закрыть() и сохраняем изменения.
Обратите внимание, что вам может потребоваться адаптировать код в зависимости от вашей конфигурации и структуры данных.