Перебор элементов формы программно.

Версия для печатиPDF-версия

Платформа:

Нужно перебрать элементы формы программно в уже открытой на экране форме и сохранить значения элементов.

Затем открыть по кнопке такую же форму и заполнить данными из сохраненных элементов.

У некоторых элементов открыть доступность.

Писал сам код, ничего не получается, нашел в интернете:

Для Каждого Контрол Из ЭтаФорма.ЭлементыФормы Цикл
    Если ТипЗнч(Контрол) = Тип("Надпись") Тогда
        Контрол.ЦветФона = НовыйЦвет;
    КонецЕсли;        
КонецЦикла;

Выдает ошибку на "Каждого" и "Контрол". Как правильно написать этот код ?

В платформе 7.7 нет цикла "Для Каждого".

А чем заменить ? Или какая альтернатива ?

Ну хорошо. Я в список значений записал документ:

    СЗДок = СоздатьОбъект("СписокЗначений");
    СЗДок.ДобавитьЗначение(ТекущийДокумент());
    СЗДок.ДобавитьЗначение(0);
 
то есть значения всех элементов формы должны быть в нем . Это так ?
Если так, то как их достать и записать в элементы новой формы ?

Если нужно заполнить данные документа из данных другого документа, то почему не получить их из ссылки на документ? Зачем перебирать элементы управления формы?

Докум=ТекущийДокумент()    - Так ? 

Почему не устанавливается Доступность(1) в новой открытой форме ?