#0
by itPiligrim
Есть иерархический справочник. Требуется сделать запрос с учетом иерархии, но ограничить вложенность. Скажем, выбрать все элементы до уровня вложенности = 3. Понятно, что можно выбрать все элементы, а потом при переборе проверить Выборка.Уровень, но это не эффективно...
#4
by Wladimir_spb
Есть возможность ограничить условием, но не очень красиво. Наверно, знает красивое решение)
#8
by Wladimir_spb
,Собственно, это то, что я назвал "некрасивым" решением. Кстати, условие "Справочник.Родитель В ИЕРАРХИИ (&Родитель)" вроде как лишнее, хотя нужно смотреть как это выполняется или просто производительность померить. Во всяком случае работать должно и без него.
#11
by RomaH
в 8.1 извратился так: выгрузил в ТЗ добавил колонку Уровень Вычислил Поместил ТЗ в менеджер временных таблиц Наложил условие
#12
by Wladimir_spb
ЕдинственноВозможное <> Красивое Впрочем, о вкусах не спорят. Данное решение вполне рабочее, и я бы сам его использовал.
#13
by RomaH
к стати - что-то есть в компоновке данных (только что еще не разобрался) Уровень и УровеньВГруппировке
#14
by Immortal
нада подумать..в любом случае можно анализировать например сумма(Показатель) где показатель это 1 как показатель на разных уровнях иерархии запроса..
#15
by Wladimir_spb
Тоже не комильфо) Есть предложение, посвятить эту ветку поиску оптимального решения на вопрос Оптимальность: по быстродействию, универсальности и не в последнюю очередь эстетическая оценка. Не зря ведь авиа-конструкторы говорят, что "Некрасивый самолет не взлетит!" Хотя все предложенные здесь решения "летают". PS Интересно, чем ветка понравилась Пельмешке?)
#16
by Dionisious
Тоже интересует вопрос. И вот в каком ракурсе: есть регистр накоплений, например продажи, В нем есть измерение допустим Номенклатура. Как Вывести продажи номенклатуры только для номенклатуры уровень которой не больше n? Решение слишком сложно прикрутить. Пока что я вижу только при обработке выборки.
#19
by Wladimir_spb
В принципе, решение не сильно сложно прикрутить, практически к любому отчету. Если посмотреть, как в стандартных конфах добавляются условия по свойствам и категориям, то станет совсем просто. Надо еще один критерий оптимальности - изменение конфы. Лучше бы без них.
#20
by Dionisious
Не получится. Нужно же не для конкретной группы, а для всех групп второго уровня например. Можно конечно пустым родителем ограничить, но тогда это условие отсечет записи регистра, и следовательно итоговая сумма будет меньше.
#22
by Dionisious
для меня даже реквизит не даст результата. Опять же заранее не известно для каких справочников это понадобиться.
#23
by Dionisious
Например есть продажи: Если пользователь задает один уровень иерархии должно вывести: Г1 250 Если пользователь задет два уровня иерархии: Г1 250 Итоговая сумма не должна меняться естественно.
#24
by Wladimir_spb
Можно сделать проверку на иерархический справочник в группировках и добавлять поле "Уровень" в отбор. А "уровень" чтобы работал по родителю. Здесь нужен не отбор, а группировка по родителю n-ого уровня.
#25
by Dionisious
Задача в принципе такая же как и : нужно ограничить вложенность результата запроса.
#26
by Wladimir_spb
Несовсем. В запрос должно попасть все, но при сгруппировано должно быть соответствующим образом. Кстати, здесь вполне поможет механизм свойств. Объединить контрагентов свойствами, а не иерахией и юзать стандартные отчеты, с группировками по свойствам вместо иерахии.
#27
by Dionisious
со свойствами конечно классно, жаль только надо для номенклатуры, а там справочник - уровней 5 и элементов тысяч 20. Сложно расставлять. К тому же заранее не известно сколько группировок понадобится и по каким справочникам. Сейчас это номенклатура, завтра может быть подразделения, контрагенты, статьи затрат да мало ли что еще. Буду вывод отчетов переделывать.
#28
by Wladimir_spb
Свойства более универсально, гораздо более гибко, чем дерево иерархии. Настроить автоматическое заполнение свойств для новой номенклатуры, не так уж сложно + автоматом проставить для существующей в зависимости от иерархии. У контрагентов свойства тоже есть. Добавить в любой другой справочник, так же не сложно. Мне приходилось целиком создавать механизм свойств в БП, поэтому представляю о чем говорю.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Некорректная работа "В ИЕРАРХИИ" в запросе?
- Уровень иерархии в запросе
- Условие в запросе, аналогичное условию в запросе 77
- Интересная фишка в запросе в 7-ке. Сумма из шапки и из ТЧ в запросе
- 8.3 в режиме совместимости 8.1 валится при уловиях в запросе "В ИЕРАРХИИ"
- Как в запросе ограничить тип документа?
- "Несовместимые типы выразить в запросе 1с" ошибка в динамическом запросе списка документов
В этой группе 1С
- Как открыть выбор для поля ввода?
- Конвертация данных.Для элемента а не для группы
- Как определить тип значения у ПолеВвода составного типа
- Почему 1С 8.1 не подключается по сети
- Как посчитать итоги по столбцам табличной части
- Какой аналог функции Вид() 1с7.7 в версии 1с8.0
- Как настроить работу RDP через прокси?
- Проблемы с автообменом УРБД в пакетном режиме
- ПроверитьВывод() Работает некорректно!
- не проставляется субконто в проводках
- Переход с Комплексной 7.7 на 1С:Бухгалтерию 8.0
- Как программно изменить реквизит формы
- Удаление записей из независимого непериодического регистра сведений?
- Ошибка аутентификации при доступе к ресурсу
- Изменения конфигурации заблокированы средствами управления РБД
- Как подключить принтер zebra tlp2824 к 1с?
- HASP not Found (-10)
- Проектирование: SQL: округление числа до знака после запятой
- Как в батнике получить день недели?
- Расходы по страхованию в ЗУПе