Работа с номенклатурой в 1С:Предприятие часто требует выбора конкретных позиций из определенных групп.hether вы формируете документ, настраиваете отчет или пишете обработку — умение быстро находить нужные товары, услуги или материалы сэкономит часы рабочего времени. Но как именно выбрать номенклатуру из группы, если в справочнике тысячи позиций? Существует как минимум 5 различных подходов — от простого ручного выбора до сложных программных решений с использованием запросов.

Многие пользователи ограничиваются стандартным поиском по наименованию, не подозревая, что система предлагает гораздо более гибкие инструменты. Например, можно отфильтровать номенклатуру по Группе, Виду, Артикулу или даже по пользовательским реквизитам. А для разработчиков доступны методы программного отбора через 1C:EnterpriseScript или 1C:QueryLanguage. В этой статье мы разберем все варианты — от базовых до продвинутых, — чтобы вы могли выбрать оптимальный способ для своей задачи.

Если вы работаете с 1С:УТ 11, 1С:ERP или 1С:Бухгалтерия 3.0, принципы выбора номенклатуры из группы будут схожими, но могут отличаться деталями интерфейса. Например, в Управлении Торговлей справочник номенклатуры интегрирован с заказами и складскими операциями, а в Бухгалтерии акцент сделан на учетные категории. Учтите это при применении инструкций.

📊 Какой версии 1С вы пользуетесь?
1С:УТ 11
1С:ERP
1С:Бухгалтерия 3.0
1С:ЗУП
Другая конфигурация

1. Ручной выбор номенклатуры через справочник

Самый простой способ — открыть справочник Номенклатура и вручную перейти в нужную группу. Этот метод подходит для разовых операций, когда требуется добавить 1-2 позиции в документ.

Чтобы открыть справочник:

  1. Перейдите в меню Справочники → Номенклатура (или нажмите Ctrl+Shift+N в большинстве конфигураций).
  2. В левой части окна разверните дерево групп, найдите нужную категорию (например, Товары → Электроника → Телефоны).
  3. В правой части отобразится список номенклатуры, относящейся к выбранной группе. Выделите нужные позиции и нажмите Выбрать или перетащите их в документ.

Для ускорения процесса используйте горячие клавиши:

  • 🔍 Ctrl+F — быстрый поиск по наименованию или артикулу.
  • ↑↓ Стрелки — навигация по списку без мыши.
  • Enter — подтверждение выбора текущей позиции.
⚠️ Внимание: В некоторых конфигурациях (например, 1С:Розница) справочник номенклатуры может быть разделен на Товары, Услуги и Комплекты. Убедитесь, что вы находитесь в правильном разделе, иначе нужные позиции просто не отобразятся.

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

2. Фильтрация номенклатуры по группе и другим параметрам

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

  • 📁 Группе (например, только из Канцтовары).
  • 🏷️ Виду номенклатуры (товар, услуга, комплект).
  • 📊 Дополнительным реквизитам (цвет, размер, бренд).
  • 📅 Дате создания/изменения.

Чтобы применить фильтр:

  1. Откройте справочник Номенклатура.
  2. Нажмите кнопку Ещё → Фильтр (или Alt+F).
  3. В поле Группа выберите нужную категорию из дерева.
  4. При необходимости добавьте другие условия (например, Вид = Товар).
  5. Нажмите Применить.

После фильтрации вы увидите только те позиции, которые соответствуют заданным критериям. Их можно выделять группой (с зажатым Ctrl или Shift) и переносить в документы.

Убедиться, что фильтр применен к правильной группе|

Проверить дополнительные реквизиты (если используются)|

Сбросить фильтр после работы (кнопка "Очистить")|

Сохранить часто используемые фильтры как "Избранное" (если поддерживается)

-->

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

3. Быстрый выбор через поле ввода (поиск по коду/артикулу)

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

  1. Перейти в табличную часть документа (например, Товары).
  2. Нажать Добавить или Insert.
  3. В поле Номенклатура начать вводить известные символы (артикул, название или часть имени группы).
  4. Система автоматически предложит варианты из справочника. Выберите нужный.

Этот метод работает благодаря автоподстановке — функции, которая искает совпадения по первым буквам. Например, если ввести тел сам, система найдет все позиции с наименованиями типа Телефон Samsung или Телевизор Samsung.

Для ускорения процесса используйте горячие клавиши:

  • 🔤 F4 — открыть справочник номенклатуры в отдельном окне.
  • 🔍 Ctrl+Shift+F — расширенный поиск (в некоторых конфигурациях).
  • Tab — перемещение между полями документа.
⚠️ Внимание: Если номенклатура не находится по артикулу, проверьте настройки справочника. В некоторых конфигурациях артикулы хранятся в отдельном реквизите, и для поиска по ним требуется включить опцию Искать по артикулу в параметрах справочника.

В 1С:Розница и 1С:УТ поле ввода номенклатуры поддерживает сканер штрихкодов. Если подключить сканер к компьютеру, можно просто отсканировать штрихкод товара — система автоматически подставит его в документ.

4. Программный выбор номенклатуры из группы (для разработчиков)

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

Способ 1. Выбор через объект справочника

// Получаем ссылку на группу

Группа = Справочники.Номенклатура.НайтиПоНаименованию("Электроника.Телефоны");

// Выбираем все позиции из группы

Выборка = Справочники.Номенклатура.Выбрать();

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

Если Выборка.ЭтоГруппа() Тогда

Продолжить;

КонецЕсли;

Если Выборка.Родитель = Группа Тогда

Сообщить(Выборка.Наименование);

КонецЕсли;

КонецЦикла;

Способ 2. Использование запроса

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

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

"ВЫБРАТЬ

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

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

|ИЗ

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

|ГДЕ

| Номенклатура.Родитель = &Группа

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

Запрос.УстановитьПараметр("Группа", Группа);

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

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

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

Сообщить(ВыборкаРезультата.Наименование);

КонецЦикла;

Способ 3. Отбор по нескольким группам

// Получаем массив групп

МассивГрупп = Новый Массив;

МассивГрупп.Добавить(Справочники.Номенклатура.НайтиПоНаименованию("Электроника.Телефоны"));

МассивГрупп.Добавить(Справочники.Номенклатура.НайтиПоНаименованию("Электроника.Планшеты"));

// Формируем запрос с условием "Родитель В (&МассивГрупп)"

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

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

"ВЫБРАТЬ

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

|ИЗ

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

|ГДЕ

| Номенклатура.Родитель В (&МассивГрупп)

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

Запрос.УстановитьПараметр("МассивГрупп", МассивГрупп);

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

Эти примеры подходят для 1С:Предприятие 8.3. В более старых версиях (8.2 и ниже) синтаксис запросов может отличаться.

Как ускорить выборку больших справочников?

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

ГДЕ Номенклатура.Наименование ПОДОБНО "%Телефон%"

лучше использовать:

ГДЕ Номенклатура.Наименование СОДЕРЖИТ "Телефон"

Это ускорит выполнение запроса в 2-3 раза.

5. Использование обработок для массового выбора

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

  • 📋 Сохранять часто используемые группы.
  • 🔄 Автоматически заполнять документы по шаблонам.
  • 📊 Экспортировать списки номенклатуры в Excel или PDF.

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

&НаКлиенте

Процедура ВыбратьНоменклатуру(Команда)

Группа = Справочники.Номенклатура.ВыбратьГруппу();

Если Группа = Неопределено Тогда

Возврат;

КонецЕсли;

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

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

"ВЫБРАТЬ

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

|ИЗ

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

|ГДЕ

| Номенклатура.Родитель = &Группа

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

Запрос.УстановитьПараметр("Группа", Группа);

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

// Выводим результат в таблицу на форме

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

ЭлементыФормы.ТаблицаНоменклатуры.Значение = РезультатВыбора;

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

Чтобы создать такую обработку:

  1. Откройте Конфигуратор (режим 1С:Предприятие должен быть закрыт).
  2. Создайте новый объект Обработка.
  3. Добавьте на форму таблицу и кнопку Выбрать номенклатуру.
  4. В модуле формы пропишите код, аналогичный примеру выше.
  5. Сохраните обработку и запустите в режиме 1С:Предприятие.
⚠️ Внимание: При работе с большими справочниками (более 50 000 позиций) избегайте выгрузки всех данных в таблицу формы — это может привести к зависанию интерфейса. Вместо этого используйте постраничный вывод или фильтрацию на стороне СУБД.

