powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Таблица значений и Дерево Значений
15 сообщений из 15, страница 1 из 1
Таблица значений и Дерево Значений
    #38090901
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть табличная часть документа, которая на форме (управляемой 8.2) отображается в ТаблицеЗначений. Надо вывести в виде дерева. У ТаблицыЗначений есть Вид: Список, Иерархический или Дерево. Вопрос собственно такой, что присоветуете у ТаблицыЗначений поменять Вид на Дерево(правда непонятно, что дальше с этим делать, т.к. вид не меняется сразу) или же Поменять ЭлементФормы на ДеревоЗначений.
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38090939
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lupo2Поменять ЭлементФормы на ДеревоЗначений.
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38091648
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: html
1.
2.
3.
На форме имеется ТабличноеПоле с типом ДеревоЗначений и установленным свойством Дерево. Почему не отображается ДеревоЗначений?
 
Необходимо кроме этого, для одной из колонок установить[color=green] свойство ОтображатьИерархию[/color].

Кто подскажет где это св-во, я не вижу
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38091699
DmitriyZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lupo2, источником данных для элемента управления является дерево, или таблица значений? Если ТЗ, тогда как элемент управления представит ее в виде дерева? Что бы элемент управления стал деревом, источник данных для него тоже должен быть деревом.
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38091939
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DmitriyZ Что бы элемент управления стал деревом, источник данных для него тоже должен быть деревом.
..или справочником с иерархией.
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38091953
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообщем, дерево выводится, НО только если так
Код: html
1.
ДеревоОбъект = Новый ДеревоЗначений;..... ДеревоОбъект.Колонки.Добавить(Колонка.Имя, Новый ОписаниеТипов("Строка"));



а вот если на форму явно добавить реквизит Формы ДеревоОбъект с ТипомЗначения : ДеревоЗначений и добавить явно колонки реквизита , то потом пишет ДанныеФормыДерево и Тип и Значение !! ??? что не так? мне надо в конкретное место выводить
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38091981
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lupo2,
Для Дерева тип конкретных колонок - значения не имеет. Дерево становится таковым если его заполнить иерархически. Для простого запроса по элементам справочника с иерархией платформа умеет это делать сама, есть даже специально обученный метод.
Всему, что отличается от "справочника с иерархией" метод не обучен, самому надо заполнить свойство Строки как для Дерева (это корневые элементы, хотя бы один), и для каждого элемента нижележащих уровней. Обычно достаточно определить для такого заполнения процедуру заполнения одного уровня, да и вызывать её рекурсивно
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38092055
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lupo2Вообщем, дерево выводится, НО только если так
Код: html
1.
ДеревоОбъект = Новый ДеревоЗначений;..... ДеревоОбъект.Колонки.Добавить(Колонка.Имя, Новый ОписаниеТипов("Строка"));



а вот если на форму явно добавить реквизит Формы ДеревоОбъект с ТипомЗначения : ДеревоЗначений и добавить явно колонки реквизита , то потом пишет ДанныеФормыДерево и Тип и Значение !! ??? что не так? мне надо в конкретное место выводить
Данные формы, и данные объекта - типы данных очень разные.
Дерево надо заполнять именно как ДеревоЗначений, а затем отдавать его реквизиту формы:
Код: vbnet
1.
	ЗначениеВРеквизитФормы(ДеревоОбъект, "ДеревоВвода");



Структуру реквизитов для ДеревоОбъект можно руками создать, а можно взять у реквизита формы через РеквизитФормыВзначение
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38092181
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pail, у меня ошибка вылетает на этапе Добавить .Колонки и .......потом я хочу Добавить.Строки. Говорю, ж как Дерево вывести в новое получается всё.....Я не пойму, почему для начала колонки не добавляются ?!
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38092319
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lupo2, полный код можно процитировать?
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38093043
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pail,
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    // Создание и заполнение "обычного" объекта прикладного типа ДеревоЗначений,
    // который будет отображен на управляемой форме
    ДеревоОбъект = Новый ДеревоЗначений;
    ДеревоОбъект.Колонки.Добавить("Узел", Новый ОписаниеТипов("Строка"));
    Для к1 = 1 По 3 Цикл
        СтрокаУ1 = ДеревоОбъект.Строки.Добавить();
        СтрокаУ1.Узел = "Узел"+к1;
        Для к2 = 1 По 3 Цикл
            СтрокаУ2 = СтрокаУ1.Строки.Добавить();
            СтрокаУ2.Узел = СтрокаУ1.Узел+к2;
            Для к3 = 1 По 3 Цикл
                СтрокаУ3 = СтрокаУ2.Строки.Добавить();
                СтрокаУ3.Узел = СтрокаУ2.Узел+к3;
            КонецЦикла;
        КонецЦикла;
    КонецЦикла;

    // Создание Реквизита формы типа ДанныеФормыДерево
    МассивДобавляемыхРеквизитов = Новый Массив;
    МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("Дерево", 
        Новый ОписаниеТипов("ДеревоЗначений")));
    Для Каждого Колонка Из ДеревоОбъект.Колонки Цикл
        МассивДобавляемыхРеквизитов.Добавить(
           Новый РеквизитФормы(Колонка.Имя, Колонка.ТипЗначения, "Дерево"));
    КонецЦикла;
    ИзменитьРеквизиты(МассивДобавляемыхРеквизитов);

    // Преобразование объекта прикладного типа ДеревоЗначений 
    // в реквизит управляемой формы (данные формы)
    ЗначениеВРеквизитФормы(ДеревоОбъект, "Дерево");

    // Создание элемента формы типа ТаблицаФормы для отображения дерева
    ЭлементДерево = Элементы.Добавить("Дерево", Тип("ТаблицаФормы"));
    ЭлементДерево.ПутьКДанным = "Дерево";
    ЭлементДерево.Отображение = ОтображениеТаблицы.Дерево;

    Для Каждого Колонка Из ДеревоОбъект.Колонки Цикл
        НовыйЭлемент = Элементы.Добавить(Колонка.Имя, Тип("ПолеФормы"), 
            ЭлементДерево);
        НовыйЭлемент.Вид = ВидПоляФормы.ПолеВвода;
        НовыйЭлемент.ПутьКДанным = "Дерево." + Колонка.Имя;
    КонецЦикла;

КонецПроцедуры
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38093047
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поскольку дерево значений я создая на форме реквизитом и колонки определяю там же, то соответственно в коде выбрасываю часть Добавить.Колонки......
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38093327
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собственно всё устраивает, только не пойму как мне сделать Дерево не на форму , а в другое место кинуть на Форму : сделать подчинённым какой-то др. страничке на Форме , типа
Код: html
1.
Элементы.ГруппаДерево.ПодчиненныеЭлементы = ЭлементДерево;
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38093361
Lupo2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем спасибо, вопрос закрыт. Когда здесь вопросы задаю, мозг активизируется в нужном направлении.
...
Рейтинг: 0 / 0
Таблица значений и Дерево Значений
    #38093434
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lupo2Собственно всё устраивает, только не пойму как мне сделать Дерево не на форму , а в другое место кинуть на Форму : сделать подчинённым какой-то др. страничке на Форме , типа
Код: html
1.
Элементы.ГруппаДерево.ПодчиненныеЭлементы = ЭлементДерево;


У метода Элементы.Добавить третий аргумент есть - родитель.
Надо
Код: vbnet
1.
ЭлементДерево = Элементы.Добавить("Дерево", Тип("ТаблицаФормы"),Элементы.ГруппаДерево);
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Таблица значений и Дерево Значений
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]