59 lines
3.1 KiB
Markdown
59 lines
3.1 KiB
Markdown
---
|
||
title: Табличный документ в ТЗ и обратно
|
||
slug: общие-обмен-данными/табличный-документ-в-тз-и-обратно
|
||
---
|
||
|
||
## Табличный документ в таблицу значений (табдок в ТЗ)
|
||
```bsl
|
||
Построитель = Новый ПостроительЗапроса;
|
||
Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТабДок.Область());
|
||
|
||
ТабДанные = Построитель.Результат.Выгрузить();
|
||
```
|
||
|
||
## Таблица значений в табличный документ (ТЗ в табдок)
|
||
|
||
```bsl
|
||
ТабДокумент = Новый ТабличныйДокумент;
|
||
Построитель = Новый ПостроительОтчета;
|
||
Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ТаблицаЗначений);
|
||
|
||
Построитель.Вывести(ТабДокумент);
|
||
```
|
||
|
||
### Вариант с собственной функцией
|
||
```bsl
|
||
&НаСервере
|
||
Функция ТабличныйДокументИзТаблицыЗначений(ТаблицаЗначений)
|
||
|
||
ТабДок = Новый ТабличныйДокумент;
|
||
|
||
// Формируем заголовки
|
||
ОбластьЗаголовок = ТабДок.ПолучитьОбласть(1, 1, 1, ТаблицаЗначений.Колонки.Количество() + 1);
|
||
ОбластьЗаголовок.Область(1, 1).Текст = "№ п/п";
|
||
|
||
Для НомерКолонки = 1 По ТаблицаЗначений.Колонки.Количество() Цикл
|
||
ОбластьЗаголовок.Область(1, НомерКолонки + 1).Текст = ТаблицаЗначений.Колонки[НомерКолонки - 1].Имя;
|
||
КонецЦикла;
|
||
ТабДок.Вывести(ОбластьЗаголовок);
|
||
|
||
// Заполняем данными
|
||
Для НомерСтроки = 1 По ТаблицаЗначений.Количество() Цикл
|
||
ОбластьСтрока = ТабДок.ПолучитьОбласть(НомерСтроки + 1, 1, НомерСтроки + 1, ТаблицаЗначений.Колонки.Количество() + 1);
|
||
ОбластьСтрока.Область(1, 1).Текст = Формат(НомерСтроки, "ЧГ=");
|
||
|
||
Для НомерКолонки = 1 По ТаблицаЗначений.Колонки.Количество() Цикл
|
||
ОбластьСтрока.Область(1, НомерКолонки + 1).Текст = Строка(ТаблицаЗначений[НомерСтроки - 1][НомерКолонки - 1]);
|
||
КонецЦикла;
|
||
|
||
ТабДок.Вывести(ОбластьСтрока);
|
||
КонецЦикла;
|
||
|
||
Возврат ТабДок;
|
||
|
||
КонецФункции
|
||
```
|
||
|
||
|
||
[Источник 1](https://infostart.ru/1c/articles/2110771)
|
||
[Источник 2](https://helpf.pro/faq/view/1373.html) |