kb-personal/src/content/docs/knowledge-base/Общие/Обмен данными/Табличный документ в ТЗ и обратно.md
2025-10-07 14:16:34 +05:00

59 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
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)