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

Торговля и Склад · 10 мин

Как в 1С сделать отбор по товару

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

Отбор по товару — одна из самых частых операций в 1С: она нужна при поиске номенклатуры в справочнике, при формировании отчётов по продажам и остаткам, при работе с документами и при настройке динамических списков. Способ зависит от того, где именно вы работаете: в форме списка, в отчёте на СКД или в коде.

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

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

Быстрый поиск товара в списке номенклатуры

Самый простой способ найти товар — строка поиска в верхней части формы списка справочника «Номенклатура». Откройте раздел «НСИ и администрирование» (или «Справочники») → «Номенклатура» и начните вводить часть наименования или артикула. Список автоматически отфильтруется по вхождению строки.

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

Для точного отбора по конкретным значениям используйте команду «Ещё» → «Настроить список» (в некоторых версиях — «Установить отбор и сортировку списка»). В открывшейся форме добавьте условие: поле «Номенклатура» (или «Ссылка»), вид сравнения «Равно», значение — нужный товар. Можно выбрать вид сравнения «В списке» и указать сразу несколько товаров.

Отбор товара в списке справочника
  1. 1
    Откройте справочник «Номенклатура»
  2. 2
    Нажмите «Ещё» → «Настроить список»
  3. 3
    Добавьте отбор: поле «Наименование» или «Артикул», вид сравнения «Содержит» или «Равно»
  4. 4
    Укажите значение и нажмите «ОК»
  5. 5
    Проверьте, что список отфильтрован, а над списком появилась надпись об установленном отборе

Отбор по товару в отчётах (продажи, остатки, обороты)

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

Для добавленного отбора задайте вид сравнения и значение. Полезные варианты: «Равно» — один конкретный товар; «В списке» — несколько товаров; «В группе» — все товары из выбранной папки справочника; «Содержит» — по части наименования (работает медленнее на больших базах). После настройки нажмите «Закрыть и сформировать» или «Сформировать».

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

Отбор в документах и журналах документов

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

Альтернатива — отчёт «Динамика продаж» или универсальный отчёт по регистру, где в отбор добавляется поле «Номенклатура», а в группировках — «Регистратор» (документ). Так вы получите список документов с нужным товаром, количеством и суммами.

Внутри самого документа найти строку с товаром можно через поиск по табличной части: Ctrl+F или кнопка поиска над таблицей товаров. В больших документах это быстрее, чем прокрутка списка вручную.

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

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

Для отбора целой категории удобнее всего «В группе» по папке справочника или отбор по дополнительному реквизиту/свойству (например, «Марка», «Тип номенклатуры», «Вид номенклатуры»). Отбор по виду номенклатуры («Товары», «Услуги») часто используют, чтобы исключить услуги из отчётов по складу.

Комбинируйте условия: например, «Номенклатура В группе „Обувь“» И «Склад Равно „Основной склад“». Несколько строк отбора по умолчанию соединяются логическим «И». Для условия «ИЛИ» в настройках СКД нужно добавить группу отбора с типом «Группа ИЛИ» через контекстное меню.

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

Равно

Один конкретный товар. Самый быстрый вариант, но требует точного указания элемента.

В списке

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

В группе

Вся папка справочника с подпапками. Удобно для категорий, но зависит от корректности иерархии.

Содержит

Поиск по части наименования. Гибко, но медленно на больших базах и может захватить лишнее.

Программный отбор: запрос и динамический список

Если вы разрабатываете или дорабатываете конфигурацию, отбор по товару в запросе задаётся через параметр виртуальной таблицы или условие ГДЕ. Для регистра накопления «ТоварыНаСкладах» отбор по номенклатуре правильно указывать в параметрах виртуальной таблицы — так запрос выполнится быстрее.

bsl
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ТоварыНаСкладахОстатки.Номенклатура,
| ТоварыНаСкладахОстатки.ВНаличииОстаток
|ИЗ
| РегистрНакопления.ТоварыНаСкладах.Остатки(, Номенклатура = &Товар) КАК ТоварыНаСкладахОстатки";
Запрос.УстановитьПараметр("Товар", ОтбираемыйТовар);
Результат = Запрос.Выполнить().Выгрузить();

Для динамического списка на форме отбор добавляется программно через коллекцию ЭлементыОтбора. Типичный код в обработчике ПриСозданииНаСервере:

bsl
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Номенклатура");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = ТоварСсылка;
ЭлементОтбора.Использование = Истина;

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

Проверка результата и типичные проблемы

После установки отбора убедитесь, что он действительно применился: над списком появляется строка вида «Отбор: Номенклатура = …». Если надписи нет, а список не изменился — отбор не сохранён или отключён флажком использования.

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

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

Надпись об отборе над списком
Норма

Отображается условие отбора, список сокращён

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

Надписи нет, показываются все товары — отбор не применён

Состав выборки в отчёте
Норма

В отчёт попал только нужный товар или группа

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

Попали лишние позиции — проверьте вид сравнения и иерархию групп

Пустой результат
Норма

Товар есть в базе и есть движения за период

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

Пусто при наличии данных — проверьте период отчёта, права доступа и лишние строки отбора

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

Типичные ошибки
01
Отбор по наименованию «Равно» вместо «Содержит» — из-за лишнего пробела или регистра товар не находится; используйте «Содержит» или подбор из справочника
02
Отбор «В группе» по папке, в которую товары фактически не входят — результат пуст; проверьте иерархию справочника
03
В отчёте забыли снять старый отбор из сохранённых настроек — данные искажены; сбросьте настройки кнопкой «Стандартные настройки»
04
Отбор по номенклатуре в условии ГДЕ вместо параметров виртуальной таблицы — запрос работает в разы медленнее на больших базах

Когда стандартного отбора недостаточно

Если нужно отбирать товары по сложным условиям — например, «все товары, которые продавались в прошлом месяце, но не продавались в текущем» — стандартных отборов не хватит. Здесь поможет консоль отчётов СКД с собственным запросом, произвольный отчёт через «Универсальный отчёт» или обработка «Консоль запросов».

Для регулярных задач сохраняйте настройки отчёта как вариант: кнопка «Ещё» → «Сохранить вариант отчёта» (или «Сохранить настройки»). В следующий раз отбор по товару применится одним выбором варианта, без повторной настройки.

Итог

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

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

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

Почему отбор по товару установлен, но список не фильтруется?

Наиболее вероятные причины: отбор добавлен, но снят флажок использования; пользовательские настройки списка перекрывают ваш отбор; применён фильтр по другому полю с противоречивым условием. Откройте «Ещё → Настроить список» и проверьте все активные строки, при необходимости сбросьте настройки к стандартным.

Как отобрать сразу много товаров, не добавляя каждый вручную?

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

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

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

Чем отличается «В группе» от «В группе из списка»?

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

Отбор по наименованию не находит товар, хотя он есть. Что делать?

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

Как сохранить настроенный отбор, чтобы не настраивать заново?

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