|
|
Динамический список и дерево УФ |
☑ |
|
0
vde69
30.09.12
✎
23:37
|
чего-то никак не могу сделать из динамического списка ни дерево ни иеархический справочник
меню - серые, программно устанавливаю - пофигу...
ночь уже, спасайте...
|
|
|
1
Ns33
01.10.12
✎
09:24
|
Справочник иерархический?
Подчиненный?
В дин. списке основная таблица задана?
|
|
|
2
MSII
01.10.12
✎
09:26
|
Основная таблица потерялась полюбому.
|
|
|
3
vde69
01.10.12
✎
09:33
|
ап...
не пойму, в типовых аналогичный справочник "подразделения" показывает дерево, а у меня нет :(
|
|
|
4
vde69
01.10.12
✎
09:34
|
(1) да подчиненный, но в типовых аналог "подразделения"
вот запрос на всякий случай
ВЫБРАТЬ
СправочникБлоки.Ссылка,
СправочникБлоки.ВерсияДанных,
СправочникБлоки.Владелец,
СправочникБлоки.Родитель,
СправочникБлоки.Код,
СправочникБлоки.Наименование,
СправочникБлоки.Адрес,
СправочникБлоки.Роль,
СправочникБлоки.ДанныеИзменены
ИЗ
Справочник.Блоки КАК СправочникБлоки
ГДЕ
СправочникБлоки.Владелец = &Владелец
|
|
|
5
vde69
01.10.12
✎
09:50
|
перефразирую вопрос
почему в пользовательском контекстном меню не активны меню переключения режима просмотра?
|
|
|
6
Tymoha
01.10.12
✎
09:52
|
тоже интересно. я в свое время так и не победил ... почитал, что типа в подчиненных низзя ... и плюнул на это дело (((
|
|
|
7
Ns33
01.10.12
✎
09:55
|
Эксперимент показал, что для появления иерархического просмотре "ГДЕ" в запросе не катит, он хочет отбор по владельцу в настройках списка. Как это сделать через запрос, пока не ясно.
|
|
|
8
vde69
01.10.12
✎
10:20
|
(7) спасибо, вроде вышло (корявенько, но потом окультурю)
&НаСервере
Процедура УстановитьВладельца()
ЭлементыОтбора = КаталогДерева.Отбор.Элементы;
Для Каждого эл из ЭлементыОтбора Цикл
Если СокрЛП(эл.ЛевоеЗначение) = "Владелец" Тогда
эл.ПравоеЗначение = ПараметрыСеанса.ТекущийФайл;
КонецЕсли;
КонецЦикла;
Элементы.КаталогДерева.Обновить();
КонецПроцедуры
|
|
|
9
Ns33
01.10.12
✎
10:26
|
Используй эту, сам где-то тут стянул:
Процедура УстановитьОбновитьОтбор(ДС,ИмяОтбора,ПравоеЗначение,СтруктураДопПараметров=Неопределено)
Для каждого эл Из ДС.Отбор.Элементы Цикл
Если СокрЛП(эл.ЛевоеЗначение)=ИмяОтбора Тогда
эл.ПравоеЗначение=ПравоеЗначение;
Возврат;
КонецЕсли;
КонецЦикла;
Отбор = ДС.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Отбор.ЛевоеЗначение =ДС.Отбор.ДоступныеПоляОтбора.Элементы.Найти(ИмяОтбора).Поле;
Отбор.ПравоеЗначение = ПравоеЗначение;
Если СтруктураДопПараметров <> Неопределено Тогда
ЗаполнитьЗначенияСвойств(эл,СтруктураДопПараметров);
КонецЕсли;
КонецПроцедуры
|
|
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший