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

1. Satoshi_Nakamoto 09.08.21 12:19 Сейчас в теме
Всем доброго времени суток, помогите очень нужно.

Нужно табличный документ вывести на печать в формате mxl, на деле получается 15 листов, когда нужно 2.
Как сделать управляемую форму, т. е. например есть 15 блоков(табличная часть, шапка и т.д.) на печать, из них оставить 5 блоков на первый лист, второй на 8 блоков и т.д.

С контролем области я разобрался, осталось корректное автозаполнение на всю страницу(и в высоту, и в ширину)
По теме из базы знаний
Найденные решения
10. Satoshi_Nakamoto 09.08.21 13:34 Сейчас в теме
С контролю области разобрался, просто ставишь код где хочешь разделить ТабДок.ВывестиГоризонтальныйРазделительСтраниц(); и он автоматически выводит на другую страницу;
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. malikov_pro 1292 09.08.21 12:49 Сейчас в теме
При выводе на печать есть функция проверки вписывается ли добавленная строка в лист с учетом выбранного принтера и параметров печати, от типа формы не зависит, посмотрите пример в формировании ТОРГ12/УПД в типовых.
3. Satoshi_Nakamoto 09.08.21 12:53 Сейчас в теме
Как называется это функция в общем модуле(и как называется общий модуль) или я вас не правильно понял?
4. Dимыч 09.08.21 12:56 Сейчас в теме
(3)
В ЗКГУ 3.1 проверял так
ВывестиПодвалЛиста =  ОбщегоНазначения.ПроверитьВыводТабличногоДокумента(ТабличныйДокумент, ВыводимыеОбласти);
5. Satoshi_Nakamoto 09.08.21 12:58 Сейчас в теме
Интересно в разных конфигурациях совпадают модули и функции, я работаю на 1С:ERP
6. VmvLer 09.08.21 13:06 Сейчас в теме
Процедура ВывестиДанныеВТабличныйДокументПоОбъектуЧастями(Макет, ПараметрыМакета, ДокументРезультат, ВсегоЧастей)
	
	Для НомерЧасти = 0 По ВсегоЧастей Цикл
		ЧастьИмя = "Часть" + Формат(НомерЧасти,"ЧН=; ЧГ=");
		Попытка
			ОбластьЧасть = Макет.ПолучитьОбласть(ЧастьИмя);
		Исключение
			СообщениеТекст = "При печати: " + ДокументРезультат.КлючПараметровПечати + " не удалось получить часть № " + НомерЧасти + ". Обратитесь к разработчику!";
			СообщитьПриПечати(СообщениеТекст);
			Возврат;
		КонецПопытки;
		ОбластьЧасть.Параметры.Заполнить(ПараметрыМакета);
		ДокументРезультат.Вывести(ОбластьЧасть);
		Если НомерЧасти + 1 = 5 Тогда
			ДокументРезультат.ВывестиГоризонтальныйРазделительСтраниц(); // Первые 5 частей на первый лист.
		ИначеЕсли НомерЧасти + 1 = 8 Тогда	
			ДокументРезультат.ВывестиГоризонтальныйРазделительСтраниц(); // Первые 5 частей на первый лист. 6, 7, 8 на второй
		ИначеЕсли НомерЧасти + 1 = 10 Тогда	
			ДокументРезультат.ВывестиГоризонтальныйРазделительСтраниц();
		КонецЕсли;
	КонецЦикла;
	
КонецПроцедуры
Показать


макет разбиваете на части на глазок и проверяете, что блоки верно "разошлись"
Прикрепленные файлы:
Satoshi_Nakamoto; +1 Ответить
7. Satoshi_Nakamoto 09.08.21 13:14 Сейчас в теме
А что делать если у меня области не подогнаны под нумерацию часть0,часть1..., а шапка, основное, подвал(там их не три а много, очень много)
10. Satoshi_Nakamoto 09.08.21 13:34 Сейчас в теме
С контролю области разобрался, просто ставишь код где хочешь разделить ТабДок.ВывестиГоризонтальныйРазделительСтраниц(); и он автоматически выводит на другую страницу;
8. FatPanzer 09.08.21 13:19 Сейчас в теме
Автомасштаб и ГоризонтальныйРазделитель.
9. Satoshi_Nakamoto 09.08.21 13:21 Сейчас в теме
Я ставлю ТабДок.Автомасштаб = Истина;, и ни чего не происходит почему?
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)