Транспонировать таблицу значений

RomanVG 95 5 2
Функция ТранспонироватьТЗ(ТЗ)
   
	ТЗ2 = Новый ТаблицаЗначений;
	Массив = ТЗ.ВыгрузитьКолонку(ТЗ.Колонки[0]); // первая колонка содержит названия новых колонок
	ТЗ2.Колонки.Добавить(ТЗ.Колонки[0].Имя); // старые названия колонок сохраним в первой колонке
	
	Для Каждого Значения из Массив Цикл
		ТЗ2.Колонки.Добавить(СокрЛП(Значения));
	КонецЦикла;
	
	Для Сч = 1 По ТЗ.Колонки.Количество() - 1 Цикл
		ТЗ2.Добавить();
		ТЗ2[Сч - 1][ТЗ.Колонки[0].Имя] = ТЗ.Колонки[Сч].Имя;
	КонецЦикла;
	
	СчетчикСтрок = -1;
	Для каждого стр из Тз Цикл
		СчетчикСтрок = СчетчикСтрок + 1;
		Мас = Новый Массив;
		Для Сч = 1 По ТЗ.Колонки.Количество() - 1 Цикл
			Мас.Вставить(Сч - 1, стр[Сч]);
		КонецЦикла;
		ТЗ2.ЗагрузитьКолонку(Мас, ТЗ2.Колонки[СчетчикСтрок + 1]);
	КонецЦикла;
	
	Возврат ТЗ2;
   
КонецФункции
0

См. также

ТаблицаЗначенийВТаблицуХТМЛ

Сохранение таблицы значений в XML

Отбор по таблице значений

ЗаполнитьТаблицуЗначений (БСП)

Дополнить таблицу значений - приемника данными из таблицы значений - источника

Типизация таблицы значений

Поиск в таблице значений неуникальных значений

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

ТаблицаЗначенийВМассив

Модератору