Копия сохраняет значения настроек, даже если исходная структура затем изменена.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Используем простые значения: число и строку.
Изменяем исходную структуру после создания копии.
Настройки = Новый Структура("Таймаут,Режим", 30, "Тест");
Снимок = Новый ФиксированнаяСтруктура(Настройки);
Настройки.Таймаут = 60;
Таймаут = 0;
Если Снимок.Свойство("Таймаут", Таймаут) Тогда
Сообщить(Таймаут);
КонецЕсли;
Сообщить(Снимок.Количество());Разбор по шагам
Конструктор сохраняет состав свойств и их значения.
Свойство безопасно получает существующее поле через выходной параметр.
Изменение исходной структуры не меняет сохранённый Таймаут.
Как проверить результат
Вывод Таймаут=30, количество свойств 2.
Настройки.Таймаут в отладчике равен 60.
Ожидаемый результат
Неизменяемая копия содержит исходные настройки.
На что обратить внимание
Вложенные изменяемые объекты не получают глубокую неизменяемость.
Фиксированная структура не позволяет присвоить новое значение полю.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.