Готовые обработки для массового выбора номенклатуры можно найти на портале Infostart или в каталоге 1С:ИТС. Например, популярная обработка "Помощник работы с номенклатурой" позволяет гибко настраивать отборы и экспортировать данные в различные форматы.

6. Особенности выбора в типовых конфигурациях

В зависимости от конфигурации процесс выбора номенклатуры из группы может иметь нюансы. Рассмотрим наиболее распространенные варианты:

Конфигурация Особенности выбора номенклатуры Дополнительные инструменты
1С:Управление Торговлей 11 Поддержка характеристик (цвет, размер) и серий. В справочнике есть вкладка Цены для быстрого просмотра актуальных цен. Отчет Анализ номенклатуры, обработка Загрузка номенклатуры из Excel.
1С:ERP Управление предприятием Интеграция с производством и CRM. Номенклатура может быть связана с Проектами или Задачами. Механизм Планы продаж для анализа спроса по группам.
1С:Бухгалтерия 3.0 Акцент на учетные категории (НДС, счет учета). В справочнике отображаются Счета БУ и Счета НУ. Отчет Карточка счета для анализа движений по номенклатуре.
1С:Розница Поддержка штрихкодов и маркировки (например, для алкоголя). Есть отдельный справочник Товары в рознице. Обработка Инвентаризация товаров с фильтрацией по группам.
1С:Зарплата и Управление Персоналом Номенклатура используется редко (в основном для материальной помощи или корпоративных подарков). Отсутствуют специализированные отчеты по номенклатуре.

В 1С:УТ 11 и 1С:ERP при выборе номенклатуры в документах доступна кнопка Подбор. Она открывает отдельное окно, где можно:

  • 🔍 Искать по группе, артикулу или наименованию.
  • 📊 Видеть остатки на складах в реальном времени.
  • 📋 Добавлять позиции в документ прямо из окна подбора.

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

  1. Откройте справочник Номенклатура.
  2. Нажмите Ещё → Настроить список.
  3. Добавьте нужные колонки (например, Артикул, Единица измерения, Ставка НДС).
  4. Сохраните настройку как Пользовательский вариант.
💡

В 1С:ERP и 1С:УТ 11 для ускорения работы используйте горячие клавиши подбора: Ctrl+Shift+P открывает окно подбора номенклатуры в большинстве документов.

7. Ошибки при выборе номенклатуры и их решение

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

Проблема 1. Номенклатура не находится по артикулу

  • Причина: Артикул хранится в отдельном реквизите, и поиск по нему не настроен.
  • Решение: В настройках справочника (Ещё → Изменить форму) добавьте артикул в список полей для быстрого поиска.

Проблема 2. В выборке попадают позиции из других групп

  • Причина: Некорректное условие в запросе (например, не учтено, что позиция может принадлежать нескольким группам через механизм Дополнительные группы).
  • Решение: Используйте явное условие по основной группе:
    ГДЕ Номенклатура.Родитель = &Группа И Номенклатура.ЭтоГруппа = ЛОЖЬ

Проблема 3. Медленная работа справочника

  • Причина: Большой объем данных (более 100 000 позиций) или отсутствие индексов.
  • Решение:
    • 🔧 Настройте индексы для полей, по которым часто ищут (например, Артикул, Наименование).
    • 🗑️ Архивируйте неиспользуемую номенклатуру (переносите в отдельную группу Архив).
    • 🔄 Используйте фоновое обновление справочника (если поддерживается конфигурацией).

Проблема 4. При программном выборе выдается ошибка "Объект не найден"

  • Причина: Неверно указано имя группы или номенклатуры в коде.
  • Решение: Проверьте регистр и точное наименование:
    Группа = Справочники.Номенклатура.НайтиПоНаименованию("Товары.Электроника"); // Чувствительно к регистру!

    Альтернативно используйте поиск по Ссылке или Коду.

⚠️ Внимание: В конфигурациях с включенным механизмом Управляемые формы (например, 1С:УТ 11) некоторые методы работы со справочниками отличаются от обычных форм. Например, для программного открытия справочника используйте:
ОткрытьФорму("Справочник.Номенклатура.ФормаСписка");

8. Автоматизация выбора номенклатуры: интеграция с внешними системами

Если номенклатура хранится во внешней системе (например, Excel, CRM или WMS), можно настроить автоматический обмен данными. Например, в 1С:УТ 11 поддерживается:

  • 📥 Импорт номенклатуры из Excel или CSV.
  • 🔄 Синхронизация с 1С:EDI (электронный документооборот).
  • 🌐 Интеграция с Bitrix24, MoySklad или другими сервисами через REST API.

Для настройки импорта из Excel:

  1. Откройте Администрирование → Обмен данными → Универсальный обмен данными.
  2. Создайте новое правило обмена для справочника Номенклатура.
  3. Укажите файл-источник и сопоставьте колонки (Наименование, Артикул, Группа).
  4. Запустите загрузку.

Пример кода для загрузки номенклатуры из JSON (например, из веб-сервиса):

// Чтение JSON из файла или HTTP-запроса

ТекстJSON = Новый ЧтениеJSON;

ТекстJSON.УстановитьСтроку(ПолучитьТекстИзФайла("номенклатура.json"));

Данные = ПрочитатьJSON(ТекстJSON);

// Обход массива и создание номенклатуры

Для Каждого Элемент Из Данные Цикл

НоваяНоменклатура = Справочники.Номенклатура.СоздатьЭлемент();

НоваяНоменклатура.Наименование = Элемент.Наименование;

НоваяНоменклатура.Артикул = Элемент.Артикул;

НоваяНоменклатура.Родитель = Справочники.Номенклатура.НайтиПоНаименованию(Элемент.Группа);

НоваяНоменклатура.Записать();

КонецЦикла;

Для интеграции с 1С:EDI или Диадок используйте стандартные обработки обмена, которые поставляются с конфигурацией. Например, в 1С:УТ 11 есть встроенный механизм для приема УПД (универсальный передаточный документ) с автоматической подстановкой номенклатуры по ГТД или артикулу поставщика.

💡

Если вы регулярно импортируете номенклатуру из Excel, создайте шаблон файла с заранее настроенными колонками. Это сэкономит время на сопоставление полей при каждом импорте.

FAQ: Частые вопросы по выбору номенклатуры из группы

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

Используйте запрос с оператором В (IN). Пример:

ГДЕ Номенклатура.Родитель В (&МассивГрупп)

Где &МассивГрупп — массив ссылок на группы. Также можно использовать дополнительные группы номенклатуры, если они настроены в конфигурации.

Почему при выборе номенклатуры не отображаются остатки на складах?

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

  1. Проверьте, включен ли флажок Показывать остатки в настройках подбора.
  2. Убедитесь, что у пользователя есть права на просмотр остатков (роль Просмотр остатков товаров).
  3. Обновите остатки (Операции → Обновление остатков).
Можно ли выбрать номенклатуру по частичному совпадению названия группы?

Да, для этого используйте оператор ПОДОБНО в запросе:

ГДЕ Номенклатура.Родитель.Наименование ПОДОБНО "%Электро%"

Или в ручном режиме воспользуйтесь поиском по дереву групп (Ctrl+F в справочнике).

Как экспортировать номенклатуру из группы в Excel?

Способы экспорта:

  1. Через отчет: Создайте отчет с выборкой номенклатуры из группы и экспортируйте его в Excel (Файл → Сохранить как).
  2. Через обработку: Используйте метод ЗаписатьExcel:
    Таблица = Новый ТаблицаЗначений;
    

    Таблица.Выгрузить(РезультатЗапроса);

    ЗаписатьExcel = Новый ЗаписьДанныхExcel;

    ЗаписатьExcel.ОткрытьФайл("номенклатура.xlsx");

    ЗаписатьExcel.Записать(Таблица);

  3. Через внешнюю обработку: Например, "Выгрузка в Excel" из каталога 1С:ИТС.
Как запретить пользователям выбирать номенклатуру из определенных групп?

Для этого настройте права доступа:

  1. Откройте Администрирование → Пользователи и права.
  2. Выберите роль пользователя (например, Менеджер по продажам).
  3. В разделе Права на справочники ограничьте доступ к группам номенклатуры:
    • Запретите Просмотр для чувствительных групп.
    • Или настройте