---
title: Управление печатью
slug: bsp/управление-печатью
---


## ТаблицаПолейДанныхПечати
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Конструктор списка полей данных печати для функции СхемаКомпоновкиДанныхПечати.
//
// Возвращаемое значение:
//  ТаблицаЗначений:
//   * Идентификатор - Строка - имя поля.
//   * Представление - Строка - заголовок поля.
//   * ТипЗначения   - ОписаниеТипов - тип значения поля.
//   * ИмяКартинки   - Строка - картинка поля, выводится в списке доступных полей редактора макета.
//   * Порядок       - Число - используется для упорядочивания поля в списке доступных полей редактора макета.
//
Функция ТаблицаПолейДанныхПечати() Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.ТаблицаПолейДанныхПечати() 
```
</details>

## ДеревоПолейДанныхПечати
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Конструктор списка полей данных печати для функции СхемаКомпоновкиДанныхПечати.
//
// Возвращаемое значение:
//  ДеревоЗначений:
//   * Идентификатор - Строка - имя поля.
//   * Представление - Строка - заголовок поля.
//   * ТипЗначения   - ОписаниеТипов - тип значения поля.
//   * ИмяКартинки   - Строка - картинка поля, выводится в списке доступных полей редактора макета.
//   * Порядок       - Число - используется для упорядочивания поля в списке доступных полей редактора макета.
//   * Папка         - Булево - указывает на то, что поле является папкой. В отличие от групп, папка входит в полный
//                              путь к полю.
//   * Таблица       - Булево - используется для описания табличной части. Подчиненные поля - поля этой табличной части.
//
Функция ДеревоПолейДанныхПечати() Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.ДеревоПолейДанныхПечати() 
```
</details>

## СхемаКомпоновкиДанныхПечати
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Формирует схему компоновки данных печати с заданным списком полей.
//
// Параметры:
//  СписокПолей - см. ТаблицаПолейДанныхПечати
//              - ДеревоЗначений  - см. ДеревоПолейДанныхПечати
//
// Возвращаемое значение:
//  СхемаКомпоновкиДанных
//
Функция СхемаКомпоновкиДанныхПечати(СписокПолей) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.СхемаКомпоновкиДанныхПечати(СписокПолей) 
```
</details>

## СведенияОПечатнойФорме
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает описание найденной в коллекции печатной формы.
// Если описание не существует, возвращает Неопределено.
// Функция предназначена для использования только внутри процедуры Печать.
//
// Параметры:
//  КоллекцияПечатныхФорм - см. УправлениеПечатьюПереопределяемый.ПриПечати.КоллекцияПечатныхФорм
//  Идентификатор         - Строка - идентификатор печатной формы в менеджере печати.
//
// Возвращаемое значение:
//  СтрокаТаблицыЗначений из см. УправлениеПечатьюПереопределяемый.ПриПечати.КоллекцияПечатныхФорм
//
// Пример:
//  ПечатнаяФорма = УправлениеПечатью.СведенияОПечатнойФорме(КоллекцияПечатныхФорм, "Квитанция");
//  Если ПечатнаяФорма <> Неопределено Тогда
//    ПечатнаяФорма.ТабличныйДокумент = ПечатьКвитанции(МассивОбъектов);
//    ПечатнаяФорма.СинонимМакета = НСтр("ru = 'Квитанция (с QR кодом)'");
//    ПечатнаяФорма.ПолныйПутьКМакету = "Документ.СчетНаОплатуПокупателю.ПФ_MXL_Квитанция";
//  КонецЕсли;
//
Функция СведенияОПечатнойФорме(КоллекцияПечатныхФорм, Идентификатор) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.СведенияОПечатнойФорме(КоллекцияПечатныхФорм, Идентификатор) 
```
</details>

## НужноПечататьМакет
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Проверить, нужно ли печатать макет.
// Функция предназначена для использования только внутри процедуры Печать.
//
// Параметры:
//  КоллекцияПечатныхФорм - ТаблицаЗначений - служебный параметр, переданный в процедуру Печать;
//  ИмяМакета             - Строка          - имя проверяемого макета.
//
// Возвращаемое значение:
//  Булево - Истина, если макет надо печатать.
//
Функция НужноПечататьМакет(КоллекцияПечатныхФорм, ИмяМакета) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, ИмяМакета) 
```
</details>

## ВывестиТабличныйДокументВКоллекцию
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Добавляет табличный документ в коллекцию печатных форм.
// Процедура предназначена для использования только внутри процедуры Печать.
//
// Параметры:
//  КоллекцияПечатныхФорм - ТаблицаЗначений - служебный параметр, переданный в процедуру Печать;
//  ИмяМакета             - Строка - имя макета;
//  СинонимМакета         - Строка - представление макета;
//  ТабличныйДокумент     - ТабличныйДокумент - печатная форма документа;
//  Картинка              - Картинка - пиктограмма печатной формы;
//  ПолныйПутьКМакету     - Строка - путь к макету в дереве метаданных, например
//                                   "Документ.СчетНаОплатуПокупателю.ПФ_MXL_СчетЗаказ".
//                                   Если не указывать этот параметр, то редактирование макета пользователем будет
//                                   недоступно в форме ПечатьДокументов.
//  ИмяФайлаПечатнойФормы - Строка - имя, используемое при сохранении печатной формы в файл;
//                        - Соответствие из КлючИЗначение:
//                           * Ключ     - ЛюбаяСсылка - ссылка на объект печати;
//                           * Значение - Строка - имя файла.
//
Процедура ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, ИмяМакета, СинонимМакета, ТабличныйДокумент, Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, ИмяМакета, СинонимМакета, ТабличныйДокумент, );
```
</details>

## ЗадатьОбластьПечатиДокумента
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Задает область печати объекта в табличном документе. Необходимо использовать при выводе нескольких печатных форм
// в одном табличном документе для возможности печати комплектов документов, а также для возможности сохранения
// печатных форм в отдельных файлах.
// Необходимо вызывать после формирования каждой печатной формы в табличном документе.
//
// Параметры:
//  ТабличныйДокумент - ТабличныйДокумент - печатная форма;
//  НомерСтрокиНачало - Число - позиция начала очередной области в документе;
//  ОбъектыПечати - см. УправлениеПечатьюПереопределяемый.ПриПечати.ОбъектыПечати
//  Ссылка - ЛюбаяСсылка - объект печати.
//
// Пример:
//  Пока ВыборкаПоДокументам.Следующий() Цикл
//    НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
//    // ... вывод печатной формы в табличный документ ...
//    УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ВыборкаПоДокументам.Ссылка);
//  КонецЦикла;
//
Процедура ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, Ссылка) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, Ссылка) 
```
</details>

## СписокПечатныхФормИзВнешнихИсточников
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает список внешних печатных форм.
//
// Параметры:
//  ПолноеИмяОбъектаМетаданных - Строка - полное имя объекта метаданных, для которого необходимо получить список
//                                        печатных форм.
//
// Возвращаемое значение:
//  СписокЗначений:
//   * Значение      - Строка - идентификатор печатной формы;
//   * Представление - Строка - представление печатной формы.
//
Функция СписокПечатныхФормИзВнешнихИсточников(ПолноеИмяОбъектаМетаданных) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.СписокПечатныхФормИзВнешнихИсточников(ПолноеИмяОбъектаМетаданных) 
```
</details>

