Имя: Пароль:
1C
 
1С 8.1 Дерево значений, удалить строку.
0 Нева
 
05.03.10
15:08
Есть форма, на форме "табличное поле", с типом значения "дерево значений". Хочу сделать кнопку, после нажатия на которую, в дереве удалялась выделенная строка. Как это сделать? Не допираю (
1 Irbis
 
05.03.10
15:09
КоллекцияСтрокДереваЗначений (ValueTreeRowCollection)
Удалить (Delete)
Вариант синтаксиса: Удаление по объекту
Описание:
Удаляет строку из коллекции строк дерева значений по строке.
Синтаксис:
Удалить(<Строка>)
Параметры:
<Строка> (обязательный)
Тип: СтрокаДереваЗначений. Строка, которую необходимо удалить из данной коллекции строк ДеревоЗначений.
Вариант синтаксиса: Удаление по индексу
Описание:
Удаляет строку из коллекции строк дерева значений по индексу.
Синтаксис:
Удалить(<Индекс>)
Параметры:
<Индекс> (обязательный)
Тип: Число. Индекс удаляемой строки.
Описание:
Удаляет строку из коллекции строк данного уровня дерева значений. Если у строки имеются подчиненные строки, они также будут удалены.
Пример:
СтрокиСостава.Удалить(6);
2 73
 
05.03.10
15:15
Типа так:

ТекущаяСтрока = ЭлементыФормы.ТПДерево.ТекущаяСтрока;
Если ТекущаяСтрока.Родитель = Неопределено Тогда
//корень
Дерево.Строки.Удалить(ТекущаяСтрока);
Иначе
ТекущаяСтрока.Родитель.Строки.Удалить(ТекущаяСтрока);
КонецЕсли;
3 Нева
 
05.03.10
15:18
(2) Пробую
4 Нева
 
05.03.10
15:23
АЛИЛУЯ!!!
5 Нева
 
05.03.10
15:24
(2) Ты только что сохранил одному человеку рабочее место!!! Спасибо! ))) АЛИЛУЯ!!!
6 Нева
 
05.03.10
15:27
Блин, не не совсем сохранил.

А из источника данных как ее удалить, а то элемент справочника открываю а она строка (зараза) опять там.
7 Irbis
 
05.03.10
15:27
(5) Боюсь что ненадолго. Поскольку человек СП читать не хочет.
8 Нева
 
05.03.10
15:29
(7) да читаю я, но не втыкаюсь в тему хоть ты тресни.
9 Irbis
 
05.03.10
15:30
А элемент справочника записал?
10 Нева
 
05.03.10
15:31
(9) ну что ж я совсем даун, что ли, записал конечно.
11 73
 
05.03.10
15:33
Ну как-то дерево где-то в ТЧ наверное преобразовывается... А где, ищи...
12 Maxus43
 
05.03.10
15:35
(8) ТекущаяСтрока = ЭлементыФормы.ТПДерево.ТекущиеДанные;
13 Нева
 
05.03.10
15:36
(12) перевариваю
14 73
 
05.03.10
15:36
(12) Это без разницы.
15 73
 
05.03.10
15:36
(14)+
Расширение табличного поля дерева значений (Value tree table box extension)
Свойства:
Дерево (Tree)
ИзменятьПорядокСтрок (ChangeRowOrder)

События:
ПередНачаломДобавления (BeforeAddLine)
ПередРазворачиванием (BeforeExpand)
ПередСворачиванием (BeforeCollapse)

Описание:
Дополнительные свойства и события элемента управления ПолеВвода, предназначенного для отображении в нем дерева значений. Для данного расширения свойства ТекущаяСтрока и ТекущиеДанные имеют значения типа СтрокаДереваЗначений.
16 73
 
05.03.10
15:38
Посмотри в обработчиках табличного поля, судя по всему синхронно изменения в ТЧ вносятся. Сделай аналогично.
17 Нева
 
05.03.10
15:39
смотрю
18 Нева
 
05.03.10
15:46
(16) то есть (2) из источника данные убирает?
19 73
 
05.03.10
15:52
Что есть источник? У твоего ТП как я понял - ДеревоЗначений. Но:
ДеревоЗначений не может храниться в базе. У тебя где-то ПриОткрытии по всей видимости оно заполняется из табличной части или еще откуда-то. Потом либо синхронно куда-то изменения вносятся, либо при(перед) записи элемента справочника.
Вот тебе в этом и надо разобраться.
20 Нева
 
05.03.10
15:55
(19) перевариваю.
21 Maxus43
 
05.03.10
16:05
(20) несворение желудка не заработай. Код формирования древа значений в студию
22 Нева
 
05.03.10
16:12
Посмотрел обработчики событий.
1. В дереве содержится информация о документах связанных с элементом справочника, на форме которого оно размещено.
2. Заполняется дерево, при открытии элемента справочника. Запросами выбирается информация о документах, которые связаны с открываемым элементом. Эта инфа вставляется в дерево.
3. По мимо этого та же инфа содержится в табличной части открываемого элемента.
4. Так вот как мне удаляя строку дерева, заодно удалить сходную инфу из таюличной части справочника.
23 Нева
 
05.03.10
16:13
+(22) табличной
24 Нева
 
05.03.10
16:17
Получается надо идентифицировать строку дерева со строкой табличной части элемента справочника. Как лучше это сделать?
25 Maxus43
 
05.03.10
16:18
>>В дереве содержится информация о документах связанных с элементом справочника, на форме которого оно размещено
И что таки ты хочеш в итоге удалить? документы?
26 Нева
 
05.03.10
16:21
(25) Я хочу удалить, инфу о документе и из дерева и из табличной части элемента справочника.
27 Maxus43
 
05.03.10
16:22
(26) но она же опять появиться при следущем открытии, ибо

>>Заполняется дерево, при открытии элемента справочника. Запросами выбирается информация о документах, которые связаны с открываемым элементом. Эта инфа вставляется в дерево.

чорт, неосилил... зачем это надо вообще?
28 Нева
 
05.03.10
16:25
Документ помечаю на удаление, а на него справочник ссылается, документ окончательно не удалить.

С деревом хрен ты с ним, мне надо через дерево удалить инфу из табличной части. Как мне строку дерева соотнести со строкой табличной части?
29 Maxus43
 
05.03.10
16:32
(28) тупо поиском по ТЧ. по уникальному полю
30 Нева
 
05.03.10
16:39
(29) это нормально, меня босс не засмеет? как то топорно это.
31 Maxus43
 
05.03.10
16:43
(29) Босс проверяет код?)
Блин, непонятно зачем дублирование в ДЗ и ТЧ... одно значит наполняет другое или хз что ещё. зачем то это сделано? надо найти причину и ... медитировать
32 Maxus43
 
05.03.10
16:43
(29)2(30)
33 Maxus43
 
05.03.10
16:43
тьфу, (31)2(30)
34 Нева
 
05.03.10
16:51
(31) Да это ваще ОПА, конфигурация самописная, босс сказал красиво сделать.
35 Maxus43
 
05.03.10
16:54
(34) значит начинай медитировать... хз чо там написано. Надо разбираться что куда откуда тянется и как связано
36 Нева
 
05.03.10
17:02
ну до вторника помидетирую, а потом босу надо доложить, что красиво сделано!
37 73
 
05.03.10
17:16
(21)+1
<Код формирования древа значений в студию>
Программист всегда исправляет последнюю ошибку.