К статье
Практический материал

Администрирование · 9 мин

Как удалить задачу в 1С: пошаговая инструкция

Как удалить задачу в 1С через пометку на удаление, контроль ссылочной целостности и обработку. Разбор ограничений, прав доступа и способов для разных конфигураций.

Задача в 1С — это объект конфигурации, который используется в механизмах бизнес-процессов и маршрутизации: согласование документов, поручения сотрудникам, контроль исполнения. Удалить такую задачу нельзя простым нажатием клавиши Delete в списке, как это делается с некоторыми справочниками, — почти всегда требуется пометка на удаление с последующим контролем ссылок, либо специальный режим работы.

Причина строгости проста: задача связана с бизнес-процессом, точками маршрута, исполнителями и документами-основаниями. Если удалить её «в лоб», в базе останутся битые ссылки, а бизнес-процесс зависнет в непонятном состоянии. Поэтому платформа требует упорядоченного подхода: сначала пометка, затем проверка ссылок, затем физическое удаление.

Ниже разобраны все рабочие способы: через стандартный интерфейс пользователя, через обработку удаления помеченных объектов, программно через встроенный язык, а также ситуации, когда удаление невозможно по правам или по логике конфигурации.

Что нужно проверить перед удалением задачи

Прежде чем удалять, убедитесь, что задача действительно не нужна. Откройте карточку задачи и посмотрите связанный бизнес-процесс: если процесс ещё активен, удаление задачи может нарушить его выполнение. В типовых конфигурациях задачи часто создаются автоматически механизмами согласования, и их удаление вручную приводит к «зависшим» документам, которые никто не сможет согласовать.

Также проверьте права. Удаление объектов требует права «Удаление» на соответствующий объект метаданных. Обычному пользователю с ролью «Исполнитель задач» такое право, как правило, не назначено — понадобится учётная запись с правами администратора или полными правами на раздел задач.

Удаление через пометку на удаление в интерфейсе

Стандартный и самый безопасный способ — пометка на удаление. Откройте список задач: в типовых конфигурациях это раздел «Задачи» или «Мои задачи», в некоторых — подсистема «Бизнес-процессы и задачи». Найдите нужную задачу через поиск или отбор.

Выделите задачу и нажмите кнопку «Установить пометку удаления» на командной панели списка, либо сочетание клавиш Shift+Delete, либо пункт контекстного меню «Пометить на удаление». Тот же пункт есть в форме самой задачи через меню «Ещё». Задача визуально помечается перечёркиванием — это значит, что она ещё физически в базе, но исключена из обычной работы.

Повторное нажатие той же команды снимает пометку — это удобно, если объект пометили ошибочно. Пометка обратима, физическое удаление — нет.

Порядок действий при пометке
  1. 1
    Откройте список задач через раздел «Бизнес-процессы и задачи» или поиск
  2. 2
    Найдите задачу по номеру, теме или исполнителю
  3. 3
    Выделите строку и нажмите Shift+Delete или «Пометить на удаление»
  4. 4
    Подтвердите установку пометки в диалоге
  5. 5
    Проверьте, что строка отображается перечёркнутой

Физическое удаление через обработку «Удаление помеченных объектов»

Пометка — только первый этап. Чтобы задача исчезла из базы окончательно, запустите обработку удаления помеченных объектов. В клиентских приложениях она находится в разделе «Администрирование» → «Обслуживание» → «Удаление помеченных объектов». В файловой базе без типовой подсистемы обработку можно вызвать через «Все функции» → «Стандартные» → «Удаление помеченных объектов».

Обработка предлагает два режима: автоматическое удаление всех помеченных объектов или выборочное. Для точечной работы выберите выборочный режим и отметьте только нужные задачи. Нажмите «Удалить» — платформа выполнит контроль ссылочной целостности.

Если на задачу ссылаются другие объекты (бизнес-процесс, регистр сведений, документ), обработка покажет список таких ссылок и не удалит задачу, пока вы не разберётесь со ссылками: либо удалите/измените ссылающиеся объекты, либо снимите пометку.

Контрольные точки

Как проверить результат

Задача в списке
Норма

Задача отсутствует даже при отборе «все, включая помеченные»

Тревожный признак

Задача видна и перечёркнута — физическое удаление не выполнено

Связанный бизнес-процесс
Норма

Процесс завершён или не содержит ссылок на задачу

Тревожный признак

В процессе пустая ссылка на задачу

Журнал ошибок
Норма

Нет сообщений о нарушении целостности

Тревожный признак

Сообщения о битых ссылках после удаления

Когда пометить задачу на удаление нельзя

Есть типовые ситуации, когда стандартный путь не работает. Первая — нехватка прав: кнопка пометки неактивна или отсутствует. Решение — обратиться к администратору базы, который либо выполнит удаление сам, либо расширит роль пользователя.

Вторая — задача выполнена и конфигурация блокирует изменение выполненных задач. В некоторых типовых решениях выполненные задачи защищены от редактирования и удаления программно. Тогда помогает только административный режим или изменение логики через конфигуратор.

Третья — задача создана стартовым бизнес-процессом, и конфигурация требует сначала прервать процесс. Откройте карточку бизнес-процесса и используйте команду «Прервать» или «Остановить», после чего пометка задач станет доступной.

Маршрут решения

Как выбрать действие

Кнопка «Пометить на удаление» неактивнаПроверьте права пользователя или обратитесь к администратору
Задача связана с активным бизнес-процессомСначала прервите или завершите процесс, затем помечайте задачу
Обработка сообщает о ссылках на задачуПерейдите по списку ссылающихся объектов и очистите или измените ссылки
Нужно удалить много задач сразуИспользуйте групповую пометку через отбор списка или программную обработку

Прямое удаление и программный способ

Режим прямого удаления (без пометки) включается в настройках базы: «Сервис» → «Параметры» → флаг «Режим прямого удаления» — в старых версиях платформы. В современных управляемых приложениях прямое удаление доступно через «Все функции» при наличии права «Интерактивное удаление». Использовать его стоит только в тестовых базах: контроль ссылок при этом не выполняется, и битые ссылки гарантированы.

Для массовой очистки удобен программный способ через встроенный язык. Типовой код пометки задач по отбору выглядит так:

Запрос = Новый Запрос;

Запрос.Текст = "ВЫБРАТЬ Задача.Ссылка

|ИЗ Задача.ЗадачаИсполнителя КАК Задача

|ГДЕ Задача.Дата < &ДатаОтсечки И Задача.Выполнена";

Запрос.УстановитьПараметр("ДатаОтсечки", ДобавитьМесяц(ТекущаяДатаСеанса(), -12));

Выборка = Запрос.Выполнить().Выбрать();

Пока Выборка.Следующий() Цикл

ОбъектЗадачи = Выборка.Ссылка.ПолучитьОбъект();

ОбъектЗадачи.УстановитьПометкуУдаления(Истина);

КонецЦикла;

После выполнения такого кода задачи помечаются, и дальше снова нужна стандартная обработка удаления помеченных объектов. Программный вызов метода УдалитьОбъект() минует контроль ссылок — применяйте его только при полной уверенности в отсутствии связей.

bsl
ОбъектЗадачи = ЗадачаСсылка.ПолучитьОбъект();
ОбъектЗадачи.УстановитьПометкуУдаления(Истина);

Массовое удаление и регламентная очистка

В рабочих базах задачи копятся годами: выполненные поручения, завершённые согласования. Хранить их бесконечно нерационально — растёт объём таблиц, замедляются списки. Практика — периодическая очистка выполненных задач старше определённого срока.

Порядок такой: пометьте выполненные задачи старше выбранной даты (вручную через отбор списка с групповой пометкой или обработкой), убедитесь, что связанные бизнес-процессы завершены, затем запустите удаление помеченных объектов. Для регулярной очистки операцию оформляют регламентным заданием или внешней обработкой по расписанию.

Перед массовой операцией обязательно сделайте выгрузку информационной базы (dt) — это единственный способ откатить ошибочное удаление сотен объектов.

Типичные ошибки
01
Удаление задачи без завершения бизнес-процесса — документ зависает на этапе согласования
02
Использование «УдалитьОбъект()» без контроля ссылок — в базе появляются битые ссылки вида «Объект не найден»
03
Массовое удаление без резервной копии — восстановить данные невозможно
04
Ожидание, что пометка освободит место — физическое удаление происходит только через обработку

Частые вопросы

Почему задача помечена, но не удаляется обработкой?

На неё ссылаются другие объекты — чаще всего бизнес-процесс или регистры сведений. Обработка «Удаление помеченных объектов» показывает список таких ссылок: откройте каждый объект и очистите ссылку или удалите сам ссылающийся объект, затем повторите удаление.

Можно ли восстановить удалённую задачу?

Физически удалённую задачу восстановить нельзя — только из резервной копии базы. Пока стоит лишь пометка на удаление, объект легко вернуть снятием пометки той же командой.

Как удалить задачу, если нет прав на удаление?

Самостоятельно — никак, права определяются ролями в конфигурации. Обратитесь к администратору базы: он выполнит удаление под своей учётной записью либо добавит вашей роли право «Удаление» на объект «Задачи».

Удалится ли бизнес-процесс вместе с задачей?

Нет, задача и бизнес-процесс — независимые объекты. Помечать и удалять их нужно отдельно, причём обычно сначала прерывают и помечают процесс, затем его задачи.

Чем пометка отличается от прямого удаления?

Пометка — обратимая отметка, при которой объект остаётся в базе, а контроль ссылок выполняется при физическом удалении через обработку. Прямое удаление стирает объект сразу и без проверки ссылок, что рискованно для целостности данных.

Как удалить все выполненные задачи разом?

Установите в списке задач отбор «Выполнена = Да», выделите все строки и примените групповую пометку на удаление, затем запустите обработку удаления помеченных объектов. Для больших объёмов удобнее программная пометка по запросу с отбором по дате.

Итог

Что важно запомнить

Удаление задачи в 1С — двухэтапная операция: пометка на удаление, затем обработка «Удаление помеченных объектов» с контролем ссылок. Перед удалением завершите связанные бизнес-процессы, проверьте права и сделайте резервную копию при массовых операциях.