Администрирование · 9 мин
Как удалить задачу в 1С: пошаговая инструкция
Как удалить задачу в 1С через пометку на удаление, контроль ссылочной целостности и обработку. Разбор ограничений, прав доступа и способов для разных конфигураций.
Задача в 1С — это объект конфигурации, который используется в механизмах бизнес-процессов и маршрутизации: согласование документов, поручения сотрудникам, контроль исполнения. Удалить такую задачу нельзя простым нажатием клавиши Delete в списке, как это делается с некоторыми справочниками, — почти всегда требуется пометка на удаление с последующим контролем ссылок, либо специальный режим работы.
Причина строгости проста: задача связана с бизнес-процессом, точками маршрута, исполнителями и документами-основаниями. Если удалить её «в лоб», в базе останутся битые ссылки, а бизнес-процесс зависнет в непонятном состоянии. Поэтому платформа требует упорядоченного подхода: сначала пометка, затем проверка ссылок, затем физическое удаление.
Ниже разобраны все рабочие способы: через стандартный интерфейс пользователя, через обработку удаления помеченных объектов, программно через встроенный язык, а также ситуации, когда удаление невозможно по правам или по логике конфигурации.
Что нужно проверить перед удалением задачи
Прежде чем удалять, убедитесь, что задача действительно не нужна. Откройте карточку задачи и посмотрите связанный бизнес-процесс: если процесс ещё активен, удаление задачи может нарушить его выполнение. В типовых конфигурациях задачи часто создаются автоматически механизмами согласования, и их удаление вручную приводит к «зависшим» документам, которые никто не сможет согласовать.
Также проверьте права. Удаление объектов требует права «Удаление» на соответствующий объект метаданных. Обычному пользователю с ролью «Исполнитель задач» такое право, как правило, не назначено — понадобится учётная запись с правами администратора или полными правами на раздел задач.
Удаление через пометку на удаление в интерфейсе
Стандартный и самый безопасный способ — пометка на удаление. Откройте список задач: в типовых конфигурациях это раздел «Задачи» или «Мои задачи», в некоторых — подсистема «Бизнес-процессы и задачи». Найдите нужную задачу через поиск или отбор.
Выделите задачу и нажмите кнопку «Установить пометку удаления» на командной панели списка, либо сочетание клавиш Shift+Delete, либо пункт контекстного меню «Пометить на удаление». Тот же пункт есть в форме самой задачи через меню «Ещё». Задача визуально помечается перечёркиванием — это значит, что она ещё физически в базе, но исключена из обычной работы.
Повторное нажатие той же команды снимает пометку — это удобно, если объект пометили ошибочно. Пометка обратима, физическое удаление — нет.
- 1Откройте список задач через раздел «Бизнес-процессы и задачи» или поиск
- 2Найдите задачу по номеру, теме или исполнителю
- 3Выделите строку и нажмите Shift+Delete или «Пометить на удаление»
- 4Подтвердите установку пометки в диалоге
- 5Проверьте, что строка отображается перечёркнутой
Физическое удаление через обработку «Удаление помеченных объектов»
Пометка — только первый этап. Чтобы задача исчезла из базы окончательно, запустите обработку удаления помеченных объектов. В клиентских приложениях она находится в разделе «Администрирование» → «Обслуживание» → «Удаление помеченных объектов». В файловой базе без типовой подсистемы обработку можно вызвать через «Все функции» → «Стандартные» → «Удаление помеченных объектов».
Обработка предлагает два режима: автоматическое удаление всех помеченных объектов или выборочное. Для точечной работы выберите выборочный режим и отметьте только нужные задачи. Нажмите «Удалить» — платформа выполнит контроль ссылочной целостности.
Если на задачу ссылаются другие объекты (бизнес-процесс, регистр сведений, документ), обработка покажет список таких ссылок и не удалит задачу, пока вы не разберётесь со ссылками: либо удалите/измените ссылающиеся объекты, либо снимите пометку.
Как проверить результат
Задача отсутствует даже при отборе «все, включая помеченные»
Задача видна и перечёркнута — физическое удаление не выполнено
Процесс завершён или не содержит ссылок на задачу
В процессе пустая ссылка на задачу
Нет сообщений о нарушении целостности
Сообщения о битых ссылках после удаления
Когда пометить задачу на удаление нельзя
Есть типовые ситуации, когда стандартный путь не работает. Первая — нехватка прав: кнопка пометки неактивна или отсутствует. Решение — обратиться к администратору базы, который либо выполнит удаление сам, либо расширит роль пользователя.
Вторая — задача выполнена и конфигурация блокирует изменение выполненных задач. В некоторых типовых решениях выполненные задачи защищены от редактирования и удаления программно. Тогда помогает только административный режим или изменение логики через конфигуратор.
Третья — задача создана стартовым бизнес-процессом, и конфигурация требует сначала прервать процесс. Откройте карточку бизнес-процесса и используйте команду «Прервать» или «Остановить», после чего пометка задач станет доступной.
Как выбрать действие
Прямое удаление и программный способ
Режим прямого удаления (без пометки) включается в настройках базы: «Сервис» → «Параметры» → флаг «Режим прямого удаления» — в старых версиях платформы. В современных управляемых приложениях прямое удаление доступно через «Все функции» при наличии права «Интерактивное удаление». Использовать его стоит только в тестовых базах: контроль ссылок при этом не выполняется, и битые ссылки гарантированы.
Для массовой очистки удобен программный способ через встроенный язык. Типовой код пометки задач по отбору выглядит так:
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ Задача.Ссылка
|ИЗ Задача.ЗадачаИсполнителя КАК Задача
|ГДЕ Задача.Дата < &ДатаОтсечки И Задача.Выполнена";
Запрос.УстановитьПараметр("ДатаОтсечки", ДобавитьМесяц(ТекущаяДатаСеанса(), -12));
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
ОбъектЗадачи = Выборка.Ссылка.ПолучитьОбъект();
ОбъектЗадачи.УстановитьПометкуУдаления(Истина);
КонецЦикла;
После выполнения такого кода задачи помечаются, и дальше снова нужна стандартная обработка удаления помеченных объектов. Программный вызов метода УдалитьОбъект() минует контроль ссылок — применяйте его только при полной уверенности в отсутствии связей.
ОбъектЗадачи = ЗадачаСсылка.ПолучитьОбъект();
ОбъектЗадачи.УстановитьПометкуУдаления(Истина);Массовое удаление и регламентная очистка
В рабочих базах задачи копятся годами: выполненные поручения, завершённые согласования. Хранить их бесконечно нерационально — растёт объём таблиц, замедляются списки. Практика — периодическая очистка выполненных задач старше определённого срока.
Порядок такой: пометьте выполненные задачи старше выбранной даты (вручную через отбор списка с групповой пометкой или обработкой), убедитесь, что связанные бизнес-процессы завершены, затем запустите удаление помеченных объектов. Для регулярной очистки операцию оформляют регламентным заданием или внешней обработкой по расписанию.
Перед массовой операцией обязательно сделайте выгрузку информационной базы (dt) — это единственный способ откатить ошибочное удаление сотен объектов.
Частые вопросы
Почему задача помечена, но не удаляется обработкой?
На неё ссылаются другие объекты — чаще всего бизнес-процесс или регистры сведений. Обработка «Удаление помеченных объектов» показывает список таких ссылок: откройте каждый объект и очистите ссылку или удалите сам ссылающийся объект, затем повторите удаление.
Можно ли восстановить удалённую задачу?
Физически удалённую задачу восстановить нельзя — только из резервной копии базы. Пока стоит лишь пометка на удаление, объект легко вернуть снятием пометки той же командой.
Как удалить задачу, если нет прав на удаление?
Самостоятельно — никак, права определяются ролями в конфигурации. Обратитесь к администратору базы: он выполнит удаление под своей учётной записью либо добавит вашей роли право «Удаление» на объект «Задачи».
Удалится ли бизнес-процесс вместе с задачей?
Нет, задача и бизнес-процесс — независимые объекты. Помечать и удалять их нужно отдельно, причём обычно сначала прерывают и помечают процесс, затем его задачи.
Чем пометка отличается от прямого удаления?
Пометка — обратимая отметка, при которой объект остаётся в базе, а контроль ссылок выполняется при физическом удалении через обработку. Прямое удаление стирает объект сразу и без проверки ссылок, что рискованно для целостности данных.
Как удалить все выполненные задачи разом?
Установите в списке задач отбор «Выполнена = Да», выделите все строки и примените групповую пометку на удаление, затем запустите обработку удаления помеченных объектов. Для больших объёмов удобнее программная пометка по запросу с отбором по дате.
Что важно запомнить
Удаление задачи в 1С — двухэтапная операция: пометка на удаление, затем обработка «Удаление помеченных объектов» с контролем ссылок. Перед удалением завершите связанные бизнес-процессы, проверьте права и сделайте резервную копию при массовых операциях.