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

Важно понимать: процедура отличается в зависимости от конфигурации 1С (УТ 11, ERP, КА 2, Бухгалтерия 3.0) и прав пользователя. Например, в 1С:Управление торговлей удаление номенклатуры может быть заблокировано, если позиция используется в документах, а в 1С:Бухгалтерии — требует предварительной проверки связей. Мы рассмотрим универсальные решения и нюансы для популярных редакций.

1. Когда можно удалять номенклатуру, а когда нельзя

Прежде чем нажимать «Удалить», проверьте 4 критических условия, при которых удаление запрещено или нежелательно:

  • 📄 Позиция используется в проведенных документах (накладные, счета, акты). В этом случае 1С заблокирует удаление или предложит пометить на удаление.
  • 🔄 Номенклатура входит в серии, характеристики или комплекты. Удаление может нарушить структуру связанных элементов.
  • 📊 Данные по товару попали в регламентированную отчетность (налоговые декларации, бухгалтерский баланс). Удаление приведет к расхождениям.
  • 🔒 У пользователя недостаточно прав доступа. Например, в 1С:ERP удалять номенклатуру может только администратор или ответственный за справочники.

Если хотя бы одно из условий выполняется, лучше использовать альтернативные методы: пометку на удаление, архивирование или перенос в неактивные группы. О них подробнее расскажем в разделе 5.

⚠️ Внимание: В конфигурациях с включенным режимом управленческого учета (например, 1С:ERP 2.5) удаление номенклатуры может автоматически корректировать остатки по складам. Перед операцией сделайте резервную копию базы!
📊 Как часто вы удаляете номенклатуру в 1С?
Регулярно (раз в неделю)
Иногда (раз в месяц)
Рядом (раз в квартал)
Никогда не удаляю

2. Стандартное удаление через интерфейс 1С

Самый простой способ — удаление непосредственно из справочника Номенклатура. Подходит для позиций, которые не используются в документах и не имеют связей. Инструкция:

  1. Откройте справочник Номенклатура через меню Справочники → Товары (номенклатура).
  2. Найдите нужную позицию с помощью фильтра или поиска (сочетание клавиш Ctrl+F).
  3. Выделите строку и нажмите Del или кнопку «Удалить» на панели инструментов.
  4. Подтвердите действие в диалоговом окне.

Если кнопка «Удалить» неактивна, значит номенклатура защищена от удаления. В этом случае:

  • 🔍 Проверьте, не используется ли позиция в документах (кнопка «Где используется» в карточке номенклатуры).
  • 👥 Убедитесь, что у вашей роли достаточно прав (меню Администрирование → Пользователи).
  • 🔄 Попробуйте пометить на удаление (раздел 3).

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

Есть права на удаление

Сделана резервная копия базы

Проверены связи с характеристиками/сериями

-->

3. Пометка на удаление: когда и как использовать

Если 1С блокирует обычное удаление, система предлагает пометить позицию на удаление. Это означает, что:

  • 🗑️ Номенклатура исчезнет из списков, но останется в базе.
  • 🔄 Ее можно будет восстановить через журнал удаленных объектов.
  • 📊 В отчетах позиция будет отображаться как неактивная (если не настроен фильтр).

Как пометить на удаление:

  1. Откройте карточку номенклатуры двойным кликом.
  2. Нажмите кнопку «Еще» (или «Действия») → «Пометить на удаление».
  3. Подтвердите действие.

Чтобы полностью удалить помеченную позицию, нужно:

  1. Перейти в Администрирование → Обслуживание → Удаление помеченных объектов.
  2. Выбрать тип объектов «Номенклатура».
  3. Нажать «Удалить помеченные».
⚠️ Внимание: В 1С:УТ 11.4 и новее при массовом удалении помеченных объектов система может запросить подтверждение по каждому элементу. Отключить это можно в настройках обслуживания.
Что будет, если не удалять помеченные объекты?

Помеченные на удаление позиции продолжают занимать место в базе данных и могут замедлять работу системы, особенно при большом количестве (тысячи записей). Кроме того, они отображаются в некоторых отчетах (например, «Анализ номенклатуры»), если не настроен фильтр по активности. Рекомендуется периодически (раз в квартал) очищать помеченные объекты.

4. Программное удаление через обработки и запросы

Для опытных пользователей и администраторов доступны программные методы удаления, которые позволяют:

  • 🤖 Автоматизировать массовое удаление.
  • 🔍 Удалять номенклатуру по сложным критериям (например, неиспользуемые более года позиции).
  • 🛠️ Обходить некоторые ограничения стандартного интерфейса.

Пример кода для удаления номенклатуры через внешнюю обработку (подходит для 1С:Предприятие 8.3):

Процедура УдалитьНоменклатуру(СсылкаНаОбъект)

Если НЕ СсылкаНаОбъект.Ссылка.Пустая() Тогда

Попытка

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

Сообщить("Номенклатура помечена на удаление: " + СсылкаНаОбъект.Наименование);

Исключение

Сообщить("Ошибка: " + ОписаниеОшибки());

КонецПопытки;

КонецЕсли;

КонецПроцедуры

Для массового удаления по условию (например, номенклатура без движений за последний год) используйте запрос:

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

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

"ВЫБРАТЬ

| Номенклатура.Ссылка КАК Ссылка

|ИЗ

| Справочник.Номенклатура КАК Номенклатура

|ГДЕ

| НЕ Номенклатура.ЭтоГруппа

| И НЕ Номенклатура.ПометкаУдаления

| И НЕ СУЩЕСТВУЕТ (

| ВЫБРАТЬ РАЗЛИЧНЫЕ

| ДвиженияНоменклатуры.Номенклатура КАК Номенклатура

| ИЗ

| РегистрНакопления.ТоварыНаСкладах.Движения КАК ДвиженияНоменклатуры

| ГДЕ

| ДвиженияНоменклатуры.Период > &ДатаНачалаГода

| )";

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

Результат = Запрос.Выполнить();

Выборка = Результат.Выбрать();

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

УдалитьНоменклатуру(Выборка.Ссылка);

КонецЦикла;

⚠️ Внимание: Программное удаление может нарушить целостность данных, если не учтены все связи. Перед выполнением скрипта обязательно протестируйте его на копии базы!
💡

Для массовых операций используйте режим отладки (Ctrl+Alt+F12) в 1С, чтобы отследить возможные ошибки до применения изменений.

5. Альтернативные методы: архивирование и перенос

Если удаление невозможно или нежелательно, рассмотрите 3 альтернативных подхода:

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

Как перенести номенклатуру в архивную группу:

  1. Создайте группу «Архив» в справочнике Номенклатура.
  2. Выделите нужные позиции и перетащите их в группу мышью или используйте Действия → Переместить в группу.
  3. Настройте права доступа так, чтобы обычные пользователи не видели архив (меню Администрирование → Настройка прав).

Для пометки как неактивной:

  1. Откройте карточку номенклатуры.
  2. Снимите флаг «Активна» (вкладка «Основное» или «Дополнительно», в зависимости от конфигурации).
  3. Сохраните изменения.
💡

Архивирование — самый безопасный способ "удалить" номенклатуру без риска потери данных. Используйте его для позиций, которые могут понадобиться в будущем (например, для анализа продаж за прошлые периоды).

6. Восстановление удаленной номенклатуры

Если номенклатура была удалена ошибочно, ее можно восстановить 3 способами:

  • 🗑️ Через журнал удаленных объектов (если позиция была помечена на удаление, но не удалена окончательно):
  • Администрирование → Обслуживание → Журнал удаленных объектов
  • 🔄 Из резервной копии (если было полное удаление). Для этого:
    1. Восстановите базу из бэкапа на тестовом сервере.
    2. Экспортируйте нужную номенклатуру через Файл → Экспорт данных.
    3. Импортируйте ее в рабочую базу.
  • 🛠️ С помощью специальных обработок (например, «Восстановление удаленных объектов» от 1С-Рарус или Инфостарт).
  • Если номенклатура была полностью удалена (не через пометку), восстановить ее можно только из резервной копии. В этом случае:

    1. Свяжитесь с администратором 1С или IT-отделом для восстановления бэкапа.
    2. Укажите точную дату, когда позиция еще существовала в базе.
    3. После восстановления экспортируйте номенклатуру и перенесите ее в актуальную базу.
    ⚠️ Внимание: В 1С:Cloud и некоторых версиях 1С:ERP журнал удаленных объектов хранится ограниченное время (по умолчанию — 30 дней). После этого восстановление возможно только из резервной копии.

    7. Частые ошибки и как их избежать

    При удалении номенклатуры пользователи часто сталкиваются с 5 типичными проблемами:

    Ошибка Причина Решение
    Номенклатура используется в документах Позиция есть в проведенных накладных, счетах или актах Используйте пометку на удаление или архивирование
    Недостаточно прав У пользователя нет роли «Администратор» или «Редактор справочников» Обратитесь к администратору за расширением прав
    Номенклатура входит в серию/характеристику Позиция связана с дополнительными аналитиками Сначала удалите связи в справочниках Серии номенклатуры или Характеристики
    Ошибка блокировки данных База заблокирована другим пользователем или процессом Закройте все сеансы 1С и повторите попытку
    Не удается удалить группу номенклатуры В группе есть вложенные элементы Сначала перенесите или удалите все позиции внутри группы

    Чтобы избежать ошибок:

    • 🔍 Всегда проверяйте связи через кнопку «Где используется» в карточке номенклатуры.
    • 📅 Удаляйте позиции в нерабочее время, когда в базе минимальное количество пользователей.
    • 📋 Ведите журнал изменений (например, в 1С:Документооборот), где фиксируйте, какую номенклатуру и почему удаляете.
    💡

    Большинство ошибок при удалении номенклатуры связано с игнорированием проверки связей. Всегда используйте инструмент «Где используется» (Ctrl+Alt+F7) перед удалением!

    FAQ: Ответы на частые вопросы

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

    Нет, если номенклатура используется в проведенных документах закрытого периода (например, в накладных за прошлый год), 1С заблокирует удаление. В этом случае:

    • Используйте пометку на удаление.
    • Перенесите позицию в архивную группу.
    • Если необходимо полностью удалить — сначала переоткройте период (меню Администрирование → Настройка учета → Периоды), но это может потребовать согласования с бухгалтерией.
    Как массово удалить неиспользуемую номенклатуру?

    Для массового удаления:

    1. Сформируйте отчет «Анализ номенклатуры» с фильтром по дате последнего движения (например, старше 2 лет).
    2. Экспортируйте список в Excel и отметьте позиции для удаления.
    3. Используйте внешнюю обработку (пример кода в разделе 4) или стандартный механизм пометки на удаление для выбранных позиций.

    Для 1С:УТ 11 и ERP есть готовые обработки на Инфостарте, например, «Массовое удаление неиспользуемой номенклатуры».

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

    Это означает, что удаленная позиция была связана с другими элементами (характеристиками, сериями, комплектами). Чтобы исправить:

    1. Восстановите номенклатуру из резервной копии или журнала удаленных объектов.
    2. Проверьте цепочку связей через отчет «Анализ связей объектов» (Администрирование → Обслуживание).
    3. Если восстановление невозможно — создайте новую номенклатуру с теми же реквизитами и вручную перенастройте связи в документах.

    В будущем перед удалением всегда проверяйте зависимости через кнопку «Где используется» (Ctrl+Alt+F7).

    Как удалить номенклатуру в 1С:Бухгалтерия 3.0?

    В 1С:Бухгалтерия 3.0 удаление номенклатуры имеет особенности:

    1. Перейдите в Справочники → Товары и услуги (номенклатура).
    2. Если позиция используется в документах, система предложит только пометить на удаление.
    3. Для полного удаления сначала нужно удалить все движения по номенклатуре (перепровести документы с ее участием или создать корректировочные записи).

    В этой конфигурации особенно важно проверять, не попала ли номенклатура в налоговые регистры (НДС, прибыль). Удаление таких позиций может привести к расхождениям в декларациях.

    Можно ли удалить номенклатуру через SQL-запрос к базе 1С?

    Технически да, но это крайне не рекомендуется. Прямое удаление через SQL (например, DELETE FROM Reference10 WHERE ...) нарушает целостность данных, так как:

    • Не обновляются регистры накопления (остатки, движения).
    • Не корректируются связи в документах.
    • Может привести к ошибкам при проведении или открытии базы.

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