Имя: Пароль:
 
1C
1С v8
Структура элементов на управляемой форме. Как найти нужный элемент без перебора элементов?
0 Dunstan
 
27.06.18
10:52
Нужно найти табличное поле на управляемой форме. Делаю это перебором всех элементов формы. Может быть есть какой-то иной способ найти нужный элемент управляемой формы?
Пример поиска перебором:
//*****
ФлНашлиТабличнуюЧасть = Ложь;
        Для Каждого Эл  Из _ЭтаФорма.Элементы Цикл
            Если ТипЗнч(Эл) <>  Тип("ТаблицаФормы")  Тогда
                Продолжить;
            КонецЕсли;    
            Если Эл.ПутьКДанным = "Объект." + _ИмяТабличнойЧасти Тогда
                ФлНашлиТабличнуюЧасть = Истина;
                Прервать;
            КонецЕсли;    
        КонецЦикла;

//*****
1 Darych
 
27.06.18
10:54
[]
2 lodger
 
27.06.18
10:54
ЭлементыФормы.Получить(Индекс), если знаешь индекс и он неизменяемый.
ЭлементыФормы.Найти(Имя), если знаешь имя.
3 VladZ
 
27.06.18
10:56
Не понял суть проблемы.

Элементы["ИмяЭлемента"].
4 1Сергей
 
27.06.18
10:58
(3) +1
5 Dunstan
 
27.06.18
10:59
А по ПутьКДанным можно как-то быстро найти?
6 lodger
 
27.06.18
11:00
(5) нет.
7 1Сергей
 
27.06.18
11:04
(5) можно. Выкинь "Объект." из ПутьКДанным
8 Dunstan
 
27.06.18
11:09
(5) Не понял мысль. Поясни пжл!?
9 Darych
 
27.06.18
11:34
Эл.ПутьКДанным = _ИмяТабличнойЧасти
10 Mort
 
27.06.18
11:38
На один реквизит формы может ссылаться несколько элементов формы. Поэтому тока перебором.
11 hhhh
 
27.06.18
11:57
(10) чем поможет перебор, если несколько элементов?
12 Mort
 
27.06.18
11:59
(11) Я к тому, что однозначной привязки реквизита к элементу быть не может. Поэтому поиск, можно найти все, например. Встроенного поиска элементов платформа не предлагает, поэтому ручками.
13 Fish
 
27.06.18
12:02
(10) Я так понял, что автору нужен первый попавшийся элемент формы, который ссылается на нужный реквизит.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн