Тип: СтрокаДереваЗначений, Неопределено. Строка, которой принадлежит данная коллекция строк (родительская строка). Если данная коллекция строк является корневой коллекцией дерева, то имеет значение Неопределено.
Полное описание, параметры и ограничения
КоллекцияСтрокДереваЗначений.Родитель (ValueTreeRowCollection.Parent)
КоллекцияСтрокДереваЗначений (ValueTreeRowCollection)
Родитель (Parent)
Доступен, начиная с версии 8.0.
Использование:
Только чтение.
Описание:
Тип: СтрокаДереваЗначений, Неопределено.
Строка, которой принадлежит данная коллекция строк (родительская строка).
Если данная коллекция строк является корневой коллекцией дерева, то имеет значение Неопределено.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Создать дерево категорий с товарами и проверить родителя
Две категории находятся в корне. Товары находятся в коллекции Строки конкретной категории, а не в общем корне.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Серверный контекст. Колонки задаются один раз для всего дерева.
Количество в строках категорий оставляем нулевым, чтобы их не перепутать с итогами товаров.
Колонка хранит целые неотрицательные количества 0–99: КвалификаторыЧисла(2, 0, ...) сохраняют 2, 3 и значение 10 в изменяемой копии без округления. Это ограничение собственного урока, не универсальный диапазон количества.
Категории = Новый ДеревоЗначений;
Категории.Колонки.Добавить("Название", Новый ОписаниеТипов("Строка"));
Категории.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(2, 0, ДопустимыйЗнак.Неотрицательный)));
Книги = Категории.Строки.Добавить();
Книги.Название = "Книги";
Товар = Книги.Строки.Добавить();
Товар.Название = "Учебник";
Товар.Установить(1, 3);
Канцелярия = Категории.Строки.Добавить();
Канцелярия.Название = "Канцелярия";
Ручка = Канцелярия.Строки.Добавить();
Ручка.Название = "Ручка";
Ручка.Количество = 2;
Сообщить(Книги.Уровень());
Сообщить(Товар.Уровень());
Сообщить(Товар.Родитель = Книги);
Сообщить(Книги.Родитель = Неопределено);
Сообщить(Товар.Получить(1));
Сообщить(Товар.Владелец() = Категории);
Сообщить(Книги.Строки.Родитель = Книги);
Копия = Категории.Скопировать();
Копия.Строки.Получить(0).Строки.Получить(0).Количество = 10;
Сообщить(Товар.Количество);Разбор по шагам
Создаём дерево и типизированные колонки.
Категорию добавляем в корневые Строки, товар — в Строки категории.
Проверяем родителя, владельца и уровень: у корневой строки уровень 0.
Изменяем количество в копии и проверяем исходный товар.
Как проверить результат
Уровни: 0 и 1; все сравнения родителей и владельца возвращают Истина.
Количество учебника равно 3 и после изменения отдельной копии остаётся 3.
Ожидаемый результат
В дереве две корневые категории, в каждой по одному товару.
На что обратить внимание
ДеревоЗначений нельзя создать и передать как обычный объект в тонком клиенте; для формы используйте данные формы.
Владелец строки — всё дерево, Родитель — непосредственная строка категории. Это разные связи.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.