|
Родитель верхнего уровня в запросе | ☑ | ||
|---|---|---|---|---|
|
0
Дуб
06.05.08
✎
10:51
|
Привет всем. Мозга за мозгу зашла: надо в запросе поле получить, содержащее родителя нулевого уровня. Как условие построить, не пойму.. Помогите, плз..
|
|||
|
1
wHammer
06.05.08
✎
10:52
|
в коде - ПринадлежитЭлементу()
в запросе - В ИЕРАРХИИ |
|||
|
2
Дуб
06.05.08
✎
10:56
|
(1) мне нужен только один родитель и получить его надо, имея номенклатуру. Т.е. в запросе я выбираю номенклатуру и надо добавить группировку по родителю, но родитель должен быть только нулевого уровня: если у элемента уровень вложенность, например, = 5, то надо номенклатуре сопоставить только одного родителя (самого верхнего)
|
|||
|
3
Wladimir_spb
06.05.08
✎
11:03
|
При ограниченном уровне иерерхии можно извратиться через ВЫБОР...
|
|||
|
4
Дуб
06.05.08
✎
11:06
|
(3) вложенность неограничена, то-то и оно.. Более того, сейчас только заметил: используется не нулевой, а первый уровень..
|
|||
|
5
Андрюха
06.05.08
✎
11:10
|
(1) "в запросе - В ИЕРАРХИИ" - осторожней, т.к. грузит систему
|
|||
|
6
Дуб
06.05.08
✎
11:11
|
(5) да фиг с ней, с нагрузкой.. В иерархии выдаст всю лестницу..
|
|||
|
7
wHammer
06.05.08
✎
11:15
|
попробуй отдельным запросом выбрать всю номенклатуру где будет условие отбора элементов только 1-го уровня, далее надо мудрить с левым соединением с основным запросом
|
|||
|
8
Дуб
06.05.08
✎
11:23
|
(7) согласен, но это уже в область извратов уходит.. Если вариантов не найду - придётся так.
|
|||
|
9
Дуб
06.05.08
✎
11:23
|
Спасибо ответившим. Пока задача перешла в состояние теоретического вопроса: заткнул с другой стороны.
|
|||
|
10
TeaM
06.05.08
✎
22:22
|
Если речь идет о справочнике Номенклатура, то иметь неограниченную иерархию большого смысла нет. Можно ограничить ее разумным числом - скажем 10 (только представьте сколько папок надо по очереди открыть чтобы добраться до конечного элемента - это же изврат!). Если неохота менять метаданные в виду грядущих обновлений конфы - то можно ограничить максимальный уровень вложенности программно - например если платформа 8.1 есть возможность подключить дополнительный обработчик события ПередЗаписью, где проверять и запрещать превышение.
Теперь, когда уровней всего скажем десять можно использовать запрос вида: - запрос большой, но не сложный. |
|||
|
11
TeaM
06.05.08
✎
22:26
|
Вернее условие должно быть:
|
|||
|
12
Paxa
07.05.08
✎
01:22
|
можно замутить запрос с использованием В Иерархии(), .ЭтоГруппа и .Уровень
выбираешь папки 0 уровня - затем к этому запросу присоединяешь элементы не папки, которые в иерархии. |
|||
|
13
Paxa
07.05.08
✎
02:25
|
Выбрать
выборка.ссылка из (ВЫБРАТЬ Материалы.Ссылка КАК Ссылка ИЗ Справочник.Материалы КАК Материалы )как выборка где (выборка.ссылка.родитель=&Родитель0)или(выборка.ссылка.родитель<>&Родитель0 и Не (выборка.ссылка.этогруппа)) получается в результате все то что тебе надо... только без группировок |
|||
|
14
NewNick
07.05.08
✎
03:02
|
(9) в (7) ИМХО единственный правильный ответ. вроде не сложно догадаться что без В ИЕРАРХИИ задача не имеет решения так как только это решение имеет неограниченный уровень вложености. опять же без соединения тоже никак ибо для того что бы вывести что то это что то надо иметь в запросе.
почему ты назвал это решение извратом не понятно - какая задача такое решение ;) |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |