Имя: Пароль:
1C
1C 7.7
v7: Консультация по прямому запросу/логике запроса
0 Fiasko
 
15.05.13
01:54
Господа, я немного озадачен. Дело в том, что я запросам цепляю номенклатуру, фильтруя по свойствам номенклатуры. Фильтра по свойствам - это списки. Запрос, который ниже, возвращает все товары, входящие в эти списки. Но у меня, скажем так, некая форма с мульти запросом. Т.е. я на форме выставляю значения по нескольким характеристикам и хочу получить только те товары, которые отвечают условиям данного фильтра. Что-то мне подсказывает, что здесь вообще другая логика запроса должна быть... Есть мысли у кого-нибудь? Может можно какие-нить доп. условия в данный запрос вписать?

   ТекстЗапроса = "
   |SELECT Номенклатура.ID [Ссылка $Справочник.Номенклатура]
   |FROM $Справочник.Номенклатура AS Номенклатура With (NOLOCK)
   |INNER JOIN $Справочник.СвойстваНоменклатуры AS СвойстваНоменклатуры With (NOLOCK) ON Номенклатура.ID = СвойстваНоменклатуры.PARENTEXT
   |WHERE (Номенклатура.ISMARK <> 1)
   |AND (Номенклатура.ID IN (SELECT val FROM #ТекСписокРукавов))
   |AND ($СвойстваНоменклатуры.ВидСвойства IN (SELECT val FROM #ВидыФильтра))
   |AND ($СвойстваНоменклатуры.ЗначениеСвойства IN (SELECT val FROM #ЗначенияФильтра))
   |"
   ;
1 Злопчинский
 
15.05.13
01:57
зачем условие на вид свойства? значение свойства однозначно определяет пару видсвойтва-значение свойства
2 Fiasko
 
15.05.13
01:58
ну дело в том что я по разным видам свойства фильтрую... или все равно косяк? :)
3 Fiasko
 
15.05.13
02:03
(1) условие по виду убрать не проблема, только пока это ничего не меняет...
я, просто, пока ваяю запросы, могу изначально много лишнего "нагородить"... а потом, если запрос удался :) - оптимизирую его... че говорить - дилетант, ёпть.. :)
4 Fiasko
 
15.05.13
02:30
о, кажись пришло в голову кое-что : можно сделать запрос по списку товаров с фильтрами, используя несколько итераций ... скорость, конечно, в несколько раз уменьшится, но, вроде, самое простое...
5 Злой Бобр
 
15.05.13
04:46
(0) Ну для этого нада как минимум увидеть ert, md, dt. Поскольку я не телепат то могу лишь догадываться что быстрее будет отрабатывать при select СвойстваНоменклатуры.id а не как у тебя. Но опять таки - это как из пушки по воробьям.
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс