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

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

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

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

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

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

Перед любыми массовыми операциями сделайте резервную копию базы. Это единственная гарантия отката, если в выборку попадут лишние документы или удаление нарушит последовательность проведения.

Подготовка: резервная копия и проверка прав

Удаление документов — необратимая операция. Даже если вы уверены в отборе, создайте копию базы: в файловом варианте достаточно скопировать каталог с файлом 1Cv8.1CD, в клиент-серверном — сделайте выгрузку через конфигуратор (Администрирование → Выгрузить информационную базу) или средствами СУБД. Выгрузка в .dt позволяет восстановить базу целиком за несколько минут.

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

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

Способ 1: пометка на удаление через список документов

Самый простой вариант подходит, когда документов немного — до нескольких сотен. Откройте журнал нужного вида документов (например, «Поступления товаров и услуг»), установите отбор по периоду через кнопку «Ещё» → «Настроить список» или стандартный отбор по дате. Выделите все строки сочетанием Ctrl+A и нажмите Delete или кнопку «Пометить на удаление / снять пометку».

Платформа пометит документы на удаление и автоматически отменит их проведение. Пометка — это не удаление: данные остаются в базе, но исключаются из оборотов и отчётов. Если документ проведён, пометка на удаление сначала отменяет проведение, что может занять время при большом объёме.

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

Способ 2: групповое изменение реквизитов в типовых конфигурациях

В конфигурациях на БСП (Бухгалтерия 3.0, УТ 11, ERP 2, ЗУП 3.1) есть штатная обработка «Групповое изменение реквизитов»: раздел «Администрирование» → «Обслуживание» → «Корректировка данных» (в некоторых версиях — «Поддержка и обслуживание»). Откройте её, выберите тип объекта «Документы» и конкретный вид документа.

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

В списке доступных действий выберите операцию пометки на удаление (в ряде версий она доступна через дополнительные действия или требует включения режима разработчика с установкой параметра «Показывать служебные реквизиты»). Запустите выполнение и дождитесь отчёта о количестве обработанных объектов.

Порядок действий через групповую обработку
  1. 1
    Сделайте резервную копию базы
  2. 2
    Откройте Администрирование → Корректировка данных → Групповое изменение реквизитов
  3. 3
    Выберите вид документа и задайте отбор по дате за нужный период
  4. 4
    Проверьте количество найденных документов
  5. 5
    Выполните пометку на удаление
  6. 6
    Откройте Администрирование → Удаление помеченных объектов
  7. 7
    Выберите режим и запустите удаление
  8. 8
    Проверьте список неудалённых объектов и разберите ссылки

Способ 3: удаление через код (для администраторов и разработчиков)

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

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

Запрос.Текст =

"ВЫБРАТЬ

| РеализацияТоваровУслуг.Ссылка

|ИЗ

| Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг

|ГДЕ

| РеализацияТоваровУслуг.Дата МЕЖДУ &НачалоПериода И &КонецПериода

| И НЕ РеализацияТоваровУслуг.ПометкаУдаления";

Запрос.УстановитьПараметр("НачалоПериода", НачалоГода(ТекущаяДатаСеанса()));

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

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

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

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

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

КонецЦикла;

Код выполняют через консоль кода (внешнюю обработку) или временную процедуру в расширении. Для больших объёмов добавляйте обработку порциями с фиксацией транзакции каждые несколько сотен объектов — это снижает риск отката всей операции при ошибке и уменьшает блокировки.

Учтите: метод УстановитьПометкуУдаления() с параметром Истина также отменяет проведение документа. Если документ участвует в последовательности, граница последовательности сдвинется, и последующие документы могут потребовать перепроведения.

Финальный этап: удаление помеченных объектов

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

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

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

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

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

Список неудалённых объектов
Норма

Пуст или содержит только осознанно оставленные документы

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

Десятки объектов с неразобранными ссылками

Отчёт ОСВ за период
Норма

Обороты по удалённым документам исчезли

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

Суммы остались — документы не удалены или не отменено проведение

Журналы документов за период
Норма

Документы отсутствуют или помечены

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

Документы на месте без пометки

Граница последовательности
Норма

Соответствует ожидаемой дате

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

Сбита на ранний период — требуется восстановление последовательности

Ограничения, риски и альтернативы удалению

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

Для старых периодов вместо удаления рассмотрите свёртку базы (в типовых — обработка «Свёртка информационной базы»): она формирует документы ввода остатков на дату свёртки и удаляет документы прошлых периодов корректно, с сохранением согласованности данных. Это безопаснее ручного удаления, когда речь идёт о годах учёта.

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

Сравнение вариантов

Пометка через журнал документов

Подходит для сотен документов одного вида; при больших объёмах интерфейс работает медленно

Групповое изменение реквизитов

Штатный способ типовых конфигураций, гибкий отбор; требует прав и аккуратной настройки условий

Код на встроенном языке

Для нескольких видов документов и автоматизации; требует навыков разработки и тестирования на копии

Свёртка базы

Для закрытия старых периодов целиком; не подходит для точечного удаления

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

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

Можно ли восстановить удалённые документы?

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

Почему после удаления документов остатки в отчётах не изменились?

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

Как удалить документы только одной организации в многофирменной базе?

В отборе групповой обработки или в запросе добавьте условие по реквизиту «Организация» в дополнение к периоду. Обязательно проверьте количество найденных документов до запуска и сделайте выборку в отчёт для визуального контроля.

Что делать с последовательностью документов после удаления?

Если удалённые документы входили в последовательность, граница сдвинется. Откройте «Операции» → «Проведение документов» (или «Восстановление последовательностей») и перепроведите документы от новой границы, чтобы итоги и расчёты стали корректными.

Можно ли удалить документы сразу, минуя пометку на удаление?

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

Сколько времени занимает удаление большого объёма документов?

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

Итог

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

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