Как исправить ошибку Найденная номенклатура отсутствует в подборе при заданных условиях в 1С

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

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

Где и почему возникает ошибка в программном коде

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


Функция СШКНоменклатура(Номенклатура, Характеристика, Серия, Качество, Единица, Количество, СШК) Экспорт
Функция СШКУпаковка(Номенклатура, Характеристика, Серия, Качество, Единица, Количество, Упаковка, СШК) Экспорт

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


Если СтрокаНоменклатуры = Неопределено Тогда
    Предупреждение("Найденная номенклатура отсутствует в подборе при заданных условиях!"); 
КонецЕсли;

Предупреждение выдается тогда, когда товар физически есть в справочнике Номенклатура, но в сформированной выборке формы подбора строка с ним отсутствует. Выясним основные причины такого поведения.

Причина 1. Режим подбора по остаткам номенклатуры

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

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

Разберем по шагам, как решить эту проблему:

  1. Переключим режим подбора с «Остатки номенклатуры» на «По справочнику». В этом режиме отображается вся номенклатура вне зависимости от наличия на складе.
  2. Сформируем отчет «Оборотно-сальдовая ведомость по счету» (например, по счету 41.01 или 10.01) с группировкой по номенклатуре, складам и подразделениям, чтобы проверить фактическое наличие товара на дату документа.

Причина 2. Ограничения прав доступа на уровне записей (RLS)

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

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

Для исправления прав доступа выполним следующие действия:

  1. Откроем Журнал регистрации и проверим события с уровнем «Отказ в доступе».
  2. Проверим профили групп доступа проблемного пользователя в справочнике Группы доступа.
  3. Убедимся, что пользователю разрешен доступ к подразделению отправителя и подразделению получателя, указанным в документе перемещения.
  4. Проверим доступность счетов учета, на которых числятся ТМЦ.

Причина 3. Пользовательские фильтры и настройки формы

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

Рассмотрим, как сбросить настройки:

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

Причина 4. Различия в персональных настройках пользователя

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

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

← На главную