[РЕШЕНО] Родитель строки дерева значений

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Samouchka, 18 окт 2015.

  1. TopicStarter Overlay
    Samouchka
    Offline

    Samouchka Опытный в 1С

    Регистрация:
    20 мар 2013
    Сообщения:
    214
    Симпатии:
    1
    Баллы:
    29
    Всем здравствуйте. На обычной форме (толстый клиент) есть реквизит типа "ДеревоЗначений". Нужно для текущей строки дерева узнать родителя (т.е. само дерево уже заполнено). Помогите, как сделать? Вот так не получается:

    Код:
    ДанДер=ЭлементыФормы.Дерево.ТекущиеДанные.ПолучитьРодителя();
       Сообщить(ДанДер);
    Метод ПолучитьРодителя() ссылается на ДанныеФормыЭлементДерева. А что это за объект - ума не дам уже несколько часов.
  2. 1cUserAndrew
    Online

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    В обычной форме Вы работаете непосредственно с деревом значения, оперируете его свойствами и методами.
    Родителя получаете так:
    Код:
    СтрокаРодитель = ЭлементыФормы.Дерево.ТекущиеДанные.Родитель;
    В реквизитах управляемой формы дерево значений непосредственно не может использоваться. В реквизите управляемой формы оно представлено типом "ДанныеФормыДерево" - это специальный тип, который моделирует дерево значений в управляемой форме.
    Строки этого "дерева" имеют тип "ДанныеФормыЭлементДерева", т.е., это строки дерева значений в управляемой форме.
    Родителя получаете так:
    Код:
    СтрокаРодитель = Элементы.Дерево.ТекущиеДанные.ПолучитьРодителя();
    Samouchka нравится это.
  3. TopicStarter Overlay
    Samouchka
    Offline

    Samouchka Опытный в 1С

    Регистрация:
    20 мар 2013
    Сообщения:
    214
    Симпатии:
    1
    Баллы:
    29
    Юзал и так, только возвращалось СтрокаДереваЗначений. Не догадывался раньше, что затем надо к нужной колонке обратиться. Щас догадался. Вот правильный код:

    Код:
    СтрокаРодитель=ЭлементыФормы.Дерево.ТекущиеДанные.Родитель;
       СтрокаРодитель=СтрокаРодитель.Элемент;
    //где Элемент это Дерево.Колонки.Добавить("Элемент");
       Сообщить(СтрокаРодитель);
    Спасибо!

Поделиться этой страницей