Полная копия вложенной структуры

БСП (стандартные подсистемы) / Коллекции и сериализация

//Вызывается на сервере. Копируются и вложенные коллекции,
//поэтому правка копии не затрагивает исходную структуру
Заказ = Новый Структура("Номер, Товары", "А-15", Новый Массив);
Заказ.Товары.Добавить("Монитор");
Копия = ОбщегоНазначения.СкопироватьРекурсивно(Заказ);
Копия.Товары.Добавить("Мышь");
//ВКопии = 2
Сообщить("ВКопии = " + Копия.Товары.Количество());
//ВИсходной = 1
Сообщить("ВИсходной = " + Заказ.Товары.Количество());

//Без БСП - Новый Структура(Заказ) копирует только верхний уровень:
//вложенный массив остаётся общим для обеих структур
Поверхностная = Новый Структура(Заказ);
Поверхностная.Товары.Добавить("Мышь");
//ВИсходной = 2
Сообщить("ВИсходной = " + Заказ.Товары.Количество());