## КомандыПечатиФормы
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает список команд печати для указанной формы.
//
// Параметры:
//  Форма - ФормаКлиентскогоПриложения
//        - Строка - форма или полное имя формы, для которой необходимо получить список
//                   команд печати.
//  СписокОбъектов - Массив - коллекция объектов метаданных, команды печати которых необходимо использовать при составлении
//                            списка команд печати для указанной формы.
// Возвращаемое значение:
//   см. СоздатьКоллекциюКомандПечати
//
Функция КомандыПечатиФормы(Форма, СписокОбъектов = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.КомандыПечатиФормы(Форма, СписокОбъектов);
```
</details>

## СоздатьКоллекциюКомандПечати
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Создает пустую таблицу с описанием команд печати.
// Таблица команд печати передается в процедуры ДобавитьКомандыПечати,
// размещенные в модулях менеджеров объектов конфигурации, которые перечислены в процедуре
// УправлениеПечатьюПереопределяемый.ПриОпределенииОбъектовСКомандамиПечати.
//
// Возвращаемое значение:
//  ТаблицаЗначений:
//
//   * Идентификатор - Строка - идентификатор команды печати, по которому менеджер печати определяет печатную
//                             форму, которую необходимо сформировать.
//                             Например, "СчетЗаказ".
//
//                              Для печати нескольких печатных форм можно указывать одновременно несколько их
//                              идентификаторов (строкой, через запятую либо массивом строк), например:
//                              "СчетЗаказ,ГарантийноеПисьмо".
//
//                              Если необходимо задать количество копий печати для печатной формы, то ее
//                              идентификатор нужно продублировать столько раз, сколько копий необходимо
//                              сформировать. При этом следует учитывать, что порядок следования печатных
//                              форм в комплекте будет соответствовать порядку идентификаторов печатных форм,
//                              указанных в этом параметре. Например (2 счета на оплату + 1 гарантийное письмо):
//                              "СчетЗаказ,СчетЗаказ,ГарантийноеПисьмо".
//
//                              Идентификатор печатной формы может содержать в себе и альтернативный менеджер
//                              печати, если он отличается от указанного в параметре МенеджерПечати,
//                              например: "СчетЗаказ,Обработка.ПечатнаяФорма.ГарантийноеПисьмо".
//
//                              В этом примере ГарантийноеПисьмо формируется в менеджере печати
//                              Обработка.ПечатнаяФорма, а СчетЗаказ - в менеджере печати, указанном в
//                              параметре МенеджерПечати.
//
//                              Для печатных форм, менеджером печати которых является общий модуль
//                             "УправлениеПечатью", в качестве идентификатора необходимо указать полный путь к макету.
//                             Например, "Документ.СчетНаОплатуПокупателю.ПФ_MXL_СчетНаОплату".
//
//                   - Массив - список идентификаторов команд печати.
//
//   * Представление - Строка            - представление команды в меню Печать.
//                                         Например, "Счет на оплату".
//
//   * МенеджерПечати - Строка           - (необязательный) имя объекта, в модуле менеджера которого располагается
//                                        процедура Печать, формирующая табличные документы для этой команды.
//                                        Если печатная форма формируется автоматически по данным печати и макету, то
//                                        в параметре необходимо указать общий модуль "УправлениеПечатью".
//                                        Значение по умолчанию - имя модуля менеджера объекта.
//                                        Например, "Документ.СчетНаОплатуПокупателю".
//   * ТипыОбъектовПечати - Массив       - (необязательный) список типов объектов, для которых предназначена команда
//                                        печати. Параметр предназначен для команд печати в журналах документов, где
//                                        требуется проверка передаваемого типа объекта перед вызовом менеджера печати.
//                                        Если список не заполнен, то при автоматическом создании списка команд печати
//                                        в журнале документов он заполняется типом объекта, из которого была
//                                        импортирована команда печати.
//
//   * Обработчик    - Строка            - (необязательный) клиентский обработчик команды, в который необходимо передать
//                                        управление вместо стандартного обработчика команды Печать. Используется,
//                                        например, когда печатная форма формируется на клиенте.
//                                        Формат "<ИмяОбщегоМодуля>.<ИмяПроцедуры>" используется, когда процедура размещена
//                                        в общем модуле.
//                                        Формат "<ИмяПроцедуры>" используется, когда процедура размещена
//                                        в модуле основной формы отчета или обработки, указанной в МенеджерПечати.
//                                        Например,
//                                          КомандаПечати.Обработчик = "ЗащитаПерсональныхДанныхКлиент.ОткрытьФормуСогласиеНаОбработкуПерсональныхДанных";
//                                        Пример обработчика в модуле формы:
//                                          // Формирует печатную форму <представление печатной формы>.
//                                          //
//                                          // Параметры:
//                                          //   ПараметрыПечати - Структура - сведения о печатной форме.
//                                          //       * ОбъектыПечати - Массив - массив ссылок выбранных объектов.
//                                          //       * Форма - ФормаКлиентскогоПриложения - форма, из которой вызвана
//                                          //                                              команда печати.
//                                          //       * ДополнительныеПараметры - Структура - дополнительные параметры печати.
//                                          //       Прочие ключи структуры соответствуют колонкам таблицы КомандыПечати,
//                                          //       подробнее см. в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати.
//                                          //
//                                          &НаКлиенте
//                                          Функция <ИмяФункции>(ПараметрыПечати) Экспорт
//                                          	// Обработчик печати.
//                                          КонецФункции
//                                        Следует иметь в виду, что обработчик вызывается при помощи метода Вычислить,
//                                        поэтому в качестве обработчика может выступать только функция.
//                                        При этом возвращаемое значение функции никак в дальнейшем не используется подсистемой.
//
//   * Порядок       - Число             - (необязательный) Значение от 1 до 100, указывающее порядок размещения команды
//                                        по отношению к другим командам. Сортировка команд меню Печать осуществляется
//                                        сначала по полю Порядок, затем по представлению.
//                                        Значение по умолчанию - 50.
//
//   * Картинка      - Картинка          - (необязательный) Картинка, которая отображается возле команды в меню Печать.
//                                         Например, БиблиотекаКартинок.ФорматPDF.
//
//   * СписокФорм    - Строка            - (необязательный) Имена форм через запятую, в которых должна отображаться
//                                        команда. Если параметр не указан, то команда печати будет отображаться во
//                                        всех формах объекта, где встроена подсистема Печать.
//                                         Например, "ФормаДокумента".
//
//   * МестоРазмещения - Строка          - (необязательный) Имя группы формы, в которую необходимо разместить
//                                        команду печати. Параметр необходимо использовать только в случае, когда на
//                                        форме размещается более одного подменю "Печать". В остальных случаях место
//                                        размещения необходимо задавать в модуле формы при вызове
//                                        метода ПодключаемыеКоманды.ПриСозданииНаСервере.
//
//   * ЗаголовокФормы  - Строка          - (необязательный) Произвольная строка, переопределяющая стандартных заголовок
//                                        формы "Печать документов". Например, "Настраиваемый комплект".
//
//   * ФункциональныеОпции - Строка      - (необязательный) Имена функциональных опций через запятую, от которых зависит
//                                        доступность команды печати.
//
//   * УсловияВидимости - Массив         - (необязательный) Коллекция условий видимости команды в зависимости от
//                                        контекста. Условия видимости команды задаются при помощи процедуры
//                                        ДобавитьУсловиеВидимостиКоманды.
//                                        Если параметр не задан, команда видна вне зависимости от контекста.
//
//   * ПроверкаПроведенияПередПечатью    - Булево - (необязательный) Признак необходимости проверки проведенности
//                                        документов перед печатью. Если выбран хотя бы один непроведенный документ, то
//                                        перед выполнением команды печати возникает диалог проведения.
//                                        Для непроведенных документов команда печати не выполняется.
//                                        Если параметр не указан, то проверка проведенности не выполняется.
//
//   * СразуНаПринтер - Булево           - (необязательный) Признак необходимости печати документов без предварительного
//                                        просмотра, сразу на принтер. Если параметр не указан, то при выборе команды
//                                        печати открывается форма предварительного просмотра "Печать документов".
//
//   * ФорматСохранения - ТипФайлаТабличногоДокумента - (необязательный) Применяется для быстрого сохранения печатной
//                                        формы (без дополнительных действий) в различные форматы, отличные от mxl.
//                                        Если параметр не указан, то формируется обычный mxl.
//                                        Например, ТипФайлаТабличногоДокумента.PDF.
//
//                                        При выборе команды печати сразу открывается сформированный в формате PDF
//                                        документ.
//
//   * ПереопределитьПользовательскиеНастройкиКоличества - Булево - (необязательный) Признак необходимости отключения в
//                                        форме ПечатьДокументов механизма сохранения/восстановления выбранного
//                                        пользователем количества экземпляров на печать. Если параметр не указан, то
//                                        механизм сохранения/восстановления настроек будет работать при открытии формы.
//                                        ПечатьДокументов.
//
//   * ДополнитьКомплектВнешнимиПечатнымиФормами - Булево - (необязательный) Признак необходимости дополнить комплект
//                                        документов всеми подключенными к объекту внешними печатными формами
//                                        (подсистема ДополнительныеОтчетыИОбработки). Если параметр не указан, внешние
//                                        печатные формы не добавляются в комплект.
//
//   * ФиксированныйКомплект - Булево    - (необязательный) Признак необходимости блокировки от изменения пользователем
//                                        состава комплекта документов. Если параметр не указан, то пользователь сможет
//                                        исключать отдельные печатные формы из комплекта в форме ПечатьДокументов, а
//                                        также изменять их количество.
//
//   * ДополнительныеПараметры - Структура - (необязательный) произвольные параметры для передачи в менеджер печати.
//
//   * НеВыполнятьЗаписьВФорме - Булево  - (необязательный) Признак необходимости отключения механизма записи объекта
//                                        перед выполнением команды печати. Используется в исключительных случаях. Если
//                                        параметр не указан, производится запись объекта в случае, если в форме
//                                        объекта установлен признак модифицированности.
//
//   * ТребуетсяРасширениеРаботыСФайлами - Булево - (необязательный) Признак необходимости подключения расширения для работы
//                                        с 1С:Предприятием перед выполнением команды. Если параметр не указан, расширение
//                                        подключаться не будет.
//
//   * ОсновнаяПечатнаяФорма             - Булево - (необязательный) Признак определяющий возможность запоминания
//                                        наименований сформированных печатных форм.
//
//   * НаименованиеПечатнойФормы         - Строка - (необязательный) Наименование, которое будет сохранено при установленном
//                                         признаке "ОсновнаяПечатнаяФорма". Если не заполнено, будет запоминаться значение
//                                         из поля "Представление".
//
Функция СоздатьКоллекциюКомандПечати() Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.СоздатьКоллекциюКомандПечати() 
```
</details>

## ДобавитьУсловиеВидимостиКоманды
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Задает условия видимости команды печати на форме в зависимости от контекста.
//
// Параметры:
//  КомандаПечати  - СтрокаТаблицыЗначений - элемент коллекции КомандыПечати в процедуре ДобавитьКомандыПечати:
//   * УсловияВидимости - Массив - список условий видимости;
//  Реквизит       - Строка                - имя реквизита объекта;
//  Значение       - Произвольный          - значение реквизита объекта;
//  МетодСравнения - ВидСравнения          - вид сравнения значений. Допустимые для использования виды:
//                                           Равно, НеРавно, Больше, БольшеИлиРавно, Меньше, МеньшеИлиРавно, ВСписке, НеВСписке.
//                                           Значение по умолчанию - Равно.
//
Процедура ДобавитьУсловиеВидимостиКоманды(КомандаПечати, Реквизит, Значение, Знач МетодСравнения = Неопределено) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ДобавитьУсловиеВидимостиКоманды(КомандаПечати, Реквизит, Значение, МетодСравнения);
```
</details>

## ЗарегистрироватьНовоеИмяМакета
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Используется при переносе макета (объекта метаданных) печатной формы в другой объект.
// Предназначена для вызова в процедуре заполнения данных обновления (для "отложенного" обработчика).
// Регистрирует новый адрес макета для обработки.
//
// Параметры:
//  ИмяМакета   - Строка - новое имя макета в формате
//                         "Документ.<ИмяДокумента>.<ИмяМакета>"
//                         "Обработка.<ИмяОбработки>.<ИмяМакета>"
//                         "ОбщийМакет.<ИмяМакета>".
//  Параметры - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке.
//
Процедура ЗарегистрироватьНовоеИмяМакета(ИмяМакета, Параметры) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ЗарегистрироватьНовоеИмяМакета(ИмяМакета, Параметры) 
```
</details>

## ПеренестиПользовательскиеМакеты
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Используется при переносе макета (объекта метаданных) печатной формы в другой объект.
// Предназначена для вызова в "отложенном" обработчике обновления.
// Переносит пользовательские данные, относящиеся к макету, на новый адрес.
//
// Параметры:
//  Макеты     - Соответствие из КлючИЗначение - сведения о прежних и новых именах макетов в формате
//                              "Документ.<ИмяДокумента>.<ИмяМакета>"
//                              "Обработка.<ИмяОбработки>.<ИмяМакета>"
//                              "ОбщийМакет.<ИмяМакета>":
//   * Ключ     - Строка - новое имя макета.
//   * Значение - Строка - прежнее имя макета.
//
//  Параметры - Структура - параметры, передаваемые в "отложенный" обработчик обновления.
//
Процедура ПеренестиПользовательскиеМакеты(Макеты, Параметры) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ПеренестиПользовательскиеМакеты(Макеты, Параметры) 
```
</details>

## ЗаполнитьПрофильРедактированиеПечатныхФорм
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Предоставляет дополнительный профиль доступа "Редактирование, отправка по почте, сохранение в файл печатных форм (дополнительно)".
// Предназначена для использования в процедуре ПриЗаполненииПоставляемыхПрофилейГруппДоступа модуля УправлениеДоступомПереопределяемый.
//
// Параметры:
//  ОписанияПрофилей - см. УправлениеДоступомПереопределяемый.ПриЗаполненииПоставляемыхПрофилейГруппДоступа.ОписанияПрофилей
//
Процедура ЗаполнитьПрофильРедактированиеПечатныхФорм(ОписанияПрофилей) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ЗаполнитьПрофильРедактированиеПечатныхФорм(ОписанияПрофилей) 
```
</details>

## ДобавитьОписаниеОбласти
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Добавляет к параметру НаборОбластей новую запись об области.
//
// Параметры:
//   ОбластиМакетаОфисногоДокумента - Массив - набор областей (массив структур) макета офисного документа.
//   ИмяОбласти                     - Строка - имя добавляемой области.
//   ТипОбласти                     - Строка - тип области:
//    ВерхнийКолонтитул;
//    НижнийКолонтитул;
//    Общая;
//    СтрокаТаблицы;
//    Список.
//
// Пример:
//	Функция ОбластиМакетаОфисногоДокумента()
//
//		Области = Новый Структура;
//
//		УправлениеПечатью.ДобавитьОписаниеОбласти(Области, "ВерхнийКолонтитул",	"ВерхнийКолонтитул");
//		УправлениеПечатью.ДобавитьОписаниеОбласти(Области, "НижнийКолонтитул",	"НижнийКолонтитул");
//		УправлениеПечатью.ДобавитьОписаниеОбласти(Области, "Заголовок",			"Общая");
//
//		Возврат Области;
//
//	КонецФункции
//
Процедура ДобавитьОписаниеОбласти(ОбластиМакетаОфисногоДокумента, Знач ИмяОбласти, Знач ТипОбласти) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ДобавитьОписаниеОбласти(ОбластиМакетаОфисногоДокумента, ИмяОбласти, ТипОбласти) 
```
</details>

## МакетыИДанныеОбъектовДляПечати
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Получает за один вызов всю необходимую информацию для печати: данные объектов по макетам, двоичные
// данные макетов, описание областей макетов.
// Для вызова из клиентских модулей печати форм по макетам офисных документов.
//
// Параметры:
//   ИмяМенеджераПечати - Строка - имя для обращения к менеджеру объекта, например "Документ.<Имя документа>".
//   ИменаМакетов       - Строка - имена макетов, по которым будут формироваться печатные формы.
//   СоставДокументов   - Массив - ссылки на объекты информационной базы (должны быть одного типа).
//
// Возвращаемое значение:
//  Соответствие из КлючИЗначение - коллекция ссылок на объекты и их данные:
//   * Ключ - ЛюбаяСсылка - ссылка на объект информационной базы;
//   * Значение - Структура:
//       ** Ключ - Строка - имя макета;
//       ** Значение - Структура - данные объекта.
//
Функция МакетыИДанныеОбъектовДляПечати(Знач ИмяМенеджераПечати, Знач ИменаМакетов, Знач СоставДокументов) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.МакетыИДанныеОбъектовДляПечати(ИмяМенеджераПечати, ИменаМакетов, СоставДокументов) 
```
</details>

## МакетПечатнойФормы
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает макет печатной формы по полному пути к макету.
//
// Если конфигурация рассчитана на несколько языков, в ней могут быть предусмотрены несколько макетов для этих языков:
// - ПФ_DOC_СчетНаОплату_ru
// - ПФ_DOC_СчетНаОплату_en
// - и т.п.
// В этом случае при поиске нужного макета учитывается следующий приоритет:
// 1) на языке, указанном в параметре КодЯзыка,
// 2) на языке конфигурации (ОбщегоНазначения.КодОсновногоЯзыка()),
// 3) без указания языка.
//
// Параметры:
//  ПутьКМакету - Строка - полный путь к макету в формате:
//                         "Документ.<ИмяДокумента>.<ИмяМакета>"
//                         "Обработка.<ИмяОбработки>.<ИмяМакета>"
//                         "ОбщийМакет.<ИмяМакета>".
//  КодЯзыка    - Строка - язык, на котором требуется получить макет.
//                         Состоит из кода языка по ISO 639-1 и, опционально, кода страны по ISO 3166-1, разделенных
//                         символом подчеркивания. Примеры: "en", "en_US", "en_GB", "ru", "ru_RU".
//
// Возвращаемое значение:
//  ТабличныйДокумент, ДвоичныеДанные - макет.
//
Функция МакетПечатнойФормы(ПутьКМакету, Знач КодЯзыка = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.МакетПечатнойФормы(ПутьКМакету, КодЯзыка);
```
</details>

## ИспользуетсяПользовательскийМакет
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Проверяет, использование пользовательского макет вместо поставляемого.
//
// Параметры:
//  ПутьКМакету - Строка - полный путь к макету в формате:
//                         "Документ.<ИмяДокумента>.<ИмяМакета>"
//                         "Обработка.<ИмяОбработки>.<ИмяМакета>"
//                         "ОбщийМакет.<ИмяМакета>".
// Возвращаемое значение:
//  Булево - Истина, если используется пользовательский макет.
//
Функция ИспользуетсяПользовательскийМакет(ПутьКМакету) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.ИспользуетсяПользовательскийМакет(ПутьКМакету) 
```
</details>

## ПоставляемыйМакетИзменен
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Проверяет, был ли изменен поставляемый макет по сравнению с предыдущей версией конфигурации.
//
// Параметры:
//  ПутьКМакету - Строка - полный путь к макету в формате:
//                         "Документ.<ИмяДокумента>.<ИмяМакета>"
//                         "Обработка.<ИмяОбработки>.<ИмяМакета>"
//                         "ОбщийМакет.<ИмяМакета>".
// Возвращаемое значение:
//  Булево - Истина, если макет был изменен.
//
Функция ПоставляемыйМакетИзменен(ПутьКМакету) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.ПоставляемыйМакетИзменен(ПутьКМакету) 
```
</details>

## ОтключитьПользовательскийМакет
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Переключает использование пользовательского макета на макет из конфигурации.
// Применяется в случае, когда макет печатной формы конфигурации и/или алгоритм вывода изменены без поддержки обратной
// совместимости с макетом предыдущей версии конфигурации.
// Для использования в обработчиках обновления.
//
// В общем случае при внесении изменений в макеты и процедуры формирования печатных форм необходимо учитывать
// возможность того, что макеты могут быть изменены пользователями (т.е. взят за основу типовой макет из конфигурации
// и в него добавлен статический текст, изменен шрифт, цвет и другое оформление ячеек, которое не требует программной
// обработки со стороны алгоритмов конфигурации).
//
// Однако в ряде случаев точное следование порядку заполнения форм важнее, чем совместимость с возможными изменениями
// пользователя в макетах предыдущих версий (например, это справедливо для строго регламентированных печатных форм,
// при нарушении порядка их применения контролирующие органы могут накладывать штрафы, отказывать в проведении
// операций, в налоговых вычетах и т.п. - в них недопустимы сокращение количества полей на форме, перекомпоновка).
// Примерами таких форм являются счет-фактура, созданные на его основе УПД и УКД, кассовые ордера (КО-1 и КО-2),
// платежное поручение.
// Поэтому если у пользователя есть измененный макет, то при обновлении его следует отключать, чтобы эти печатные формы
// формировались корректно.
//
//
// Параметры:
//  ПутьКМакету - Строка - полный путь к макету в формате:
//                         "Документ.<ИмяДокумента>.<ИмяМакета>"
//                         "Обработка.<ИмяОбработки>.<ИмяМакета>"
//                         "ОбщийМакет.<ИмяМакета>".
//
Процедура ОтключитьПользовательскийМакет(ПутьКМакету) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ОтключитьПользовательскийМакет(ПутьКМакету) 
```
</details>

## ТабличныйДокументПоДвоичнымДанным
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает табличный документ по двоичным данным табличного документа.
//
// Параметры:
//  ДвоичныеДанныеДокумента - ДвоичныеДанные - двоичные данные табличного документа.
//
// Возвращаемое значение:
//  ТабличныйДокумент - табличный документ.
//
Функция ТабличныйДокументПоДвоичнымДанным(ДвоичныеДанныеДокумента) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.ТабличныйДокументПоДвоичнымДанным(ДвоичныеДанныеДокумента) 
```
</details>

## НапечататьВФайл
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Формирует печатные формы в требуемом формате и записывает в файлы.
// Ограничение: печатные формы, формируемые на клиенте не поддерживаются.
//
// Параметры:
//  КомандыПечати  - Структура
//                 - Массив - команда или несколько команд печати формы,
//                            см. УправлениеПечатью.КомандыПечатиФормы.
//  СписокОбъектов - Массив    - ссылки на печатаемые объекты.
//  НастройкиСохранения - см. УправлениеПечатью.НастройкиСохранения.
//
// Возвращаемое значение:
//  ТаблицаЗначений:
//   * ИмяФайла - Строка - имя файла;
//   * ДвоичныеДанные - ДвоичныеДанные - файл печатной формы.
//
Функция НапечататьВФайл(КомандыПечати, СписокОбъектов, НастройкиСохранения) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.НапечататьВФайл(КомандыПечати, СписокОбъектов, НастройкиСохранения) 
```
</details>

## НастройкиСохранения
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Конструктор параметра НастройкиСохранения функции УправлениеПечатью.НапечататьВФайл.
// Определяет формат и другие настройки записи табличного документа в файл.
//
// Возвращаемое значение:
//  Структура - настройки записи табличного документа в файл:
//   * ФорматыСохранения - Массив - коллекция значений типа ТипФайлаТабличногоДокумента,
//                                  либо значений типа ТипФайлаТабличногоДокумента, преобразованных в строку.
//                                  По умолчанию сохранение выполняется в формате PDF.
//   * УпаковатьВАрхив   - Булево - если установить значение Истина, будет создан один файл архива с файлами указанных форматов.
//   * ПереводитьИменаФайловВТранслит - Булево - если установить Истина, то имена полученных файлов будут на латинице.
//   * ПодписьИПечать    - Булево - если установить Истина и сохраняемый табличный документ поддерживает размещение
//                                  подписей и печатей, то в записанных файлах будут размещены подписи и печати.
//
Функция НастройкиСохранения() Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.НастройкиСохранения() 
```
</details>

## НастройкиПечатиОбъекта
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Определяет тип параметра Настройки в процедурах ПриОпределенииНастроекПечати модулей менеджеров объектов.
// Возвращает настройки печати объекта, подключенного к подсистеме печати.
//
// Параметры:
//  МенеджерОбъекта - СправочникМенеджер, ДокументМенеджер, ОбработкаМенеджер, РегистрСведенийМенеджер - менеджер объекта.
//
// Возвращаемое значение:
//  Структура:
//   * ПриОпределенииПолучателей - Булево - при установке значения Истина будет вызвана процедура модуля менеджера
//                                          объекта ПриОпределенииПолучателей,
//                                          где определяются получатели для отправки печатной формы.
//                                          По умолчанию, значение Ложь.
//   * ПриДобавленииКомандПечати - Булево - при установке значения Истина будет вызвана процедура модуля
//                                          менеджера объекта ДобавитьКомандыПечати, где добавляются команды печати.
//                                          По умолчанию, значение Ложь.
//
Функция НастройкиПечатиОбъекта(МенеджерОбъекта) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.НастройкиПечатиОбъекта(МенеджерОбъекта) 
```
</details>

## НаименованияСформированныхОсновныхПечатныхФорм
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает наименования основных печатных форм, которые были сформированы по объектам.
//
// Параметры:
//  Ссылки   - Массив из ЛюбаяСсылка
//           - ФиксированныйМассив из ЛюбаяСсылка - документы, для которых необходимо получить наименование.
//
// Возвращаемое значение:
//  Соответствие из КлючИЗначение:
//      * Ключ     - ЛюбаяСсылка - документ, для которого получено наименование.
//      * Значение - Строка - наименование сформированной основной печатной формы.
//                 - Неопределено - если документ еще не был напечатан.
//
Функция НаименованияСформированныхОсновныхПечатныхФорм(Ссылки) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.НаименованияСформированныхОсновныхПечатныхФорм(Ссылки) 
```
</details>

## НаименованиеСформированнойОсновнойПечатнойФормы
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Возвращает наименование основной печатной формы, которая была сформирована по объекту.
//
// Параметры:
//  Ссылка - ЛюбаяСсылка - документ, для которого необходимо получить наименование.
//
// Возвращаемое значение:
//  Строка       - наименование сформированной основной печатной формы.
//  Неопределено - если документ еще не был напечатан.
//
Функция НаименованиеСформированнойОсновнойПечатнойФормы(Ссылка) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.НаименованиеСформированнойОсновнойПечатнойФормы(Ссылка) 
```
</details>

## ИнициализироватьПечатнуюФорму
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

////////////////////////////////////////////////////////////////////////////////
// Работа с макетами офисных документов.

//	Секция содержит интерфейсные функции (API), используемые при создании
//	печатных форм основанных на офисных документах. На данный момент поддерживается
//	офисные пакеты, работающие с форматом Office Open XML (MS Office, Open Office, Google Docs).
//
////////////////////////////////////////////////////////////////////////////////
//	Типы используемых данных (определяется конкретными реализациями).
//	СсылкаПечатнаяФорма	- ссылка на печатную форму.
//	СсылкаМакет			- ссылка на макет.
//	Область				- ссылка на область в печатной форме или макете (структура)
//						доопределяется в интерфейсном модуле служебной информацией
//						об области.
//	ОписаниеОбласти		- описание области макета (см. ниже).
//	ДанныеЗаполнения	- либо структура, либо массив структур (для случая
//						списков и таблиц.
////////////////////////////////////////////////////////////////////////////////
//	ОписаниеОбласти - структура, описывающая подготовленные пользователем области макета
//	ключ ИмяОбласти - имя области
//	ключ ТипТипОбласти - 	ВерхнийКолонтитул.
//							НижнийКолонтитул
//							ВерхнийТитульныйКолонтитул
//							НижнийТитульныйКолонтитул
//							ВерхнийЧетныйКолонтитул
//							НижнийЧетныйКолонтитул
//							Общая
//							СтрокаТаблицы
//							Список
//

////////////////////////////////////////////////////////////////////////////////
// Функции инициализации и закрытия ссылок.

// АПК:1382-выкл - Нельзя определять тип в возвращаемом значении.
//
// Конструктор печатной формы в формате офисного документа.
//
// Параметры:
//  УдалитьТипДокумента            - Строка - устаревший параметр, не используется;
//  УдалитьНастройкиСтраницыМакета - Соответствие - устаревший параметр, не используется;
//  Макет                          - см. ИнициализироватьМакетОфисногоДокумента
//
// Возвращаемое значение:
//  Структура - описание создаваемой печатной формы:
//   * ИмяКаталога        - Строка - путь, куда помещается структура каталогов конечного документа для последующей
//                                   сборки контейнера DOCX.
//   * СтруктураДокумента - см. УправлениеПечатьюСлужебный.ИнициализироватьДокумент
//   * Тип - Строка
//   * ПоследняяВыделеннаяОбласть - Структура
//
Функция ИнициализироватьПечатнуюФорму(Знач УдалитьТипДокумента, Знач УдалитьНастройкиСтраницыМакета = Неопределено, Макет = Неопределено) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.ИнициализироватьПечатнуюФорму(УдалитьТипДокумента, УдалитьНастройкиСтраницыМакета, Макет);
```
</details>

## ИнициализироватьМакетОфисногоДокумента
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl
// АПК:1382-вкл

// Подготавливает макет для использования в процедурах формирования печатной формы.
//
// Параметры:
//  ДвоичныеДанныеМакета - ДвоичныеДанные - двоичные данные макета;
//  УдалитьТипМакета     - Строка - устаревший параметр, не используется;
//  УдалитьИмяМакета     - Строка - устаревший параметр, не используется.
//
// Возвращаемое значение:
//  Структура:
//   * ИмяКаталога        - Строка    - путь, куда распаковывается контейнер DOCX шаблона для дальнейшего анализа;
//   * СтруктураДокумента - Структура - информация по областям, разделам и колонтитулам, входящих в шаблон.
//
Функция ИнициализироватьМакетОфисногоДокумента(ДвоичныеДанныеМакета, Знач УдалитьТипМакета, Знач УдалитьИмяМакета = "") Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.ИнициализироватьМакетОфисногоДокумента(ДвоичныеДанныеМакета, УдалитьТипМакета, УдалитьИмяМакета);
```
</details>

## ОчиститьСсылки
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl


// Удаляет временные файлы, образовавшиеся после раскрытия xml-структуры макета.
// Необходимо вызывать каждый раз после завершения формирования макета и печатной формы,
// а также в случае аварийного завершения формирования.
//
// Параметры:
//  ПечатнаяФорма            - см. УправлениеПечатью.ИнициализироватьПечатнуюФорму
//  УдалитьЗакрытьПриложение - Булево    - устаревший параметр, не используется.
//
Процедура ОчиститьСсылки(ПечатнаяФорма, Знач УдалитьЗакрытьПриложение = Истина) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ОчиститьСсылки(ПечатнаяФорма, УдалитьЗакрытьПриложение);
```
</details>

## СформироватьДокумент
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Формирует файл выходной печатной формы и помещает его в хранилище.
// Необходимо вызывать после помещения в структуру печатной формы всех необходимых областей.
//
// Параметры:
//  ПечатнаяФорма - см. УправлениеПечатью.ИнициализироватьПечатнуюФорму.
//
// Возвращаемое значение:
//  Строка - адрес хранилища, куда помещается сформированный файл.
//
Функция СформироватьДокумент(Знач ПечатнаяФорма) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.СформироватьДокумент(ПечатнаяФорма) 
```
</details>

## ОбластьМакета
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

////////////////////////////////////////////////////////////////////////////////
// Функции получения областей из макета, вывода в печатную форму областей макета
// и заполнение параметров в них.

// Получает область из макета печатной формы.
//
// Параметры:
//   СсылкаНаМакет   - Структура - макет печатной формы.
//   ОписаниеОбласти - Структура:
//    * ИмяОбласти - Строка - имя области;
//    * ТипТипОбласти - Строка - тип области:
//      "ВерхнийКолонтитул", "НижнийКолонтитул",
//      "ВерхнийТитульныйКолонтитул", "НижнийТитульныйКолонтитул",
//      "ВерхнийЧетныйКолонтитул", "НижнийЧетныйКолонтитул",
//      "Общая",
//      "СтрокаТаблицы",
//      "Список".
//
// Возвращаемое значение:
//  Структура - область макета.
//
Функция ОбластьМакета(СсылкаНаМакет, ОписаниеОбласти) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.ОбластьМакета(СсылкаНаМакет, ОписаниеОбласти) 
```
</details>

## ПрисоединитьОбласть
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Присоединяет область в печатную форму из макета.
// Применяется при одиночном выводе области.
//
// Параметры:
//  ПечатнаяФорма - см. УправлениеПечатью.ИнициализироватьПечатнуюФорму.
//  ОбластьМакета - см. УправлениеПечатью.ОбластьМакета.
//  ПереходНаСледующуюСтроку - Булево - Истина, если требуется вставить разрыв после вывода области.
//
Процедура ПрисоединитьОбласть(ПечатнаяФорма, ОбластьМакета, Знач ПереходНаСледующуюСтроку = Ложь) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ПрисоединитьОбласть(ПечатнаяФорма, ОбластьМакета, ПереходНаСледующуюСтроку);
```
</details>

## ЗаполнитьПараметры
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Заполняет параметры области печатной формы.
//
// Параметры:
//  ПечатнаяФорма - Структура - область печатной формы либо сама печатная форма.
//  Данные - Структура - данные заполнения.
//
Процедура ЗаполнитьПараметры(ПечатнаяФорма, Данные) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ЗаполнитьПараметры(ПечатнаяФорма, Данные) 
```
</details>

## ПрисоединитьОбластьИЗаполнитьПараметры
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Добавляет область в печатную форму из макета, при этом заменяя параметры в области значениями из данных объекта.
// Применяется при одиночном выводе области.
//
// Параметры:
//  ПечатнаяФорма - см. УправлениеПечатью.ИнициализироватьПечатнуюФорму.
//  ОбластьМакета - см. УправлениеПечатью.ОбластьМакета.
//  Данные - Структура - данные заполнения.
//  ПереходНаСледующуюСтроку - Булево - Истина, если требуется вставить разрыв после вывода области.
//
Процедура ПрисоединитьОбластьИЗаполнитьПараметры(ПечатнаяФорма, ОбластьМакета, Данные, Знач ПереходНаСледующуюСтроку = Ложь) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ПрисоединитьОбластьИЗаполнитьПараметры(ПечатнаяФорма, ОбластьМакета, Данные, ПереходНаСледующуюСтроку);
```
</details>

## ПрисоединитьИЗаполнитьКоллекцию
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Добавляет область в печатную форму из макета, при этом заменяя
// параметры в области значениями из данных объекта.
// Применяется при одиночном выводе области.
//
// Параметры:
//  ПечатнаяФорма - см. УправлениеПечатью.ИнициализироватьПечатнуюФорму.
//  ОбластьМакета - см. УправлениеПечатью.ОбластьМакета.
//  Данные - Массив - коллекция элементов типа Структура - данные объекта.
//  ПереходНаСледСтроку - Булево - Истина, если требуется вставить разрыв после вывода области.
//
Процедура ПрисоединитьИЗаполнитьКоллекцию(ПечатнаяФорма, ОбластьМакета, Данные, Знач ПереходНаСледСтроку = Ложь) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ПрисоединитьИЗаполнитьКоллекцию(ПечатнаяФорма, ОбластьМакета, Данные, ПереходНаСледСтроку);
```
</details>

## ВставитьРазрывНаНовуюСтроку
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Вставляет разрыв между строками в виде символа перевода строки.
//
// Параметры:
//  ПечатнаяФорма - см. УправлениеПечатью.ИнициализироватьПечатнуюФорму.
//
Процедура ВставитьРазрывНаНовуюСтроку(ПечатнаяФорма) Экспорт
```

Пример вызова
```bsl
УправлениеПечатью.ВставитьРазрывНаНовуюСтроку(ПечатнаяФорма) 
```
</details>

## ФорматнаяСтрокаУФЭБС
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Локализация

// Устарела. Следует использовать УправлениеПечатьюРФ.ФорматнаяСтрокаУФЭБС.
//
// Формирует форматную строку согласно "Унифицированному формату электронных банковских сообщений" для ее отображения в
// виде QR-кода.
//
// Параметры:
//  ДанныеДокумента  - Структура - содержит значения полей документа.
//    Данные документа будут закодированы согласно стандарту
//    "Стандарты финансовых операций. Символы двумерного штрихового кода для осуществления платежей физических лиц".
//    ДанныеДокумента должны содержать информацию в полях, описанных ниже.
//    Обязательные поля структуры:
//     * ТекстПолучателя             - Строка - наименование получателя платежа, макс. 160 символов;
//     * НомерСчетаПолучателя        - Строка - номер счета получателя платежа, макс. 20 символов;
//     * НаименованиеБанкаПолучателя - Строка - наименование банка получателя платежа, макс. 45 символов;
//     * БИКБанкаПолучателя          - Строка - макс. 9 символов;
//     * СчетБанкаПолучателя         - Строка - номер к/с банка получателя платежа, макс. 20 символов;
//    Дополнительные поля структуры:
//     * СуммаЧислом         - Строка - сумма платежа, в рублях, макс. 16 символов.
//     * НазначениеПлатежа   - Строка - наименование платежа (назначение), макс. 210 символов;
//     * ИННПолучателя       - Строка - ИНН получателя платежа, макс. 12 символов;
//     * ИННПлательщика      - Строка - ИНН плательщика, макс. 12 символов;
//     * СтатусСоставителя   - Строка - статус составителя платежного документа, макс. 2 символа;
//     * КПППолучателя       - Строка - КПП получателя платежа, макс. 9 символов.
//     * КодБК               - Строка - КБК, макс. 20 символов;
//     * КодОКТМО            - Строка - ОКТМО, макс. 11 символов;
//     * ПоказательОснования - Строка - основание налогового платежа, макс. 2 символа;
//     * ПоказательПериода   - Строка - налоговый период, макс. 10 символов;
//     * ПоказательНомера    - Строка - номер документа, макс. 15 символов;
//     * ПоказательДаты      - Строка - дата документа, макс. 10 символов.
//     * ПоказательТипа      - Строка - тип платежа, макс. 2 символа.
//    Прочие дополнительные поля:
//     * ФамилияПлательщика               - Строка - фамилия плательщика.
//     * ИмяПлательщика                   - Строка - имя плательщика.
//     * ОтчествоПлательщика              - Строка - отчество плательщика.
//     * АдресПлательщика                 - Строка - адрес плательщика.
//     * ЛицевойСчетБюджетногоПолучателя  - Строка - лицевой счет бюджетного получателя.
//     * ИндексПлатежногоДокумента        - Строка - индекс платежного документа.
//     * СНИЛС                            - Строка - № лицевого счета в системе персонифицированного учета в ПФР - СНИЛС.
//     * НомерДоговора                    - Строка - номер договора.
//     * НомерЛицевогоСчетаПлательщика    - Строка - номер лицевого счета плательщика в организации (в системе учета ПУ).
//     * НомерКвартиры                    - Строка - номер квартиры.
//     * НомерТелефона                    - Строка - номер телефона.
//     * ВидПлательщика                   - Строка - вид ДУЛ плательщика.
//     * НомерПлательщик                  - Строка - номер ДУЛ плательщика.
//     * ФИОРебенка                       - Строка - ФИО ребенка/учащегося.
//     * ДатаРождения                     - Строка - дата рождения.
//     * СрокПлатежа                      - Строка - срок платежа/дата выставления счета.
//     * ПериодОплаты                     - Строка - период оплаты.
//     * ВидПлатежа                       - Строка - вид платежа.
//     * КодУслуги                        - Строка - код услуги/название прибора учета.
//     * НомерПрибораУчета                - Строка - номер прибора учета.
//     * ПоказаниеПрибораУчета            - Строка - показание прибора учета.
//     * НомерИзвещения                   - Строка - номер извещения, начисления, счета.
//     * ДатаИзвещения                    - Строка - дата извещения/начисления/счета/постановления (для ГИБДД).
//     * НомерУчреждения                  - Строка - номер учреждения (образовательного, медицинского).
//     * НомерГруппы                      - Строка - номер группы детсада/класса школы.
//     * ФИОПреподавателя                 - Строка - ФИО преподавателя, специалиста, оказывающего услугу.
//     * СуммаСтраховки                   - Строка - сумма страховки/дополнительной услуги/Сумма пени (в копейках).
//     * НомерПостановления               - Строка - номер постановления (для ГИБДД).
//     * НомерИсполнительногоПроизводства - Строка - номер исполнительного производства.
//     * КодВидаПлатежа                   - Строка - код вида платежа (например, для платежей в адрес Росреестра).
//     * ИдентификаторНачисления          - Строка - уникальный идентификатор начисления.
//     * ТехническийКод                   - Строка - технический код, рекомендуемый для заполнения поставщиком услуг.
//                                          Может использоваться принимающей организацией для вызова соответствующей
//                                          обрабатывающей ИТ-системы.
//                                          Перечень значений кода представлен ниже.
//
//       Код назначения     Наименование назначения платежа
//       платежа.
//
//          01              Мобильная связь, стационарный телефон.
//          02              Коммунальные услуги, ЖКХ.
//          03              ГИБДД, налоги, пошлины, бюджетные платежи.
//          04              Охранные услуги
//          05              Услуги, оказываемые УФМС.
//          06              ПФР
//          07              Погашение кредитов
//          08              Образовательные учреждения.
//          09              Интернет и ТВ
//          10              Электронные деньги
//          11              Отдых и путешествия.
//          12              Инвестиции и страхование.
//          13              Спорт и здоровье
//          14              Благотворительные и общественные организации.
//          15              Прочие услуги.
//
// Возвращаемое значение:
//   Строка - строка данных в формате УФЭБС.
//
Функция ФорматнаяСтрокаУФЭБС(ДанныеДокумента) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.ФорматнаяСтрокаУФЭБС(ДанныеДокумента) 
```
</details>

## ДанныеQRКода
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Конец Локализация

// Устарела. Следует использовать ГенерацияШтрихкода.ДанныеQRКода
// или ГенерацияШтрихкода.ИзображениеШтрихкода.
//
// Возвращает двоичные данные для формирования QR-кода.
//
// Параметры:
//  QRСтрока         - Строка - данные, которые необходимо разместить в QR-коде.
//
//  УровеньКоррекции - Число - уровень погрешности изображения, при котором данный QR-код все еще возможно 100%
//                             распознать.
//                     Параметр должен иметь тип целого и принимать одно из 4 допустимых значений:
//                     0 (7 % погрешности), 1 (15 % погрешности), 2 (25 % погрешности), 3 (35 % погрешности).
//
//  Размер           - Число - определяет длину стороны выходного изображения в пикселях.
//                     Если минимально возможный размер изображения больше этого параметра - код сформирован не будет.
//
// Возвращаемое значение:
//  ДвоичныеДанные  - буфер, содержащий байты PNG-изображения QR-кода.
//
// Пример:
//
//  // Выводим на печать QR-код, содержащий в себе информацию зашифрованную по УФЭБС.
//
//  QRСтрока = УправлениеПечатью.ФорматнаяСтрокаУФЭБС(РеквизитыПлатежа);
//  ТекстОшибки = "";
//  ДанныеQRКода = УправлениеПечатью.ДанныеQRКода(QRСтрока, 0, 190, ТекстОшибки);
//  Если Не ПустаяСтрока(ТекстОшибки)
//      ОбщегоНазначения.СообщитьПользователю(ТекстОшибки);
//  КонецЕсли;
//
//  КартинкаQRКода = Новый Картинка(ДанныеQRКода);
//  ОбластьМакета.Рисунки.QRКод.Картинка = КартинкаQRКода;
//
Функция ДанныеQRКода(QRСтрока, УровеньКоррекции, Размер) Экспорт
```

Пример вызова
```bsl
Результат = УправлениеПечатью.ДанныеQRКода(QRСтрока, УровеньКоррекции, Размер) 
```
</details>

---

© 2024, **ООО 1С-Софт**  
Все права защищены. Эта программа и сопроводительные материалы предоставляются  
в соответствии с условиями лицензии [Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/legalcode).

---
