Спозиционироваться на строке дерева значений #534140


#0 by pavig
Выполняется код: текТП - это текущее табличное поле формы, с установленным признаком ДЕРЕВО; текДЗ - это данные текущего табличного поля, тип - дерево значений; смотрю через отладчик и вижу, что текТП.ТекущаяСтрока как было Неопределено так им же и остается, хотя ТекСтрокаДЗ имеет значение Строки дерева значений (на которую мне и нужно спозиционироваться) Другими словами, текущая строка не устанавливается. Куда рыть что курить и как быть подскажите плиз кто сталкивался :-)
#1 by Mort
ТекСтрока  <> ТекСтрокаДЗ ?
#2 by pavig
моя очепятка
#3 by pavig
апну немного что ли
#4 by pavig
вввввееееерх
#5 by pavig
еще раз вверх...
#6 by Axel2009
платформа то хоть какая?
#7 by pavig
1с 8.1
#8 by pavig
8.1.15.14
#9 by Axel2009
ЭлементыФормы.ДЗ.ТекущаяСтрока = стр1_1_1; такой код у меня работает нормально. значит не строку дерева передаете. показывайте свою нетленную функцию
#10 by pavig
Функция ПолучитьВеткуПоПозицииСтроки(Дерево, НомерСтроки)
#11 by Axel2009
а если встать на какую либо строку самому в дереве, а потом запустить код какойнить и посмотреть что хранится в элементыформы.текдз.текущаястрока?
#12 by Mitriy
а не проще Дерево.Строки.Найти??? или НайтиСтроки...
#13 by kosts
У меня работает (8.2)
#14 by pavig
допустим при редактировании ДЗ.ТекущаяСтрока имеет значение СтрокаДереваЗначений, тип - СтрокаДереваЗначений, что совпадает с возвращаемым функцией значением...
#15 by Mitriy
может у тебя разные деревья?
#16 by Axel2009
скорее всего то что хранится в ТекДЗ не совпадает с данными в ТекТП.. так не работает:
#17 by pavig
проще конечно, но результат не меняется. , в отладчике забиваю: текТП.Значение = текДЗ, выдает Истина.
#18 by Axel2009
работает?
#19 by pavig
не работает(((
#20 by pavig
значит где-то еще идет перестроение дерева.
#21 by pavig
щас поищу
#22 by Axel2009
перестроение дерева, событие дерева. вообще сбросить текущую строку в неопределено обычным присваиванием не сделать. это только при формировании строк заново.
#23 by pavig
Событие ПослеУдаления, устанавливаю текущую строку указанным способом -- все работает; Событие ПриОкончанииРедактирования устанавливаю текущую строку -- не работает. печально.
#24 by kosts
Чиорт. простите.
#25 by Axel2009
а что нужно встать на строку, отличную от текущей редактируемой?
#26 by pavig
суть: есть Дерево в табличном поле формы, у которого есть виртуальные группировки, которые содержат общие для подчиненных данные. После редактирования строки интерактивно происходит перестроение дерева, и текущая строка уходит в Неопределено; проблема такова: нужно чтобы после редактирования и перестроения дерева текущая строка возвращалась в предыдущее (до редактирования) положение. При удалении строки прием полностью прокатывает; при редактировании строки -- прием не прокатывает.
#27 by pavig
весьма неуместно
#28 by pavig
если код выполняется после удаления строки, то сразу после него возникает событие ПриВыводеСтроки, и для текТП ТекущаяСтрока встает на текСтрокаДЗ. если же код выполняется после редактирования строки (ПриОкончанииРедактирования) то ничего не происходит вообще, ТекущаяСтрока как была Неопределено так ей же и остается.
#29 by kosts
Программно удали строку и вставь новую в нужное место. Беда пришла не с той стороны где ее ждали...
#30 by pavig
"Беда пришла не с той стороны где ее ждали..." в общем-то да
#31 by Axel2009
подключайте обработчик на 1мс, в котором уже устанавливайте строку на какую нужно..
#32 by pavig
очень даже прокатило спасибо за помощь!!!
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С