1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
// Создает копию переданного массива, структуры или соответствия // // Параметры: // КоллекцияИсходная: тип Массив, Структура, Соответствие - исходная коллекция // Возвращаемое значение: // КоллекцияКопия: тип Массив, Структура, Соответствие - копия исходной коллекции // Функция СкопироватьУниверсальнуюКоллекцию(КоллекцияИсходная) Экспорт Если ТипЗнч(КоллекцияИсходная)=Тип("Массив") Тогда КоллекцияКопия=Новый Массив; Для Каждого Элемент Из КоллекцияИсходная Цикл КоллекцияКопия.Добавить(Элемент); КонецЦикла; Возврат КоллекцияКопия; ИначеЕсли ТипЗнч(КоллекцияИсходная)=Тип("Структура") Тогда КоллекцияКопия=Новый Структура; Для Каждого Элемент Из КоллекцияИсходная Цикл КоллекцияКопия.Вставить(Элемент.Ключ,Элемент.Значение); КонецЦикла; Возврат КоллекцияКопия; ИначеЕсли ТипЗнч(КоллекцияИсходная)=Тип("Соответствие") Тогда КоллекцияКопия=Новый Соответствие; Для Каждого Элемент Из КоллекцияИсходная Цикл КоллекцияКопия.Вставить(Элемент.Ключ,Элемент.Значение); КонецЦикла; Возврат КоллекцияКопия; Иначе Сообщить("Неверный тип универсальной коллекции для копирования"); Возврат Неопределено КонецЕсли; КонецФункции |