ТЗ в массив структур (для себя)

andrey5565 244 4 6 10
&НаСервереБезКонтекста
Функция ПреобразоватьВМассивСтруктур(Таблица) 
	
	МассивСтруктур = Новый Массив;
	
	Для каждого СтрокаТЗ Из Таблица Цикл
		
		// Строка;
		СтруктураДанных = Новый Структура;
		
		Для каждого КолонкаТЗ Из Таблица.Колонки Цикл
        	ИмяКолонки = КолонкаТЗ.Имя;
			СтруктураДанных.Вставить(ИмяКолонки, СтрокаТЗ[ИмяКолонки]);
		КонецЦикла; 
		
		МассивСтруктур.Добавить(СтруктураДанных);
		
	КонецЦикла;
	
	Возврат МассивСтруктур;
	
КонецФункции
2

Комментарии

Radik13
#1, 01 августа 2023 19:16

Проверил быстродействие. ТаблЗначений содержит 100 колонок и 50000 строк.

П2 = ПреобразоватьВМассивСтруктур(ТаблЗначений); 23,776287 секунды
П1 = ОбщегоНазначения.ТаблицаЗначенийВМассив(ТаблЗначений); 3,925674 секунды


andrey5565
#2, 08 августа 2023 20:05

(1) Radik13, спасибо за тест


См. также

ОписаниеТипаВсеОбъекты (БСП)

Разложить массив по типам объектов

CSV в массив из структур

Преобразовать массив структур в ТаблицуЗначений

Функция преобразует Массив из структур в ТаблицуЗначений

ТаблицаЗначенийВМассив (БСП)

ПреобразоватьТаблицуКонтактовВМассив (БСП)

ТаблицуКонтактовВМассив (БСП)

СортироватьМассивСтруктур (БСП)

Модератору