ОБСУЖДЕНИЕ

Поиск Номенклатуры

5 ответов 4,4 тыс.
Автор темы
Добрый день, уважаемые!
Столкнулся со следующей проблемой.
Нужно найти элемент справочника "Номенклатура" по нескольким параметрам. Казалось бы лёгкая задача. Но...
Параметры поиска содержат лишь приблизительные данные. Например: Есть строка "0513". Нужно найти элемент в котором "Артикул" содержит это значение. И так ещё по нескольким параметрам.
Запросом с использованием условия "ПОДОБНО" нужного результата добиться не могу.
Наложить фильтр на форму выбора не подходит, так как нельзя её открывать. Элемент должен выбираться программно, а не руками. Хотя срабатывает идеально, именно так как нужно. Может можно получить данные отбора?
Подскажите как ещё можно делать?...
 
запрос в студию.
 
ВЫБРАТЬ
Номенклатура.Ссылка
ИЗ
Справочник.Номенклатура КАК Номенклатура
ГДЕ
Номенклатура.ЭтоГруппа = ЛОЖЬ
И (Номенклатура.Артикул ПОДОБНО &Артикул
ИЛИ Номенклатура.Наименование ПОДОБНО &Наименование)

При этом, если "Артикул" = "0152", Элемент с "Артикулом" = "01524А45Е" не найден
 
Тут синтаксис запроса подобен скулевому LIKE . попробуйте так.
Запрос.параметры.Вставить("Артикул","%"+СокрЛП(Артикул)+"%");

Более подробно смотрите синтаксис помошник.
 
СокрЛП(), насколько я знаю, всего лишь удаляет пробелы. И мне это никак не поможет...
А вот что это такое "%"+ ... +"%" ? Никогда не встречал...

Спасибо! Помогло! Хотя я и не совсем понял как... Будем разбираться...
 
это просто параметры условия поиска ПОДОБНО, так ведь по разному можно искать, например по отсутствию латиницы.. См синтаксис помошник!