Скопировать структуру. Создает новый экземпляр объекта Структура, заполняет объект данными указанной структуры.
// Создает новый экземпляр объекта Структура, заполняет объект данными указанной структуры.
//
// Параметры:
// СтруктураИсточник - Структура - структура, копию которой необходимо получить.
//
// Возвращаемое значение:
// Структура - копия переданной структуры.
//
Функция СкопироватьСтруктуру(СтруктураИсточник) Экспорт
СтруктураРезультат = Новый Структура;
Для Каждого Элемент Из СтруктураИсточник Цикл
Если ТипЗнч(Элемент.Значение) = Тип("ТаблицаЗначений") Тогда
СтруктураРезультат.Вставить(Элемент.Ключ, Элемент.Значение.Скопировать());
ИначеЕсли ТипЗнч(Элемент.Значение) = Тип("ДеревоЗначений") Тогда
СтруктураРезультат.Вставить(Элемент.Ключ, Элемент.Значение.Скопировать());
ИначеЕсли ТипЗнч(Элемент.Значение) = Тип("Структура") Тогда
СтруктураРезультат.Вставить(Элемент.Ключ, СкопироватьСтруктуру(Элемент.Значение));
ИначеЕсли ТипЗнч(Элемент.Значение) = Тип("СписокЗначений") Тогда
СтруктураРезультат.Вставить(Элемент.Ключ, Элемент.Значение.Скопировать());
Иначе
СтруктураРезультат.Вставить(Элемент.Ключ, Элемент.Значение);
КонецЕсли;
КонецЦикла;
Возврат СтруктураРезультат;
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)