С присоединением табличных документов в своем формате в 1С «всё плохо»
Пришлось «помучаться» для того, чтобы в подвале отчета вывести два табличных документа, полученных выводом через СКД, рядом (для экономии пространства):
Увы, функции работы с табличными документами отказываются работать, когда встречается собственный формат строк. Например, метод ПолучитьОбласть получает область без текстов.
Поэтому пришлось пока так, по отдельным ячейкам копировать, может быть как-нибудь потом придумаю что-то более универсальное, чтобы сохранялась ширина колонок:
Для Стр = 1 по ДокументРезультатДоп2.ВысотаТаблицы Цикл Для Кол = 1 по ДокументРезультатДоп2.ШиринаТаблицы Цикл Если Стр <=3 Тогда СдвигКол = 2 Иначе СдвигКол = 0 КонецЕсли; ОбластьПриемник = ДокументРезультат.Область(ВысотаСохраненная + 0 + Стр, 4 + Кол + СдвигКол); ОбластьИсходная = ДокументРезультатДоп2.Область(Стр, Кол); Если Стр =5 И Кол = 2 Тогда ОбластьПриемник.ШиринаКолонки = 40; КонецЕсли; ДокументРезультат.ВставитьОбласть(ОбластьИсходная, ОбластьПриемник); КонецЦикла; КонецЦикла;
Здесь 40 — ширина поля комментарий. Высота сохраненная — номер строки вывода подвала отчета (куда и выводятся эти две таблицы). Все это выводится в макет ДокументРезультат.
Можно было бы копировать ширину колонок из табличного документа 2, но в первой таблице на уровне «Оплаты» одно количество колонок (одна), а на уровнях ниже другое (две). Хотя общая ширина у них одинаковая.
Зато сэкономили клиенту бумагу и Green Peace нас одобряет!
Свежие комментарии