|   |   | 
| 
 | Помогите написать запрос. | ☑ | ||
|---|---|---|---|---|
| 0
    
        ЗлаяЗая 21.10.21✎ 09:50 | 
        Помогите, пожалуйста, написать запрос.
 В результате первого запроса получается выборка - список номенклатуры. У каждой номенклатуры есть родитель-группа номенклатуры. От 1 до 5 уровней. Есть РС "Группа номенклатуры- Цена услуги" Надо понять, к какому именно уровню родителя есть соответствие в РС и найти это значение. Значение точно одно. Т.е. нет такого, что есть значение для уровня1 и для уровня3 | |||
| 1
    
        Ёпрст гуру 21.10.21✎ 09:52 | 
        (0) Надо как-то заставить себя открыть пофигуратор и сотворить левое соединение по группе номенклатуры     | |||
| 2
    
        Kassern 21.10.21✎ 09:56 | 
        я правильно понимаю:
 1 таблица Номенклатура.Родитель.Родитель.Родитель="Супер папка" 2 таблица "Супер папка" 500рублев И вам надо Соединить 2 таблички и получить для всех товаров супер папки 500 рублев? | |||
| 3
    
        серый КТУЛХУ 21.10.21✎ 09:57 | 
        2 12 85 06     | |||
| 4
    
        ЗлаяЗая 21.10.21✎ 09:59 | 
        (1) Я это понимаю. Не могу понять, как по уровням писать. 
 (2) Да. Причем у каждой номенклатуры "Супер папка" может быть к разным уровням | |||
| 5
    
        ЗлаяЗая 21.10.21✎ 10:00 | 
        (3) шутку оценила :)
 Я не знаю принципа связи | |||
| 6
    
        Kassern 21.10.21✎ 10:00 | 
        (4) А если у Номенклатура.Родитель будет у папки цена 400р, а у Номенклатура.Родитель.Родитель 500р, то какую брать?     | |||
| 7
    
        ЗлаяЗая 21.10.21✎ 10:02 | 
        (6) Не будет. Это условие.     | |||
| 8
    
        Pro-tone 21.10.21✎ 10:02 | 
        (0) дам только подсказку как уровни считать
 ВЫБОР КОГДА Номенклатура.Родитель = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)Тогда 0 ИНАЧЕ КОГДА Ссылка.Родитель.Родитель = ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) Тогда 1 ... КОНЕЦ КАК Уровень | |||
| 9
    
        Kassern 21.10.21✎ 10:03 | 
        (8) это ж такая некрасивая портянка получается)     | |||
| 10
    
        Pro-tone 21.10.21✎ 10:04 | 
        (9) ну всего-то 5 концов)     | |||
| 11
    
        DrShad 21.10.21✎ 10:11 | 
        (8) не кошерно, ей нужно транзитивное замыкание курить     | |||
| 12
    
        Kassern 21.10.21✎ 10:17 | 
        Как то так:
 Запрос=Новый Запрос; Запрос.Текст="ВЫБРАТЬ | Таб1.ГруппаНоменклатуры КАК ГруппаНоменклатуры, | Таб1.Цена КАК Цена |ПОМЕСТИТЬ Таб1 |ИЗ | &Таб1 КАК Таб1 |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Таб2.Номенклатура КАК Номенклатура |ПОМЕСТИТЬ Таб2 |ИЗ | &Таб2 КАК Таб2 |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Таб2.Номенклатура КАК Номенклатура, | Таб1.ГруппаНоменклатуры КАК ГруппаНоменклатуры, | Таб1.Цена КАК Цена |ИЗ | Таб2 КАК Таб2 | ЛЕВОЕ СОЕДИНЕНИЕ Таб1 КАК Таб1 | ПО (Таб2.Номенклатура В ИЕРАРХИИ | (ВЫБРАТЬ | Таб1.ГруппаНоменклатуры | ИЗ | Таб1))"; | |||
| 13
    
        Ёпрст гуру 21.10.21✎ 10:24 | 
        (4) для 5 уровней тупо так, но будет не быстро
 
 | |||
| 14
    
        Ёпрст гуру 21.10.21✎ 10:30 | 
        Да в EСтьNull там поправишь как нннадо, смысл, надеюсь, понятен     | |||
| 15
    
        Kassern 21.10.21✎ 10:35 | 
        (13) а чем способ в (12)  не устроил? Зачем перебирать эти уровни, когда есть волшебное "В иерархии"?     | |||
| 16
    
        H A D G E H O G s 21.10.21✎ 10:51 | 
        Такие вещи нужно делать кодом.
 Для списка номенклатур получаем 1 запросом Родителей на 1 шаге, для списка родителей получаем список родителей на 2 шаге., и.т.д. Всего будет 5 запросов. В результате будет тз Номенклатура Родитель ИнверсныйУровень Суем в запрос, соединяем с регистром, сортируем по Минимуму ИнверсныйУровень (мы идем с низу дерева). | |||
| 17
    
        Kassern 21.10.21✎ 10:56 | 
        (16) Я все же не понимаю, почему все игнорят вот такую конструкцию?
 | Таб2 КАК Таб2 | ЛЕВОЕ СОЕДИНЕНИЕ Таб1 КАК Таб1 | ПО (Таб2.Номенклатура В ИЕРАРХИИ | (ВЫБРАТЬ | Таб1.ГруппаНоменклатуры | ИЗ | Таб1))"; В итоге мы получим для таб2(Таблица с номенклатурой) цены из таб1 если номенклатура в иерархии группы, а судя по (7) то и дублей у нас не будет | |||
| 18
    
        Homer 21.10.21✎ 10:57 | 
        (17) "В иерархии" данная конструкция красивая но вот быстродействие на большой выборки вызывает большие вопросы.     | |||
| 19
    
        Kassern 21.10.21✎ 10:59 | 
        (18) тут ни слова про количество записей, имхо для ТС прокатит     | |||
| 20
    
        Kassern 21.10.21✎ 11:01 | 
        (19) судя по тому, какие вопросы задает ТС, то вряд ли идет речь про высоконагруженные системы и овердофига записей)     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |