Документы и Печать · 10 мин
Пунктир в макете 1С: что это и как настроить границы ячеек
Что означает пунктирная линия в макете 1С, как задать тип линии границы ячейки, почему пунктир не печатается и как проверить результат в табличном документе.
Пунктирная линия в макете 1С — это тип границы ячейки табличного документа, который разработчик или пользователь задал вместо сплошной рамки. Визуально пунктир отличается от обычной линии только стилем отрисовки, но на практике его используют осознанно: чтобы отделить служебные зоны, показать линии отреза, выделить итоговые строки или просто сделать печатную форму легче для чтения.
Чаще всего вопрос «что за пунктир» возникает в трёх ситуациях. Первая — пользователь открыл макет в конфигураторе и видит пунктирные рамки вокруг областей, но не понимает, попадут ли они на печать. Вторая — в готовой печатной форме появились пунктирные линии, которых не было раньше, обычно после обновления конфигурации. Третья — разработчик задал пунктирную границу, а при выводе она отображается сплошной или не отображается вовсе.
Разобраться в ситуации несложно, если понимать, как 1С хранит и выводит границы ячеек. Ниже — конкретные шаги: где задаётся тип линии, какие стили доступны, почему пунктир может «пропадать» и как проверить результат до отправки документа на принтер.
Что означает пунктирная линия в макете
В табличном документе 1С каждая ячейка имеет набор свойств оформления: шрифт, цвет, выравнивание и границы. Граница описывается двумя параметрами — типом линии и её толщиной (или цветом). Среди доступных типов есть сплошная линия, двойная, пунктир, а также вариант «нет линии», когда граница не рисуется вовсе.
Пунктир не несёт никакого служебного смысла для самой платформы: это чисто визуальное оформление. Смысл ему придаёт тот, кто проектировал макет. Типичные сценарии использования пунктирных границ:
- линия отреза на отрывных талонах, квитанциях, извещениях — часто с подписью «линия отреза» и значком ножниц;
- обрамление служебных или заполняемых вручную полей, чтобы визуально отличить их от печатаемых данных;
- разделение логических блоков внутри таблицы без «тяжёлых» сплошных рамок;
- выделение промежуточных итогов, которые не должны визуально конкурировать с главным итогом документа.
Если вы открыли чужой макет и видите пунктир — это почти всегда намеренное решение автора макета, а не ошибка платформы и не признак повреждения файла.
Как задать пунктирную границу в конфигураторе
Настройка выполняется в конфигураторе, в редакторе макета табличного документа. Порядок действий одинаков для макетов, хранящихся в конфигурации, и для макетов, прикреплённых к справочникам и документам.
- 1Откройте конфигуратор и найдите нужный макет (Общие → Макеты либо макет конкретного объекта)
- 2Выделите ячейку или диапазон ячеек, где нужен пунктир
- 3Откройте палитру свойств (правый клик → Свойства)
- 4Найдите свойства границ: ГраницаСверху, ГраницаСнизу, ГраницаСлева, ГраницаСправа
- 5Установите для нужных сторон значение «Пунктир»
- 6Сохраните макет и обновите конфигурацию базы данных, если макет типовой
Границы задаются для каждой стороны ячейки отдельно. Это позволяет, например, сделать сплошную верхнюю и нижнюю рамку таблицы, а внутренние разделители строк — пунктирными. Учтите: граница между двумя соседними ячейками определяется настройками обеих — если у одной задан пунктир, а у соседней «нет линии», итог зависит от того, какая граница имеет приоритет при отрисовке, поэтому для предсказуемого результата настраивайте обе смежные ячейки.
Кроме типа линии, для границы можно задать цвет. Светло-серый пунктир — распространённый приём для линий отреза и служебных разделителей: он виден, но не отвлекает от содержимого.
Как задать пунктир программно
Когда печатная форма строится динамически, границы удобнее назначать из кода. Для этого используется перечисление типа линии ячейки табличного документа и объект «Линия».
ЛинияПунктир = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Пунктир, 1);
Область = ТабДок.Область("R5C1:R5C8");
Область.ГраницаСверху = ЛинияПунктир;
Область.ГраницаСнизу = ЛинияПунктир;
Второй параметр конструктора линии — толщина в пунктах. Для пунктира разумно использовать тонкую линию: толстый пунктир выглядит грубовато и на некоторых принтерах печатается хуже. Цвет линии при необходимости задаётся третьим параметром или отдельно через свойства области.
Программный способ удобен, когда один и тот же макет должен оформляться по-разному в зависимости от условий: например, строки-разделители групп выводятся с пунктирной границей, а обычные строки — без рамок.
Почему пунктир не отображается или выводится сплошной линией
Самая частая жалоба — пунктир задан, а на экране или при печати видна сплошная линия либо ничего. Причины обычно следующие.
Как проверить результат
Пунктир виден в табличном документе при масштабе 100%
Линия выглядит сплошной — увеличьте масштаб, при мелком масштабе пунктир сливается
Пунктир читается на предпросмотре
На предпросмотре линии нет — проверьте, не задан ли белый цвет линии
Пунктир печатается чётко
Пунктир рвётся или пропадает — проблема в драйвере принтера или слишком тонкой линии
Тонкие пунктирные линии чувствительны к масштабу отображения. При масштабе 50–70 % штрихи визуально сливаются в сплошную линию — это особенность отрисовки, а не ошибка. Перед выводами о «неправильном» отображении проверьте документ при 100 % масштабе и в режиме предварительного просмотра печати.
Ещё одна типичная причина — переопределение оформления при выводе. Если после заполнения макета код применяет к области метод оформления (например, копирование формата из другой области), он может затереть границы, заданные в макете. В таком случае пунктир «есть в макете, но пропадает в документе». Проверяйте порядок вывода областей и программное изменение свойств после получения области из макета.
Пунктир в типовых печатных формах: линия отреза и служебные зоны
В типовых конфигурациях пунктир чаще всего встречается как линия отреза — например, на отрывной части квитанций, извещений, некоторых кадровых и складских форм. Это осознанное оформление: пунктир международно читается как «здесь резать», и менять его на сплошную линию не стоит.
Если после обновления конфигурации в печатной форме появился пунктир, которого раньше не было, — скорее всего, поставщик изменил макет. Проверить это просто: откройте макет в конфигураторе и посмотрите свойства границ соответствующих ячеек. Если изменение мешает, есть два пути: скорректировать макет через расширение конфигурации (рекомендуемый способ) или переопределить формирование формы программно. Прямое редактирование типового макета чревато потерей изменений при следующем обновлении.
Как убрать или изменить пунктирную границу
Убрать пунктир можно теми же инструментами, которыми он задавался. В конфигураторе выделите ячейки и установите для нужных сторон значение «Нет линии» или другой тип линии. Программно — присвойте свойству границы пустую линию: Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.НетЛинии) либо просто не задавайте границу для области.
Если макет типовой и редактировать его нельзя, рассмотрите внешнюю печатную форму: она подключается через механизм дополнительных отчётов и обработок и полностью контролируется вами, не затрагивая конфигурацию. Это безопасный путь для баз, которые регулярно обновляются.
Как выбрать действие
Проверка результата перед печатью
Перед тем как отправлять изменённую форму пользователям, пройдите короткий контрольный цикл. Сформируйте документ с реальными данными, откройте предварительный просмотр при 100 % масштабе и проверьте все стороны ячеек, где менялись границы. Затем распечатайте один экземпляр — экранная отрисовка пунктира и принтерная могут заметно отличаться.
Обратите внимание на стыки областей: место, где заканчивается шапка и начинается табличная часть, часто содержит смежные ячейки с разными настройками границ. Именно там пунктир чаще всего «ломается» — прерывается или дублируется сплошной линией.
Что важно запомнить
Пунктир в макете 1С — это стиль границы ячейки, задаётся в свойствах ячейки или программно через тип линии табличного документа. Проверяйте результат при 100 % масштабе, настраивайте смежные ячейки вместе, а типовые макеты изменяйте через расширения или внешние печатные формы.
Частые вопросы
Пунктир в макете попадёт на печать?
Да. Тип линии — это свойство оформления ячейки, которое выводится вместе с содержимым табличного документа и на экран, и на принтер. Если на печати пунктир не виден, проверьте цвет и толщину линии, а также драйвер принтера.
Можно ли задать пунктир для всей таблицы сразу?
Можно выделить весь диапазон ячеек таблицы и задать границы в палитре свойств — настройки применятся ко всем выделенным ячейкам. Программно это делается через область, охватывающую нужный диапазон, с присвоением линий её границам.
Почему пунктир на экране выглядит как сплошная линия?
Из-за масштаба отображения. При уменьшенном масштабе штрихи сливаются визуально. Установите масштаб 100 % или откройте предварительный просмотр печати — там пунктир отображается так, как будет выглядеть на бумаге.
Как сделать линию отреза на печатной форме?
Добавьте в макет отдельную строку-разделитель, задайте её нижней или верхней границе тип «Пунктир» и при необходимости разместите рядом текст «линия отреза» мелким шрифтом. Так оформлены отрывные части в типовых квитанциях и извещениях.
Изменения в типовом макете пропали после обновления. Что делать?
Это ожидаемо: обновление заменяет типовые макеты. Восстановите оформление и перенесите доработку в расширение конфигурации или во внешнюю печатную форму — тогда изменения переживут следующие обновления.
Можно ли изменить цвет пунктирной линии?
Да. Цвет границы задаётся отдельным свойством ячейки в палитре свойств или параметром при создании линии программно. Для служебных разделителей обычно используют серый цвет, чтобы пунктир не спорил с основным содержимым формы.