Документы и Печать · 12 мин
Как вывести разделитель страниц в 1С
Как вставить разрыв страницы в табличном документе 1С: через меню, макет и программно. Настройка печати, типичные ошибки и проверка результата.
Разделитель страниц в 1С — это разрыв, который указывает программе, где закончить текущую страницу и начать печать следующей при выводе табличного документа на принтер или в PDF. Без правильно расставленных разрывов печатная форма «разъезжается»: шапка таблицы оказывается на одном листе, а продолжение — на другом, итоги отрываются от данных, подписи уезжают на отдельный лист.
В 1С:Предприятии разрывы страниц можно расставить тремя способами: вручную в готовом табличном документе перед печатью, через настройки макета печатной формы и программно — встроенными методами языка. Выбор способа зависит от того, кто выполняет задачу: пользователь, которому нужно один раз аккуратно распечатать документ, или разработчик, дорабатывающий печатную форму для всех сотрудников.
Ниже разобраны все три подхода с конкретными действиями, а также типичные ситуации: повтор шапки таблицы на каждой странице, запрет разрыва внутри блока, устранение пустых листов. Материал применим к конфигурациям на платформе 1С:Предприятие 8.3 — в типовых решениях («Бухгалтерия предприятия», «Управление торговлей», «Зарплата и управление персоналом») механика работает одинаково.
Где в 1С находится настройка разрывов страниц
Разрывы страниц относятся к табличному документу — универсальному объекту 1С, в котором формируются все печатные формы: счета, накладные, акты, отчёты. Когда вы нажимаете «Печать», программа строит табличный документ и показывает его в окне предварительного просмотра. Именно на этом этапе доступны ручные инструменты расстановки разрывов.
В типовых конфигурациях окно предварительного просмотра открывается в собственной форме с командной панелью. Искомые команды обычно находятся в меню «Ещё», «Таблица» или на панели инструментов формы. В режиме тонкого клиента и веб-клиента набор команд может визуально отличаться, но сами механизмы разрывов идентичны — это функции платформы, а не конкретной конфигурации.
Важно понимать иерархию: разрыв, вставленный вручную в предпросмотре, действует только на текущий экземпляр документа. При следующем формировании печатной формы он не сохранится. Если разрыв нужен постоянно — например, каждая новая накладная должна начинаться с нового листа при печати пакета документов — настройку выполняют в макете или программно.
Как вставить разрыв страницы вручную перед печатью
Ручной способ подходит, когда документ уже сформирован и нужно разово поправить его внешний вид на бумаге. Откройте печатную форму документа (кнопка «Печать» в документе), дождитесь отображения табличного документа в окне предварительного просмотра.
Установите курсор в строку, перед которой должен начинаться новый лист. Затем выполните команду вставки разрыва. В конфигураторе и в режиме, где табличный документ открыт как отдельный объект, путь выглядит так: главное меню → «Таблица» → «Разрывы страниц» → «Вставить разрыв страницы». В формах предпросмотра типовых конфигураций аналогичная команда может называться «Вставить разрыв» и находиться в меню «Ещё».
После вставки над строкой появится визуальная граница, а в предварительном просмотре содержимое ниже разрыва переместится на следующий лист. Чтобы убрать ошибочно поставленный разрыв, встаньте на строку под ним и выполните «Таблица» → «Разрывы страниц» → «Удалить разрыв страницы».
- 1Сформируйте печатную форму кнопкой «Печать»
- 2Поставьте курсор в строку, с которой должен начинаться новый лист
- 3Откройте меню «Таблица» (или «Ещё») и выберите «Разрывы страниц → Вставить разрыв»
- 4Проверьте результат в предварительном просмотре
- 5При необходимости удалите лишний разрыв той же командой меню
Как задать разрыв страницы в макете печатной формы
Макет печатной формы хранится в конфигурации: «Конфигуратор» → объект (документ, справочник) → «Макеты». Макет состоит из именованных областей: «Шапка», «СтрокаТаблицы», «Подвал» и т. д. Разрыв страницы в макете задаётся двумя способами — свойством области и служебной областью-разделителем.
Первый способ: выделите область макета и в палитре свойств установите признак, связанный с новой страницей. Для областей табличного документа доступно свойство «НоваяСтраница» — если оно включено, область при выводе всегда начнётся с нового листа. Это удобно, когда печатная форма состоит из разделов, каждый из которых логично начинать с отдельной страницы.
Второй способ — вывод специальной области-разделителя между обычными областями. В макете создают пустую область и выводят её методом, который вставляет горизонтальный разделитель. Такой подход гибче: разделитель можно выводить по условию, например только когда на текущем листе осталось мало места.
Как вывести разделитель страниц программно
Программный способ — основной для разработчиков печатных форм. У объекта «ТабличныйДокумент» есть метод ВывестиГоризонтальныйРазделительСтраниц(), который вставляет разрыв в текущую позицию вывода. Всё, что будет выведено после вызова метода, попадёт на новый лист.
Типовой фрагмент кода при печати нескольких документов одним пакетом выглядит так: после формирования каждого документа проверяется, не первый ли это документ, и если нет — выводится разделитель. Это классический приём, который используется в типовых процедурах печати.
Если Не ПервыйДокумент Тогда
ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
ПервыйДокумент = Ложь;
ТабДокумент.Вывести(Макет.ПолучитьОбласть("Шапка"));Для контроля автоматических разрывов есть метод ПроверитьВывод(): он определяет, поместятся ли указанные области на оставшейся части текущей страницы. Если не помещаются — программно выводят разделитель и затем область. Так реализуют правило «не отрывать итоги от таблицы» или «не печатать подписи на отдельном листе».
Дополнительно полезны свойства табличного документа: АвтоМасштаб подгоняет ширину под лист, ПовторятьПриПечатиСтроки задаёт строки-шапку, повторяемую на каждой странице, а РазмерСтраницы и ОриентацияСтраницы определяют параметры листа. Вертикальный разделитель для широких таблиц выводится методом ВывестиВертикальныйРазделительСтраниц().
Как повторить шапку таблицы и запретить разрыв внутри блока
Две самые частые задачи, связанные с разрывами, — это повтор заголовка таблицы на каждом листе и защита блока от разрыва посередине. Обе решаются без ручной расстановки разделителей.
Для повтора шапки установите у табличного документа свойство «Повторять при печати строки» (в конфигураторе — через палитру свойств табличного документа, программно — свойство ПовторятьПриПечатиСтроки, где указывается диапазон строк заголовка). После этого на каждом новом листе автоматически появится шапка таблицы с названиями колонок.
Запрет разрыва внутри блока реализуется методом ПроверитьВывод(): в массив передают области, которые должны остаться вместе (например, последнюю строку таблицы, итоги и подписи). Если проверка возвращает «Ложь», перед выводом блока вставляют горизонтальный разделитель — и весь блок целиком переезжает на новый лист.
Сравнение способов расстановки разрывов
Подходит для разовой корректировки. Не сохраняется при повторном формировании печатной формы.
Подходит для постоянных правил: раздел всегда с нового листа. Требует правки конфигурации.
Самый гибкий вариант: разрыв ставится по условию. Требует навыков разработки на встроенном языке.
Типичные ошибки и ограничения
Самая распространённая проблема — пустые листы при печати. Она возникает, когда разделитель выводится безусловно перед каждым документом, включая первый. Лечится флагом «первого документа», как в примере кода выше. Вторая причина пустых листов — область макета с включённым свойством новой страницы, которая выводится сразу после программного разделителя: получается двойной разрыв.
Ещё одна ошибка — попытка найти команду вставки разрыва в форме самого документа, а не в окне печатной формы. Разрывы существуют только в табличном документе; пока печатная форма не сформирована, разрыв ставить некуда. Также учитывайте: при экспорте в PDF или Excel ручные разрывы обычно сохраняются, но автоматический масштаб и повтор шапки в Excel работают иначе — результат нужно проверять в целевом формате.
Как проверить результат перед печатью
Перед отправкой на принтер всегда открывайте предварительный просмотр и пролистывайте документ целиком. Обращайте внимание на три зоны: границы страниц (не разорвана ли таблица в неудобном месте), повтор шапки на втором и последующих листах, расположение итогов и подписей — они не должны оставаться на листе в одиночестве.
Если документ многостраничный, включите в предпросмотре режим отображения нескольких страниц или используйте навигацию по страницам — так быстрее заметить пустые листы. При пакетной печати нескольких документов проверьте стыки: каждый новый документ должен начинаться с нового листа, но без пустых страниц между ними.
Как проверить результат
Таблица разрывается между строками, шапка повторяется
Строка обрезана, шапка есть только на первом листе
Каждый документ с нового листа, пустых страниц нет
Пустой лист в начале или между документами
Находятся на том же листе, что и конец таблицы
Итоги или подписи одиноко на отдельном листе
Частые вопросы
Почему команда «Вставить разрыв страницы» неактивна?
Команда доступна только для табличного документа. Проверьте, что курсор стоит внутри области печатной формы, а не в форме документа или списка. В некоторых формах предпросмотра типовых конфигураций ручное редактирование отключено — тогда разрыв задаётся только через макет или код.
Как сделать, чтобы каждая страница отчёта начиналась с шапки таблицы?
Установите у табличного документа свойство «Повторять при печати строки» и укажите диапазон строк заголовка. Программно это свойство ПовторятьПриПечатиСтроки. После настройки шапка будет автоматически дублироваться на каждом листе без ручных разрывов.
При печати появляется пустой первый лист. Что делать?
Почти всегда причина — разделитель страниц, выведенный перед первым документом или первой областью. В коде печати добавьте проверку флага «первый документ» и выводите разделитель только начиная со второго. Если форма типовая, проверьте, не добавлен ли лишний разрыв вручную в предпросмотре.
Сохранятся ли разрывы страниц при сохранении в PDF или Excel?
При сохранении в PDF разрывы сохраняются — PDF фактически повторяет постраничную картинку печати. При выгрузке в Excel табличный документ сохраняет структуру, но поведение разрывов и повторяющейся шапки зависит от настроек листа Excel, поэтому результат нужно проверять в самом Excel.
Можно ли запретить разрыв страницы внутри конкретного блока?
Да. В коде печатной формы используйте метод ПроверитьВывод(), передав в него массив областей, которые должны остаться вместе. Если метод возвращает «Ложь», выведите горизонтальный разделитель перед блоком — тогда блок целиком перейдёт на новый лист и не будет разорван.
Чем горизонтальный разделитель отличается от вертикального?
Горизонтальный разделитель начинает новый лист по вертикали — это стандартный переход на следующую страницу. Вертикальный нужен для очень широких таблиц, которые не помещаются на лист по ширине: он указывает, что колонки правее разделителя печатаются на отдельных листах.
Что важно запомнить
Разрыв страницы в 1С вставляется вручную через меню «Таблица → Разрывы страниц» в окне печатной формы, в макете — свойством области, программно — методом ВывестиГоризонтальныйРазделительСтраниц(). Для повтора шапки используйте свойство повтора строк, для защиты блока от разрыва — метод ПроверитьВывод(). Перед печатью всегда проверяйте результат в предварительном просмотре.