Как настроить и сохранить поля при печати договора из шаблона в 1С:Бухгалтерия 8.3?

Пользователь 1С v8.3 (Управляемые формы) 1C:Бухгалтерия
← На главную

Каждый менеджер или бухгалтер, работающий в программе 1С:Бухгалтерия 8.3, рано или поздно сталкивается с необходимостью распечатать договор непосредственно из информационной базы. Для этого используется крайне удобный стандартный справочник Шаблоны договоров. Однако здесь многих пользователей подстерегает неприятный сюрприз: печатная форма документа формируется с минимальными, почти отсутствующими полями. Текст буквально «прилипает» к краям листа, что выглядит несолидно и затрудняет подшивку документов в папки.

Попытки настроить параметры страницы стандартным способом через предварительный просмотр часто ни к чему не приводят: при повторном открытии формы договора все настройки полей сбрасываются. В этой статье мы подробно разберем, почему возникает эта проблема, проанализируем поведение системы и рассмотрим эффективные практические способы ее решения без изменения конфигурации и программирования.

Выясняем причину: почему 1С «забывает» настройки полей?

Давайте разберемся, почему платформа ведет себя подобным образом. При стандартной печати обычных документов (например, накладных, актов или счетов) система сохраняет индивидуальные настройки печати конкретного пользователя. За это отвечает уникальный идентификатор формы, который жестко прописывается разработчиками в коде программы — ИмяПараметровПечати или КлючПараметровПечати.

В случае со справочником Шаблоны договоров ситуация иная. Документ здесь формируется динамически с использованием специального объекта ФорматированныйДокумент (по сути, это HTML-код). При выводе такого документа на экран и последующей отправке на печать типовая конфигурация часто не задает постоянное имя параметров печати. Из-за этого платформа при каждом формировании нового договора просто не может связать ранее сохраненные настройки принтера с текущим объектом и сбрасывает их до значений по умолчанию.

Ниже мы подробно разберем четыре надежных способа обхода этой проблемы.

Способ 1. Хитрость форматирования: использование невидимой таблицы

Поскольку шаблоны договоров в 1С редактируются во встроенном визуальном HTML-редакторе, все элементы форматирования (шрифты, абзацы, таблицы) сохраняются непосредственно внутри самого шаблона в базе данных. Мы можем использовать это свойство, чтобы жестко зафиксировать отступы слева и справа.

Рассмотрим по шагам, как настроить поля с помощью таблицы:

  1. Перейдем в раздел Справочники, найдем там подраздел Покупки и продажи и откроем Шаблоны договоров.
  2. Откроем нужный нам шаблон договора в режиме редактирования.
  3. Вставим в самое начало документа таблицу, состоящую ровно из одной строки и одного столбца. Растянем ее на всю ширину страницы.
  4. Выделим созданную таблицу, откроем ее свойства и сделаем границы невидимыми. Для этого зададим толщину границ равной 0 или выберем белый цвет линий.
  5. В свойствах ячейки таблицы найдем параметры внутренних отступов (в HTML-разметке это свойство отвечает за отступы padding) и установим комфортные значения для левой и правой сторон (например, по 20–30 пикселей).
  6. Выделим весь текст договора и аккуратно перенесем его внутрь этой невидимой ячейки.

Для наглядности проанализируем структуру кода, которая получается внутри шаблона при таком подходе:


<table style="width: 100%; border: none;">
  <tr>
    <td style="padding-left: 30px; padding-right: 15px; border: none;">
      <!-- Здесь располагается весь текст вашего договора -->
    </td>
  </tr>
</table>

Проанализируем результат: теперь текст договора физически «зажат» внутренними границами невидимой таблицы. Поскольку эти параметры прописаны прямо в теле самого макета, платформа 1С никак не сможет их сбросить при выводе на печать. Поля всегда будут выглядеть одинаково аккуратно на любом компьютере и принтере.

Способ 2. Переход на шаблоны в формате Microsoft Word (DOCX)

Если стандартный встроенный редактор 1С кажется вам неудобным или ограничивает ваши возможности по дизайну документов, мы рекомендуем использовать альтернативный встроенный механизм — автозаполнение шаблонов в формате .docx (MS Word).

Выполним следующие действия:

  1. Создадим макет нашего договора в привычном текстовом редакторе Microsoft Word на компьютере.
  2. Зададим в самом документе Word идеальные параметры страницы. Для этого перейдем на вкладку Разметка страницы, выберем пункт Поля и укажем нужные нам отступы (например: левое — 30 мм, правое — 15 мм, верхнее и нижнее — по 20 мм).
  3. В тех местах текста, куда 1С должна автоматически подставлять данные информационной базы, пропишем специальные параметры автозаполнения в фигурных скобках, например: {Договор.Номер}, {Договор.Дата}, {Контрагент.Наименование}.
  4. Сохраним файл на диске в формате .docx.
  5. В 1С откроем справочник Шаблоны договоров, создадим новый шаблон и выберем вариант загрузки из файла на диске, указав наш подготовленный Word-документ.

Этот способ гарантирует, что при отправке договора на печать документ будет выводиться на основе разметки файла Word, где все настройки полей жестко зафиксированы в самом файле-шаблоне.

Способ 3. Очистка кэша настроек печати пользователя

Иногда настройки полей в предварительном просмотре не сохраняются из-за банального системного сбоя кэша интерфейса конкретного пользователя. Если раньше всё работало корректно, а потом внезапно «сломалось», стоит попробовать очистить индивидуальные настройки печати в базе.

Разберем, как это сделать:

  1. Зайдем в раздел программы Администрирование.
  2. Перейдем в подраздел Настройки пользователей и прав, затем выберем пункт Пользователи.
  3. Найдем в списке учетную запись сотрудника, у которого возникли проблемы с полями, и откроем ее карточку.
  4. На верхней панели карточки пользователя нажмем кнопку Настройки.
  5. В открывшемся окне перейдем на вкладку Прочие настройки.
  6. Найдем в дереве настроек ветку с названием Настройки печати табличных документов.
  7. Выделим этот пункт и нажмем кнопку Очистить.

После этого обязательно перезапустим программу 1С, откроем нужный договор, перейдем в предварительный просмотр, настроим параметры страницы заново и сохраним их. Во многих случаях этот простой шаг полностью устраняет проблему сброса настроек.

Способ 4. Создание выделенного профиля печати в самой операционной системе

Если вышеописанные методы по какой-то причине вам не подходят, мы можем решить задачу на уровне операционной системы Windows. Для этого создается виртуальный «дубль» вашего физического принтера, настройки которого будут оптимизированы исключительно под печать договоров.

Пошаговый алгоритм настройки выглядит следующим образом:

  1. В операционной системе Windows перейдем в Панель управления, далее выберем раздел Устройства и принтеры.
  2. Найдем наш основной рабочий принтер и создадим его копию (продублируем устройство в системе с помощью мастера добавления принтеров).
  3. Назовем новую копию принтера понятным образом, например: Принтер для Договоров.
  4. Кликнем по созданному принтеру правой кнопкой мыши, выберем пункт Настройки печати и на уровне драйвера Windows принудительно зададим увеличенные непечатные поля по краям страницы.
  5. При отправке договора на печать из программы 1С выберем из списка именно этот виртуальный принтер.

Драйвер принтера самостоятельно масштабирует и сожмет область печати под свои жесткие внутренние настройки полей, проигнорировав любые сбившиеся параметры, которые передает платформа 1С.

Таким образом, мы детально разобрали причины проблемы с полями при печати договоров и нашли четыре надежных способа обойти это ограничение платформы 1С. Выбирайте наиболее удобный для вас вариант и делайте работу ваших менеджеров комфортной!

← На главную