Иерархический список справочника #221055


#0 by Xelon
Каким образом можно получить иерархический список справочника с помощью запроса не используя метод ИТОГИ ПО. Задача: задать отбор в справочнике по ссылке входящей в результат запроса. При этом данные должны быть выведены иерархически с непустыми группами. Пример: Автоматы.Ссылка В (ВЫБРАТЬ ИЗ РегистрСведений.МестоНахожденияАвтоматов.СрезПоследних   ГДЕ МестоНахождения В    ГДЕ Ссылка = &ТекПользователь)) Выдает только элементы справочника
#1 by asady
а с чем связан запрет на использование ИТОГИ ПО? Случайно не с религиозными убеждениями?
#2 by Defender aka LINN
Не говори. Это ныче модно.
#3 by Лошадка в пальто
Используйте ИТОГИПОХ!!!! П.С. недокументированная фича...
#4 by asady
друг вали ты с этого казино. А то скоро в зону погонят. Слышал что в Москве творится? Ужасс!
#5 by КонецВсемЕсли
+++ !!! :) :) :)
#6 by Neco
Если для РЛС, то прийдеться список разрешенных игоровых точек засунуть в параметр сеанса и уже к нему делать условие. Хотя лучше создать спец регистр сведений.
#7 by Defender aka LINN
А. Точно! Это ж RLS! Забей. Разреши просмотр групп и все нормуль будет. Или втыка в группы реквизит, на который сможешь опереться.
#8 by Xelon
Нет. Это не RLS. Это мне нужно для WEB-расширения. Если ты не знаешь, то ИТОГИ ПО во вложенных запросах использовать нельзя Проблема в том, что групп очень много, а на конкретных игровых точках может стоять оборудование из пары-тройки групп. А выводить лишние группы очень неудобно. Нужно вывести только те группы, которые используются. Вот и стал вопрос как получить одним запросом список таких групп и элементов. В WEB-расширении отбор можно указать одним запросом, который помещается в реквизит объекта V8ListDataSource WhereClause.
#9 by Xelon
в группу реквизит вставлять нельзя, поскольку расположение оборудование является периодическим и хранится в регистре сведений. Да и оборудование из одной группы может находится на разных точках
#10 by Defender aka LINN
Значит, что-то в консерватории надо менять. Что вообще надо? С примерами плиз, а то в уж очень невнятно.
#11 by Xelon
Объясню еще раз. В WEB-расширении есть такой объект как V8ListDataSource, который вытягивает из 8ки список элементов справочника либо документа. В моем случае это справочник автоматов. Есть пользователь, которому разрешено работать с автоматами, стоящими на его игровой точке. Нужно ограничить просмотр справочника только этими автоматами и группами, в которых эти автоматы находятся. Лишние группы не нужны (это можно достичь добавочным условием "ИЛИ ЭтоГруппа = Истина"). Отбор в V8ListDataSource можно задать только языком запросов 1С как условие. Т.е. я просто пишу: Ссылка В(<ВложенныйЗапрос>) Нужно так сформировать этот самый вложенный запрос, что бы он содержал нужные элементы да еще и их иерархию. Иначе список выводится пустым (глюк WEB-расширения)
#12 by Neco
Ну тады так:
#13 by Defender aka LINN
Таки RLS. Только в профиль. Ну добавь это условие, или видимость групп для тебя критична?
#14 by Xelon
критично. Все группы не влазят на один экран, что заставляет пользователю прокручивать страницы, что при WEB-расширении значительно сказывается на скорости операторской работы. Нужно выводить только полезную информацию.
#15 by Xelon
в запросах операции "В" должно выбираться одно и только одно поле!
#16 by Defender aka LINN
Функции/Процедуры вызывать можно?
#17 by Xelon
где? из запроса в 1С 8.0? еще не слышал такого. Или я что-то не понял?
#18 by Neco
В самом Вебе можно вызвать функции из 1С из модуля Внешнего соеднинения. Там и сформировать список и потом его передать в запрос как параметр.
#19 by Defender aka LINN
Ну, уже ответил. Оно?
#20 by Xelon
Хороший вариант. Буду попробовать. и развитие твоей предыдущей идеи но только для 2х уровней. Для трех еще больше. Не очень удобно, но быстрый выход.:        ИЗ            РегистрСведений.МестоНахожденияАвтоматов.СрезПоследних                ИЗ        ИЗ            РегистрСведений.МестоНахожденияАвтоматов.СрезПоследних                ИЗ
#21 by Defender aka LINN
Жесть. Тормозить будет... И эта... А если там 20 уровней? О_о Уж лучше
#22 by Neco
Моща. Но лучще список подготовить и в запрос, как параметр. Конструкция "В" и так работает корявенько, а еще такая красота с вложенными запросами ;-)
#23 by Xelon
Я разочарован. Если в этот список попадают группы, то конструкция "В" срабатывает как "В ИЕРАРХИИ" и выводятся также все элементы этой группы. Это ужасно.
#24 by TormozIT
Я не согласен.
#25 by ZolotarevAA
Как вариант, прилепить табличную часть со ссылкой на справочник пользователей.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С