Подстановка элемента массива в обращение через точку

1. Дон Кихот 06.08.20 08:32 Сейчас в теме
Есть массив с элементами
МассивЭлементов = Новый Массив;
МассивЭлементов.Добавить("D1");
МассивЭлементов.Добавить("D2");
МассивЭлементов.Добавить("D3");
МассивЭлементов.Добавить("D4");
Далее перебирая в цикле массив нужно подставить его значение в обращение через точку:
Для каждого Строка Из МассивЭлементов Цикл

ЭлементСхемы = ТабДок.Рисунки.здесь нужно подставить строку

КонецЦикла;
Как это реализовать?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. platonov.e 160 06.08.20 08:35 Сейчас в теме
К Рисунку можно обратится через [] ?
3. Дон Кихот 06.08.20 08:45 Сейчас в теме
(2)Посмотрел, можно через []. А если это не рисунки, то как при обращению через точку добавить элемент массива с типом строка
4. platonov.e 160 06.08.20 08:48 Сейчас в теме
(3) Ну, тут нужно знать какой там тип, и знать что к нему через скобки можно обратится. В других случаях смотреть если метод для обращения по имени(или что у вас там будет), у этого элемента. Других вариантов пока придумать не могу
5. Дон Кихот 06.08.20 08:52 Сейчас в теме
(4)Нужно получить:
ЭлементСхемы = ТабДок.Рисунки.D1;
Вопрос в том как элемент массива с типом строка добавить
6. platonov.e 160 06.08.20 08:56 Сейчас в теме
(5)так пробовали? если оно сработает, то это и будет как обращение через точку
Для каждого Строка Из МассивЭлементов Цикл

ЭлементСхемы = ТабДок.Рисунки[Строка];

КонецЦикла;
alex-l19041; +1 Ответить
7. Дон Кихот 06.08.20 09:00 Сейчас в теме
(6) Так работает, спасибо. Но если бы это были не рисунки, как всё таки после точки подставить строку?
9. oleg-x 22 06.08.20 09:50 Сейчас в теме
(7) Такой конструкцией можно обратится к любым реквизитам/значениям, но не к методам.
Так что в такого рода задачах всегда будет работать.
Только надо либо делать исключения, либо алгоритм не должен допускать не существующих реквизитов.
10. Sashares 35 06.08.20 10:24 Сейчас в теме
(7)Через Вычислить, например.
8. platonov.e 160 06.08.20 09:13 Сейчас в теме
Ну, так бы и было же. Только не везде работает. Отдельный случай нужно рассматривать отдельно.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот