Как скрыть неиспользуемую номенклатуру в 1С:Бухгалтерия 8.3 без удаления

Бухгалтер 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Бухгалтерский учет Торговля и дистрибуция
← На главную

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

Способ 1. Штатный функционал скрытия номенклатуры

В современных релизах конфигурации «1С:Бухгалтерия 3.0» предусмотрен специальный встроенный механизм для вывода товаров из активного оборота. Рассмотрим, как им воспользоваться:

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

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

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

Способ 2. Организационный метод: папка «Архив» и изменение наименования

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

  1. В справочнике Номенклатура создаем отдельную группу (папку) с названием «Архив» (или «_Архив (не использовать)»). Для удобства восстановления структуры внутри можно повторить иерархию рабочих папок.
  2. Перемещаем устаревшие элементы в созданную группу.
  3. В карточке номенклатуры добавляем в начало поля Наименование специальную метку, например: [АРХИВ] Товар или (не использовать) Товар.

Важный нюанс: реквизит Наименование используется для быстрого поиска и отображения в интерфейсе программы. Для печатных форм первичных документов (УПД, ТОРГ-12, Счетов) конфигурация использует реквизит НаименованиеПолное. Если изменить только краткое рабочее наименование, печатные формы старых проведенных документов останутся юридически корректными.

Способ 3. Фильтрация по остаткам в окне подбора

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

  1. В документе реализации или счета нажимаем кнопку «Подбор».
  2. В открывшейся форме подбора переключаем режим отображения остатков — устанавливаем фильтр «Только в наличии» (показывать товары с остатком больше нуля).

Если старая номенклатура полностью списана или распродана, данный переключатель моментально скроет все неактуальные карточки без необходимости менять их реквизиты.

Способ 4. Использование дополнительных реквизитов и настройки списка

В конфигурациях на базе БСП (Библиотеки стандартных подсистем) можно настроить фильтрацию через типовые дополнительные реквизиты без внесения изменений в структуру метаданных:

  1. Переходим в раздел «Администрирование» — «Общие настройки» — «Дополнительные реквизиты и сведения» и включаем соответствующий флаг.
  2. В справочнике «Дополнительные реквизиты» для объекта Номенклатура создаем новый реквизит «Архив» с типом значения Булево.
  3. В карточках ненужных товаров проставляем флаг «Архив» (массово это можно сделать через инструмент «Групповое изменение реквизитов»).
  4. В форме списка или выбора номенклатуры открываем меню «Еще» — «Настроить список».
  5. На вкладке «Отбор» добавляем условие: Архив (Номенклатура) Равно Нет.

Настроенный отбор сохраняется для пользователя и скрывает элементы из видимости в окне выбора.

Способ 5. Программное скрытие через расширение конфигурации

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

1. Добавляем в расширение реквизит НеИспользуется (тип Булево) для справочника Номенклатура.

2. Перехватываем событие автоподбора в модуле менеджера справочника, чтобы скрыть товары при наборе наименования или артикула в табличной части:


&Вместо("ОбработкаПолученияДанныхВыбора")
Процедура Расш1_ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка)
    // Добавляем обязательный отбор по признаку активности
    Параметры.Отбор.Вставить("НеИспользуется", Ложь);
    ПродолжитьВызов(ДанныеВыбора, Параметры, СтандартнаяОбработка);
КонецПроцедуры

3. В модулях документов (например, РеализацияТоваровУслуг) в событии ОбработкаПроверкиЗаполнения добавляем контроль, исключающий проведение документов с архивной номенклатурой, если пользователь скопировал старый документ целиком.

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

Проанализируем две распространенные ошибки при решении этой задачи:

  1. Ограничение доступа на уровне записей (RLS): если ограничить права чтения архивных элементов через механизм RLS для роли обычных пользователей, то во всех исторических закрытых периодах, отчетах и проведенных накладных вместо названия товара пользователи увидят системную надпись <Объект не найден>. Кроме того, усложнение RLS создает дополнительную нагрузку на СУБД.
  2. Очистка артикулов: удаление артикула из карточки товара лишает возможности идентифицировать позицию при сверке с документами поставщиков прошлых лет, а также делает невозможным автоматическое восстановление информации при возобновлении поставок.
← На главную