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

Справочники и Данные · 11 мин

Как удалить номенклатуру в 1С 7.7

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

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

В типовых конфигурациях («Торговля и склад», «Производство + Услуги + Бухгалтерия», «Комплексная») предусмотрено два механизма: прямое удаление элемента (доступно не всегда и не всем пользователям) и пометка на удаление с последующей обработкой «Удаление помеченных объектов». Правильный путь зависит от того, участвовала ли позиция в учёте.

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

Почему номенклатура может не удаляться

Главная причина отказа в удалении — ссылки на элемент. Номенклатура в 7.7 используется в табличных частях документов (приходные и расходные накладные, счета, инвентаризации), в регистрах остатков, в справочнике «Цены», в комплектах и аналогах. Пока существует хотя бы один документ или запись, где указана эта позиция, монопольное удаление будет заблокировано.

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

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

Позиция создана недавно и ошибочноСкорее всего, ссылок нет

Попробуйте прямое удаление через Shift+Del

Позиция есть в накладных или счетахЕсть ссылки в документах

Прямое удаление заблокировано, используйте пометку на удаление

Кнопка удаления неактивнаНет прав на удаление

Проверьте права пользователя в конфигураторе

Операция не запускаетсяНет монопольного доступа

Попросите всех пользователей выйти из базы

Подготовка: архивная копия и монопольный режим

Перед любыми операциями удаления сделайте копию базы. Для файловой базы 7.7 достаточно скопировать весь каталог информационной базы в отдельную папку при закрытой программе. Минимально необходимы файлы 1Cv7.MD (метаданные) и все dbf-файлы данных, но надёжнее копировать каталог целиком.

Для выполнения удаления помеченных объектов потребуется монопольный режим. Зайдите в меню «Администрирование» и проверьте список активных пользователей, попросите всех выйти. При запуске программы можно сразу указать монопольный вход, если пользователи мешают.

Также заранее решите, какие позиции подлежат удалению. Удобно выгрузить или распечатать список помеченных на удаление элементов, чтобы сверить его после операции и не удалить лишнее по ошибке.

Прямое удаление элемента справочника

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

Нажмите комбинацию клавиш Shift+Del или выберите в меню «Действия» пункт «Удалить». Программа запросит подтверждение. Если на элемент нет ссылок, он будет удалён сразу и окончательно. Если ссылки есть, появится сообщение о невозможности удаления — в этом случае переходите к пометке на удаление.

Учтите, что в некоторых конфигурациях прямое удаление в справочниках отключено настройками прав, и комбинация Shift+Del просто не сработает. Тогда остаётся только пометка на удаление.

Порядок действий
  1. 1
    Сделайте архивную копию каталога базы
  2. 2
    Откройте справочник «Номенклатура» и найдите позицию
  3. 3
    Попробуйте прямое удаление: Shift+Del, подтвердите операцию
  4. 4
    Если удаление запрещено — пометьте элемент на удаление клавишей Del
  5. 5
    Завершите работу всех пользователей и войдите монопольно
  6. 6
    Выполните «Операции → Удаление помеченных объектов» с контролем ссылок
  7. 7
    Проверьте, что позиция исчезла из справочника и список помеченных пуст

Пометка на удаление и удаление помеченных объектов

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

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

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

Что делать, если позиция используется в документах

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

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

Если позиция — дубль, и нужно сохранить историю, рассмотрите обработку по замене дубля на основную позицию во всех документах. Такие обработки для 7.7 существуют, но применять их следует осторожно и только на копии базы: массовая замена ссылок изменяет содержимое документов прошлых периодов.

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

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

Позиция создана ошибочно и нигде не используетсяУдалите напрямую через Shift+Del
Позиция есть только в непроведённых или ошибочных документахУдалите или исправьте эти документы, затем удалите позицию
Позиция участвует в проведённых документах прошлых периодовНе удаляйте — пометьте на удаление и исключите из оборота
Позиция — дубль действующей номенклатурыРассмотрите замену ссылок обработкой на копии базы, затем удаление

Массовая чистка справочника и типичные ошибки

При большом количестве мусорных позиций помечать их по одной долго. В 7.7 можно пометить на удаление целую группу справочника — тогда пометятся все вложенные элементы. Также существуют внешние обработки для массовой пометки по условию (например, позиции без движений и без остатков). Любую массовую операцию сначала проверяйте на копии базы и на малом списке позиций.

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

Типичные ошибки
01
Удаление без архивной копии — при ошибке восстановить данные невозможно
02
Удаление документов прошлых периодов ради чистки справочника — искажаются остатки и отчётность
03
Запуск «Удаления помеченных объектов» без просмотра списка — удаляются помеченные ранее посторонние объекты
04
Пометка на удаление целой группы без проверки вложенных элементов — под пометку попадают рабочие позиции
05
Попытка удалить элемент, пока пользователи в базе — операция не запускается без монопольного доступа

Проверка результата после удаления

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

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

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

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

Справочник «Номенклатура»
Норма

Удалённые позиции отсутствуют, структура групп сохранена

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

Пропали позиции, которые не планировали удалять

Окно «Удаление помеченных объектов»
Норма

Список пуст или содержит только заведомо связанные объекты

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

В списке остались объекты, которые должны были удалиться

Отчёт по остаткам склада
Норма

Остатки и обороты не изменились

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

Появились расхождения с данными до операции

Старые документы
Норма

Документы открываются, позиции отображаются корректно

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

В документах пустые строки вместо номенклатуры

Итог

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

Неиспользуемую номенклатуру в 1С 7.7 удаляют напрямую (Shift+Del), используемую — только помечают на удаление. Физическое удаление помеченных объектов выполняется монопольно через «Операции → Удаление помеченных объектов» и всегда после создания архивной копии базы.

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

Почему при удалении появляется сообщение «Элемент используется в других объектах»?

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

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

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

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

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

Нужен ли монопольный режим для пометки на удаление?

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

Как удалить сразу много позиций-дублей?

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

Мешает ли помеченная номенклатура отчётам и оборотам?

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