|   |   | 
| 
 | выбор номенклатуры по значению реквизита родителя | ☑ | ||
|---|---|---|---|---|
| 0
    
        AlexxJ 23.12.14✎ 15:42 | 
        т.е. есть справочник, у группы есть реквизит "А". Нужно выбрать всю номенклатуру значения реквизита "А" у первого родителя которых = 4.     | |||
| 1
    
        asady 23.12.14✎ 15:43 | 
        (0) запросом     | |||
| 2
    
        AlexxJ 23.12.14✎ 15:43 | 
        (1) 5 баллов!!! развиваем мысли. А текст какой?     | |||
| 3
    
        asady 23.12.14✎ 15:45 | 
        (2) ты это .. как помягше выразиться 
 хочешь нас своими задачками удивить или признаться в неспособности написать запрос? | |||
| 4
    
        AlexxJ 23.12.14✎ 15:45 | 
        даже интересует какое условие задать. Использовать ВЫБОР КОГДА....  очевидное решение, но как то не красиво     | |||
| 5
    
        AlexxJ 23.12.14✎ 15:46 | 
        (3) да не, запрос уже есть но "не красивый", возник спор с коллегами можно ли его оптимизировать     | |||
| 6
    
        asady 23.12.14✎ 15:48 | 
        (5) ну тогда запрос в студию - а потом тебе может быть что-то и посоветуют     | |||
| 7
    
        AlexxJ 23.12.14✎ 15:49 | 
        ВЫБРАТЬ
 ЧекККМТовары.Ссылка, ЧекККМТовары.Ссылка.ВПК, ЧекККМТовары.Номенклатура, ЧекККМТовары.Сумма / ЧекККМТовары.Ссылка.СуммаДокумента КАК Процент, ЧекККМТовары.Ссылка.Комментарий, ВЫБОР КОГДА ЧекККМТовары.Номенклатура.Родитель.ОтветственныйПоЗакупке <> &ПустойОтветственный ТОГДА ЧекККМТовары.Номенклатура.Родитель.ОтветственныйПоЗакупке ИНАЧЕ ВЫБОР КОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.ОтветственныйПоЗакупке <> &ПустойОтветственный ТОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.ОтветственныйПоЗакупке ИНАЧЕ ВЫБОР КОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке <> &ПустойОтветственный ТОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке ИНАЧЕ ВЫБОР КОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке <> &ПустойОтветственный ТОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке ИНАЧЕ ВЫБОР КОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке <> &ПустойОтветственный ТОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке ИНАЧЕ ВЫБОР КОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке <> &ПустойОтветственный ТОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке ИНАЧЕ ВЫБОР КОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке <> &ПустойОтветственный ТОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке ИНАЧЕ ВЫБОР КОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке <> &ПустойОтветственный ТОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке ИНАЧЕ ВЫБОР КОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке <> &ПустойОтветственный ТОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке ИНАЧЕ ВЫБОР КОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке <> &ПустойОтветственный ТОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке ИНАЧЕ ВЫБОР КОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке <> &ПустойОтветственный ТОГДА ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке ИНАЧЕ ЧекККМТовары.Номенклатура.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.Родитель.ОтветственныйПоЗакупке КОНЕЦ КОНЕЦ КОНЕЦ КОНЕЦ КОНЕЦ КОНЕЦ КОНЕЦ КОНЕЦ КОНЕЦ КОНЕЦ КОНЕЦ КАК ОтветственныйПоЗакупке ИЗ Документ.ЧекККМ.Товары КАК ЧекККМТовары ГДЕ (ЧекККМТовары.Ссылка.Комментарий ПОДОБНО "%ВПК%" ИЛИ ЧекККМТовары.Ссылка.ВПК > 0) И ЧекККМТовары.Ссылка.Дата МЕЖДУ &НачДата И &КонДата И ЧекККМТовары.Ссылка.Проведен | |||
| 8
    
        AlexxJ 23.12.14✎ 15:49 | 
        вот такой вот ужас     | |||
| 9
    
        Бубка Гоп 23.12.14✎ 15:53 | 
        (7) ну почему же некрасивый, если быстро проматывать как на горках катаешься, прикольно че     | |||
| 10
    
        anatoly 23.12.14✎ 15:53 | 
        убейся об стену.
 поместить в ВТ всех родителей (это же папки?) у кого есть ответственный. выбрать ГДЕ родитель В ВТ. | |||
| 11
    
        AlexxJ 23.12.14✎ 15:54 | 
        (9) перфекционист во мне рыдает     | |||
| 12
    
        vicof 23.12.14✎ 15:54 | 
        Ответственного за закупки сделай у номенклатуры, а не у группы.     | |||
| 13
    
        AlexxJ 23.12.14✎ 15:55 | 
        (10) у родителя 1го уровня ответственный может быть один, а у родителя 3го уровня другой     | |||
| 14
    
        AlexxJ 23.12.14✎ 15:59 | 
        (12) не, не тру. товары могут из группы в группу летать, ответственные меняться. Велик шанс ошибки, в общем     | |||
| 15
    
        vicof 23.12.14✎ 16:02 | 
        (14) Передзаписью, смотри родителя и перезаписывай ответственного, 1 строчка кода.     | |||
| 16
    
        asady 23.12.14✎ 16:02 | 
        (13)
 Налицо ошибка архитектора 1. Если ответственный меняется что тогда? вносить изменения в справочник - а как же инфа про старого ответсвенного - история должна быть чтобы народ знал кого за яйца вешать при разборах. 2. В конкретных строках товаров в конкретных доках лучше фиксировать ответственного на тот момент когда этот док заполнялся - опять же для порядку Ответсвенного можно заполнять в ТЧ дока уже в событии при изменении номенклатуры например. - в этом случае косяков станет ещё меньше и твоя задача уйдёт в прошлое. | |||
| 17
    
        Бубка Гоп 23.12.14✎ 16:04 | 
        (7) 
 Поднимем тост за родителей... | |||
| 18
    
        AlexxJ 23.12.14✎ 16:05 | 
        (15) (16) будем считать это начальными условиями которые менять нельзя. За этот блок отвечаю не я и ничего менять не могу ))     | |||
| 19
    
        Бубка Гоп 23.12.14✎ 16:08 | 
        (18) Если интересует красота запроса, то ответственного можно определять рекурсией в коде... однако опасаюсь за быстродействие :)     | |||
| 20
    
        Бубка Гоп 23.12.14✎ 16:10 | 
        Получается что то вроде "мне надо пройти через лес, да я знаю можно идти по дороге вон там, но я хочу именно через лес!"     | |||
| 21
    
        vicof 23.12.14✎ 16:15 | 
        (18) Отмазки, пни того, кто может менять.     | |||
| 22
    
        AlexxJ 23.12.14✎ 16:23 | 
        (20) так и есть. именно через лес и  обязательно на одноколесном велосипеде ))) 
 (21) того кто может менять и этот запрос устраивает Подытожим : подобные задачи запросами не решаются!! | |||
| 23
    
        Бубка Гоп 23.12.14✎ 16:24 | 
        Если не заполняешь значение реквизита у самой номенклатуры, можно что то типа того попробовать:
 Выбрать Номенклатура.Родитель.Ответственный Из Справочник.Номенклатура Где Номенклатура.Ссылка В (&Ном) И Номенклатура.Ответственнный = &ПустойОтветственный И Номенклатура.Родитель.Ответственный <> ПустойОтветственный | |||
| 24
    
        AlexxJ 23.12.14✎ 16:27 | 
        (23) это в рекурсии запустить?     | |||
| 25
    
        vicof 23.12.14✎ 16:28 | 
        (24) для начала в консоли запусти     | |||
| 26
    
        Бубка Гоп 23.12.14✎ 16:28 | 
        (24) 
 нет, зачем же. Если у листьев дерева этот реквизит всегда пустой, а у узлов - когда как, то такой запрос по идее найдет ответственного самого близкого к листу узла | |||
| 27
    
        alle68 23.12.14✎ 16:36 | 
        (0) А что такое "1-й родитель"?     | |||
| 28
    
        AlexxJ 23.12.14✎ 16:37 | 
        (27) группа с которая находится "глубже"     | |||
| 29
    
        vicof 23.12.14✎ 16:38 | 
        (28) Не глубже, а выше     | |||
| 30
    
        alle68 23.12.14✎ 16:48 | 
        (28) Где заветная 4-ка в этих пяти вариантах?
 Г - 4 1 4 4 ГГ 4 - 4 1 4 Элемент | |||
| 31
    
        Бубка Гоп 23.12.14✎ 16:51 | 
        (30) 
 гг г гг г гг | |||
| 32
    
        AlexxJ 23.12.14✎ 16:56 | 
        (30) скорее так: 
 Г 1 ГГ 4 ГГГ - Элемент заветная ГГ а если Г 1 ГГ 4 ГГГ - ГГГГ 4 Элемент тогда ГГГГ | |||
| 33
    
        Бубка Гоп 23.12.14✎ 16:58 | 
        (32) так запрос из (23) спас отца русской демократии или нет?     | |||
| 34
    
        AlexxJ 23.12.14✎ 17:03 | 
        (33) всегда пустой результат (     | |||
| 35
    
        AlexxJ 23.12.14✎ 17:04 | 
        (33) только до 2го уровня работает     | |||
| 36
    
        Бубка Гоп 23.12.14✎ 17:05 | 
        (34) у элементов нижнего уровня реквизит заполняете или нет?     | |||
| 37
    
        alle68 23.12.14✎ 17:06 | 
        (35) А на количество уровней есть ограничение?     | |||
| 38
    
        Бубка Гоп 23.12.14✎ 17:13 | 
        понял свою ошибку, в условии стоит
 Номенклатура.Ссылка В (&Ном) поэтому и работает только для 2 уровня | |||
| 39
    
        AlexxJ 23.12.14✎ 17:13 | 
        (36) по любому может быть. 
 (37) нет | |||
| 40
    
        olegves 23.12.14✎ 17:14 | 
        (7) я бы сделал ч/з левое соединение с родителями и функцию ИзНулл     | |||
| 41
    
        AlexxJ 23.12.14✎ 17:48 | 
        (40) элемент может принадлежать N-группам. У некоторых групп свой ответственный, нужно найти самую "глубокую" группу и от туда взять ответственного(не пустого)     | |||
| 42
    
        AlexxJ 23.12.14✎ 17:48 | 
        (41) где N стремится к бесконечности     | |||
| 43
    
        _KaA 23.12.14✎ 17:57 | 
        (0)
 Коллега, ну вы же сами понимаете, что условия задачи (архитектура) некорректны. Попробуйте все таки сразу решить вопрос с метаданными, а потом уже с выборкой данных. | |||
| 44
    
        AlexxJ 23.12.14✎ 18:03 | 
        (43) согласен, но академический интерес присутствует, да азарт     | |||
| 45
    
        Жан Пердежон 23.12.14✎ 18:07 | 
        (44) 100 раз уже обсуждалось, на ис даже статья есть (и не одна)
 http://infostart.ru/public/160707/ | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |