Таблица значений в табличный документ

Преобразование таблицы значений в табличный документ без использования построителя.

// Получить табличный документ на основании таблицы значений
//
// Параметры:
// Таблица - ТаблицаЗначений
//
// Возвращаемое значение:
// ТабличныйДокумент
//
&НаСервере
Функция ПолучитьТабличныйДокумент(Таблица)
ТабДокумент = Новый ТабличныйДокумент;

// Выводим заголовок таблицы
КолонкаИндекс = 0;
Пока КолонкаИндекс < Таблица.Колонки.Количество() Цикл
Колонка = Таблица.Колонки[КолонкаИндекс];
ОбластьКолонки = ТабДокумент.Область(1, КолонкаИндекс + 1, 1, КолонкаИндекс + 1);
Если ПустаяСтрока(Колонка.Заголовок) Тогда
ОбластьКолонки.Текст = Колонка.Имя;
Иначе
ОбластьКолонки.Текст = Колонка.Заголовок;
КонецЕсли;
ОбластьКолонки.ШиринаКолонки = Колонка.Ширина;
КолонкаИндекс = КолонкаИндекс + 1;
КонецЦикла;

// Выводим строки таблицы
СтрокаИндекс = 0;
Пока СтрокаИндекс < Таблица.Количество() Цикл
Таблица_Строка = Таблица[СтрокаИндекс];
КолонкаИндекс = 0;
Пока КолонкаИндекс < Таблица.Колонки.Количество() Цикл
Колонка = Таблица.Колонки[КолонкаИндекс];
ТабДокумент.Область(СтрокаИндекс + 2, КолонкаИндекс + 1, СтрокаИндекс + 2, КолонкаИндекс + 1).Текст = Таблица_Строка[Колонка.Имя]; // + 2, т.к. в первой строке выведен заголовок
КолонкаИндекс = КолонкаИндекс + 1;
КонецЦикла;
СтрокаИндекс = СтрокаИндекс + 1;
КонецЦикла;

Возврат ТабДокумент;
КонецФункции