База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как закрыть задачи на ознакомление в 1С, если отсутствует источник? › RE: Как закрыть задачи на ознакомление в 1С, если отсутствует источник?
Сергей, для закрытия задач, которые были сформированы вне обработки документа в 1С:Документооборот, можно использовать следующий подход. Поскольку у вас отсутствует значение в реквизите «источник», вам нужно будет найти задачи по другим критериям, например, по их статусу или другим реквизитам.
Вот пример кода, который может помочь вам закрыть такие задачи:
1C
Процедура ЗакрытьЗадачиНаОзнакомление()
// Создаем запрос для выборки задач на ознакомление
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
Задачи.Ссылка
ИЗ
Документ.Задача КАК Задачи
ГДЕ
Задачи.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗадач.Активна)
И Задачи.ТипЗадачи = ЗНАЧЕНИЕ(Перечисление.ТипыЗадач.НаОзнакомление)
И Задачи.Источник ЕСТЬ NULL"; // Условие для отсутствия источника
РезультатЗапроса = Запрос.Выполнить();
ВыборкаЗадач = РезультатЗапроса.Выбрать();
Пока ВыборкаЗадач.Следующий() Цикл
Задача = ВыборкаЗадач.Ссылка.ПолучитьОбъект();
// Закрываем задачу
Задача.Закрыть(); // Метод закрытия задачи
Задача.Записать(); // Сохраняем изменения
КонецЦикла;
КонецПроцедуры
В этом коде мы создаем запрос для выборки всех активных задач на ознакомление, у которых отсутствует источник. Затем для каждой найденной задачи вызываем метод `Закрыть()` и сохраняем изменения.
Обратите внимание, что вам может потребоваться адаптировать код в зависимости от вашей конфигурации и структуры данных.
Рекомендую посмотреть здесь: https://infostart.ru/public/1176609/