Имя: Пароль:
1C
1С v8
УТ11 - Ускорение выбора номенклатуры в документах
0 Dmitry1c
 
05.08.14
18:43
1. Помогает 0% (0)
2. Фигня 0% (0)
Всего мнений: 0

Общий модуль "НоменклатураВызовСервера", процедура "НоменклатураОбработкаПолученияДанныхВыбора"

меняем текст запроса на:

ТекстЗапроса =
    "ВЫБРАТЬ ПЕРВЫЕ 10
    |    СпрНоменклатура.Ссылка,
    |    СпрНоменклатура.Наименование КАК ПредставлениеСовпадения,
    |    СпрНоменклатура.Качество.Порядок КАК Качество,
    |    0 КАК Порядок,
    |    СпрНоменклатура.Код КАК ПредставлениеНоменклатуры,
    |    СпрНоменклатура.ЭтоГруппа
    |ПОМЕСТИТЬ НоменклатураПоиск
    |ИЗ
    |    Справочник.Номенклатура КАК СпрНоменклатура
    |ГДЕ
    |    СпрНоменклатура.Наименование ПОДОБНО &СтрокаПоиска
    |    И СпрНоменклатура.ЭтоГруппа = ЛОЖЬ" + УсловиеОтбора + "
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ ПЕРВЫЕ 10
    |    СпрНоменклатура.Ссылка,
    |    СпрНоменклатура.Код,
    |    СпрНоменклатура.Качество.Порядок,
    |    1,
    |    СпрНоменклатура.Наименование,
    |    NULL
    |ИЗ
    |    Справочник.Номенклатура КАК СпрНоменклатура
    |ГДЕ
    |    СпрНоменклатура.Код ПОДОБНО &СтрокаПоиска
    |    И СпрНоменклатура.ЭтоГруппа = ЛОЖЬ" + УсловиеОтбора + "
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ ПЕРВЫЕ 10
    |    СпрНоменклатура.Ссылка,
    |    СпрНоменклатура.Артикул,
    |    СпрНоменклатура.Качество.Порядок,
    |    2,
    |    СпрНоменклатура.Наименование,
    |    NULL
    |ИЗ
    |    Справочник.Номенклатура КАК СпрНоменклатура
    |ГДЕ
    |    СпрНоменклатура.Артикул ПОДОБНО &СтрокаПоиска
    |    И СпрНоменклатура.ЭтоГруппа = ЛОЖЬ" + УсловиеОтбора + "
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ ПЕРВЫЕ 10
    |    СпрНоменклатура.Ссылка,
    |    СпрНоменклатура.КодДляПоиска,
    |    СпрНоменклатура.Качество.Порядок,
    |    3,
    |    СпрНоменклатура.Наименование,
    |    NULL
    |ИЗ
    |    Справочник.Номенклатура КАК СпрНоменклатура
    |ГДЕ
    |    СпрНоменклатура.КодДляПоиска ПОДОБНО &СтрокаПоиска
    |    И СпрНоменклатура.ЭтоГруппа = ЛОЖЬ" + УсловиеОтбора + "
    |;
    |    
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    НоменклатураПоиск.Ссылка,
    |    МИНИМУМ(НоменклатураПоиск.Порядок) КАК Порядок
    |ПОМЕСТИТЬ НоменклатураПоПорядку
    |ИЗ
    |    НоменклатураПоиск КАК НоменклатураПоиск
    |
    |СГРУППИРОВАТЬ ПО
    |    НоменклатураПоиск.Ссылка
    |;
    |
    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    НоменклатураПоиск.Качество КАК Качество,
    |    НоменклатураПоиск.Ссылка,
    |    НоменклатураПоиск.Порядок КАК Порядок,
    |    НоменклатураПоиск.ПредставлениеСовпадения КАК ПредставлениеСовпадения,
    |    НоменклатураПоиск.ПредставлениеНоменклатуры КАК ПредставлениеНоменклатуры
    |ИЗ
    |    НоменклатураПоПорядку КАК НоменклатураПоПорядку
    |        ЛЕВОЕ СОЕДИНЕНИЕ НоменклатураПоиск КАК НоменклатураПоиск
    |        ПО НоменклатураПоПорядку.Ссылка = НоменклатураПоиск.Ссылка
    |            И НоменклатураПоПорядку.Порядок = НоменклатураПоиск.Порядок
    |
    |УПОРЯДОЧИТЬ ПО
    |    Порядок,
    |    Качество,
    |    ПредставлениеСовпадения,
    |    ПредставлениеНоменклатуры";
    
    Запрос.Текст = ТекстЗапроса;
    


Хочу обсуждения. Реально помогает / Я сделал фигню.