![]() |
![]() |
|
Три разных отчета СКД в одном табличном документе - ширина колонок | ☑ | ||
---|---|---|---|---|
0
Гений 1С
гуру
16.07.21
✎
11:33
|
Вывожу три разных отчета на СКД.
Если выводить отдельно, ширина колонок ОК. Если выводить вместе, то ширина подстраивается под общую. Как это побороть? Визуально посмотреть тут: https://fixogram.ru/neponyatki-s-shirinoj/ СКД вывожу функцией: Функция ВывестиОтчетВСКД(ДокументРезультат, СхемаКомпоновкиДанных, КомпоновщикНастроек, ДанныеРасшифровки, СтруктураВнешнихДанных = Неопределено) Экспорт КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных(); Настройки = КомпоновщикНастроек.ПолучитьНастройки(); МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки); ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных(); ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки, СтруктураВнешнихДанных, ДанныеРасшифровки); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент(); ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.НачатьВывод(); Пока Истина Цикл ЭлементРезультата = ПроцессорКомпоновкиДанных.Следующий(); Если ЭлементРезультата = Неопределено Тогда Прервать; Иначе ПроцессорВывода.ВывестиЭлемент(ЭлементРезультата); КонецЕсли; КонецЦикла; ПроцессорВывода.ЗакончитьВывод(); КонецФункции |
|||
1
Ненавижу 1С
гуру
16.07.21
✎
12:02
|
рисуй свое, например выводи на три разных табличных документа, потом склеивай
|
|||
2
Вафель
16.07.21
✎
12:04
|
выводи каждый в свой, а потом объединяй с разной шириной
|
|||
3
Ботаник Гарден Меран
16.07.21
✎
12:06
|
СоздатьФорматСтрок()
|
|||
4
fisher
16.07.21
✎
12:07
|
Я бы попробовал создать индивидуальные форматы строк для заголовков группировок через макеты СКД. Вдруг выгорит.
|
|||
5
Гений 1С
гуру
16.07.21
✎
12:08
|
(1) Гм, надо попробовать.
(3) Не помогает, пробовал. |
|||
6
SleepyHead
гуру
16.07.21
✎
12:17
|
(0) А на что влияет не так ширина колонок? Какую проблему создает?
|
|||
7
Гений 1С
гуру
16.07.21
✎
12:29
|
(6) суммы в итого сокращает, заменяются на #####
|
|||
8
Гений 1С
гуру
16.07.21
✎
12:30
|
(3) В общем получилось, но нужно по-особому использовать:
ТекДокументРезультат = Новый ТабличныйДокумент(); ТекСхемаКомпоновкиДанных = ПолучитьМакет("МакетСклад"); ТекКомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных(); ТекКомпоновщикНастроек.ЗагрузитьНастройки(ТекСхемаКомпоновкиДанных.НастройкиПоУмолчанию); //Включаем подробный режим Попытка ТекКомпоновщикНастроек.Настройки.Структура[0].Структура[0].Использование = Подробно; Исключение КонецПопытки; ДокументРезультат.Область(ДокументРезультат.ВысотаТаблицы + 1, 1).Текст = "Сравнение запасов товара на даты: " + Формат(ДатаСклада1, "ДФ=dd.MM.yyyy") + " и: " + Формат(ДатаСклада2, "ДФ=dd.MM.yyyy") + ?(ЗначениеЗаполнено(ВыбПодразделение), " По подразделению: " + ВыбПодразделение, "") + " Сформировано: " + ТекущаяДата(); СтруктураВнешнихДанных = Новый Структура("ТЗ", ТЗ); ВывестиОтчетВСКД(ТекДокументРезультат, ТекСхемаКомпоновкиДанных, ТекКомпоновщикНастроек, ДанныеРасшифровки, СтруктураВнешнихДанных); СоздатьФорматСтрок(ТекДокументРезультат); ДокументРезультат.Вывести(ТекДокументРезультат); Функция СоздатьФорматСтрок(ДокументРезультат) Экспорт ТекОбласть = ДокументРезультат.Область(1, 1, ДокументРезультат.ВысотаТаблицы, ДокументРезультат.ШиринаТаблицы); //ДокументРезультат.Область(ДокументРезультат.ВысотаТаблицы, , ДокументРезультат.ВысотаТаблицы, ) ТекОбласть.СоздатьФорматСтрок(); КонецФункции |
|||
9
SleepyHead
гуру
16.07.21
✎
12:35
|
(7) А если в условном оформлении поменять методику "забивать" на "переносить"?
|
|||
10
Гений 1С
гуру
16.07.21
✎
12:40
|
(9) уже не актульно, проблема решена. Нет, это будет не красиво.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |