Как сделать так, чтобы настройки печати в 1С сохранялись автоматически?

Программист 1С v8.3 (Обычные формы) 1С:Управление торговлей Торговля и дистрибуция
← На главную

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

Почему 1С не сохраняет параметры страницы?

Проблема обычно кроется в том, что печатная форма формируется «на лету» или жестко задана в конфигурации без указания параметров сохранения. Если в настройках печатной формы (объекта ТабличныйДокумент) не заданы фиксированные значения полей, система каждый раз использует стандартные параметры, установленные в ОС или самой платформе по умолчанию. Чтобы исправить это, мы можем пойти двумя путями: настроить макет в Конфигураторе или прописать параметры программно.

Способ №1: Настройка параметров непосредственно в макете (самый надежный)

Если печатная форма является частью конфигурации (например, файл .mxl), то самым правильным решением будет изменить настройки самого макета. Это избавит вас от необходимости дописывать программный код.

  1. Откройте Конфигуратор вашей базы данных.
  2. Найдите нужный документ или обработку, которая отвечает за печать (используйте поиск по метаданным или контекстное меню объекта).
  3. Перейдите в список Макетов и откройте нужный макет (например, «Этикетка»).
  4. В верхней панели меню выберите вкладку Таблица, затем пункт Настройки печати (или Параметры страницы).
  5. В открывшемся окне установите нужные параметры: ПолеСлева, ПолеСправа, ПолеСверху, ПолеСнизу.
  6. Сохраните изменения в макете и обновите конфигурацию базы данных.

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

Способ №2: Программная установка параметров при формировании документа

Если макет генерируется динамически или вы хотите управлять настройками печати программно, вы можете принудительно задать параметры объекту ТабличныйДокумент в модуле документа или обработки перед его выводом на экран.

Для реализации этого метода используйте свойства объекта ТабличныйДокумент. Разберем пример кода, который необходимо добавить в процедуру формирования печатной формы:


// Предположим, ТабДок — это наш объект ТабличныйДокумент
ТабДок = Новый ТабличныйДокумент;
// Выводим данные в таблицу
... 
// Принудительно устанавливаем параметры страницы
ТабДок.ПолеСлева = 20;
ТабДок.ПолеСправа = 5;
ТабДок.ПолеСверху = 5;
ТабДок.ПолеСнизу = 5;
ТабДок.АвтоМасштаб = Истина;

// Отображаем документ пользователю
ТабДок.Показать();

Использование метода ПолеСлева и других свойств объекта ТабличныйДокумент позволяет жестко задать правила вывода на печать независимо от текущих настроек принтера у пользователя.

Рекомендации по системным настройкам

Если программные методы не приносят желаемого результата, проанализируйте настройки операционной системы:

Рекомендуем начать с Способа №1, так как это наиболее элегантное и «чистое» решение, не требующее вмешательства в программную логику конфигурации и упрощающее дальнейшую поддержку системы.

← На главную