Перейти к содержимому

Экспорт в файл

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

  • файл формата .pdwx - это формат конструктора PrintWizard. Выгрузка в данном формате может быть использована для:
    • обмена макетами печатных форм
    • сравнения макетов печатных форм между собой
    • печати при помощи обработки PrintWizard: Исполнитель
  • файл формата .epf - это формат внешней обработки. Внешняя обработка может быть выгружена в двух вариантах:
    • полностью автономная (с вложенным PrintWizard: Исполнитель)
    • только с печатными формами внутри. При этом PrintWizard: Исполнитель должен входить в состав конфигурации, расширения или добавлен как внешняя обработка

Внешние печатные формы выполнены по требованиям БСП. Могут быть открыты самостоятельно или подключены через дополнительные отчеты и обработки.

  • файл формата .cfe - это формат расширения. Созданное расширение содержит PrintWizard: Исполнитель, а также все печатные формы, согласно настройкам выгрузки.

Один из основных сценариев разработки, который может быть организован с использованием экспорта в виде расширения:

  • создание и доработка печатных форм выполняется на копии базы командой разработчиков;
  • готовые макеты переносятся на живую базу по мере подготовки обновлений с определенной периодичностью.

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

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

Рассмотрим процесс создания настройки сборки расширения и экспорт в файл. Сначала необходимо настроить сборку. Перейдем в справочник “Сборки (PrintWizard)”, создадим новый элемент и заполним данные формы:

Пример настройки сборки обработки

Рассмотрим реквизиты формы:

Имя реквизитаОписаниеРасширениеОбработка
Результат сборкиВыбор результата сборки (внешняя обработка или расширение)ДаДа
НеиспользуетсяПризнак, что настройка не используется более. Неиспользуемые настройки нельзя выбрать при сборкеДаДа
Способ сборкиЧем собирать файл этой поставки: утилитой ibcmd или конфигуратором, см. Способ сборки. Пустое значение «Как в настройках пользователя» - способ берется из настроек пользователя в форме запуска сборки. Заполненное значение переопределяет способ пользователяДаДа
Без встроенного исполнителяСобрать обработку только с печатными формами, без PrintWizard: Исполнитель. Для печати исполнитель должен входить в состав конфигурации, расширения или быть подключен как внешняя обработка. Реквизит виден только при результате сборки «Обработка (.epf)»НетДа
ИмяИмя для установки в расширение / обработкуДаДа
СинонимСиноним для установки в расширение / обработкуДаДа
РедакцияНомер редакции сборки. Нумерация версий производится автоматически по шаблону [Редакция].[Версия]. Версии нумеруются автоматически согласно истории записанных версийДаДа
ПоставщикНаименование поставщика для установки в расширениеДаНет
Все заблокированныеАвтоматически добавлять все заблокированные макеты. Ручное изменение состава макетов недоступноДаДа
Только заблокированныеДобавлять в сборку только заблокированные макеты, из числа выбранных макетов в настройкеДаДа
Только с командамиДобавлять в сборку только макеты с включенными командами для печати, из числа выбранных макетов в настройкеДаДа

Реквизиты «Способ сборки» и «Без встроенного исполнителя» есть в настройке сборки начиная с версии 2026.3.23. У настроек, созданных раньше, способ не задан, а признак «Без встроенного исполнителя» снят: по ним, как и прежде, собирается автономная обработка.

При выборе признака “Все заблокированные” редактирование состава макетов недоступно. В таком случае, в обработку (или расширение) попадут все заблокированные макеты. Макеты указанные в сборке не обязательно должны быть заблокированы или иметь команды печати. Если не установлены ограничивающие признаки “Только заблокированные” и “Только с командами” они будут добавлены в сборку. К тому же они будут добавлены в команды печати. Поэтому следует внимательно относится к установленным настройкам.

Все обработки экспортируются в расширение по следующему принципу:

  • обработки соответствуют объектам метаданных, все макеты объекта включены в одну обработку;
  • если макет используется в нескольких объектах метаданных: макет будет добавлен только в одну обработку, в другой обработке он будет вызываться из первой обработки;
  • команды печати добавляются автоматически;
  • обработка имеет форму, где можно выбрать ссылку и макет для печати + выполнить печать;
  • каждая обработка может быть сохранена во внешний файл и использована как внешняя печатная форма. Модуль объекта имеет все необходимые методы.

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

Какую обработку собирать по сохраненной настройке - автономную или без исполнителя, - начиная с версии 2026.3.23 определяет признак «Без встроенного исполнителя» настройки сборки: снят - автономная обработка со встроенным PrintWizard: Исполнитель, установлен - обработка только с печатными формами.

Настройки сборки обработки соответствуют расширению. При этом в результате, все макеты будут включены в одну обработку, независимо от объектов метаданных (для печати). Команды будут добавлены согласно настройкам макетов конструктора.

Запустить процесс подготовки и сборки расширения или обработки можно несколькими путями:

  • из формы справочника “Макеты” (внешняя печатная форма по указанному макету)
  • из формы справочника “Сборки” (согласно текущей настройке сборки)
  • из основного меню PrintWizard (согласно пункту меню)

При этом будет открыта форма запуска сборки:

Форма запуска сборки расширения

Рассмотрим подробнее реквизиты на форме:

Имя реквизитаОписаниеОбластьКомментарий
Вариант сборкиВыбор варианта сборки: расширение или внешняя печатная формаcfe, epf
Использовать сборкуПризнак использования настройки сборкиcfe, epf
Настройка сборкиЗначение настройки для применения в сборкеcfe, epfИспользовать сборку
СохранитьСохранить результат сборки в историю версий по указанной настройкеcfe, epfИспользовать сборку
ИмяИмя для установки в расширение / обработкуcfe, epf
СинонимСиноним для установки в расширение / обработкуcfe, epf
ВерсияВерсия для установки в расширение / обработкуcfe, epf

Начиная с версии 2026.3.23, пока выбрана настройка сборки, поставку в форме описывает настройка:

  • вариант сборки, имя, синоним, версия и свойства расширения доступны только для просмотра;
  • макеты в форму не добавляются и из нее не удаляются;
  • доступными остаются отметки команд и способ сборки (на странице “Настройки” в режиме отладки);
  • выбор другой настройки заменяет макеты, объекты и команды формы составом этой настройки, а не дополняет их.

Так версия, сохраненная в историю по настройке, всегда соответствует самой настройке. Чтобы собрать поставку разово с правками, снимите “Использовать сборку”: поля останутся заполненными и станут доступны для изменения.

На странице Обработка (или Расширение) доступен выбор макетов для экспорта в файл.

  • для обработки в правой части форма разделена на две табличные части: Объекты метаданных и Команды;
  • для расширения в правой части форма содержит дерево: Объекты метаданных > Команды.

У обработки есть режим отладки (кнопка “Режим отладки” на командной панели формы). В данном режиме доступна закладка “Настройки”: на ней выбирается способ сборки и указывается каталог сохранения временных файлов (Каталог отладки). Закладка есть только у обработки и расширения: PrintWizard: Исполнитель выгружается без сборки, и настраивать для него нечего.

Страница “Настройки” в режиме отладки: сборка расширения, способ «Автоматически»

В каталоге отладки после сборки остаются:

  • данные исходного расширения или шаблона обработки в XML (каталоги cfe_old или epf_old соответственно);
  • данные готового расширения или обработки в XML (каталоги cfe_new или epf_new соответственно);
  • файлы исходного и готового расширения или обработки (.cfe или .epf соответственно);
  • при сборке утилитой - файлы с ее выводом (ibcmd_*_out.txt и ibcmd_*_err.txt) и каталог данных утилиты ibcmd_data. Служебной информационной базы при сборке утилитой нет;
  • при сборке расширения конфигуратором - служебная информационная база (каталог db или каталог из реквизита “Каталог ИБ”).

Рассмотрим подробнее реквизиты на странице “Настройки”. Состав страницы зависит от выбранного способа сборки:

Имя реквизитаОписаниеКогда виден
Способ сборкиАвтоматически, Утилита ibcmd или Конфигуратор, см. Способ сборкиВсегда
ДирективаГде выполняется подготовка и сборка: на сервере или на клиенте. На этой же стороне ищутся утилита и конфигураторВсегда
Файл программыПуть к файлу программы 1С:Предприятие (1cv8). Нужен только для сборки конфигураторомСпособ не «Утилита ibcmd»
Файл утилитыПуть к файлу ibcmd на стороне сборки. Пусто - утилита из каталога платформыСпособ не «Конфигуратор»
Потоки выгрузкиЧисло потоков выгрузки в XML. Пусто или 0 - один поток: с несколькими потоками выгрузка расширения на некоторых версиях платформы завершается ошибкойСпособ не «Конфигуратор»
Кодировка вывода утилитыКодировка, в которой вывод утилиты читается в журнал сборки; в списке - UTF-8, CP866 и windows-1251. Пусто - UTF-8. Менять, если вывод утилиты в журнале искаженСпособ не «Конфигуратор»
Дополнительные ключи выгрузкиДополнительные ключи команды ibcmd infobase config export через пробел, значение без пробелов: --ключ=значениеСпособ не «Конфигуратор»
Дополнительные ключи сборкиДополнительные ключи команды ibcmd infobase config import в том же форматеСпособ не «Конфигуратор»
Каталог отладкиПуть к каталогу сборки в режиме отладкиВсегда
Каталог ИБПуть к каталогу служебной файловой ИБ, в которой конфигуратор собирает расширение. Если каталог не указан, он создается автоматическиРасширение, способ «Конфигуратор»
АвторизацияПризнак необходимости авторизации в служебной ИБРасширение, способ «Конфигуратор»
ИмяИмя пользователя служебной ИБРасширение, способ «Конфигуратор», установлен признак «Авторизация»
ПарольПароль пользователя служебной ИБРасширение, способ «Конфигуратор», установлен признак «Авторизация»

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

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

Журнал событий, выполненных в процессе подготовки и сборки: дерево событий с колонками “Имя”, “Комментарий” и “Время”, число событий указано в заголовке закладки.

Начиная с версии 2026.3.23 в журнале видно, чем собран файл:

  • событие “ВыбратьСпособСборки” - выбранный способ сборки и откуда он взят: из формы, из настройки сборки или из настроек пользователя. Для утилиты указываются путь к файлу и ее версия, при переходе на конфигуратор - причина: утилита не найдена по пути поиска, не сообщила свою версию или ее версия ниже 8.3.23;
  • событие “КомандаУтилиты” - каждый запуск утилиты. При успешном выполнении в комментарии - строка запуска и число предупреждений; предупреждения ошибкой не считаются. При ошибке в комментарий события и в текст ошибки сборки попадают код возврата, вывод утилиты и строка запуска.

Журнал сборки расширения утилитой: способ взят из настройки сборки, команда утилиты собирает файл из XML

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

Всего в результате выполнения обработки можно получить следующие файлы:

  • Автономная внешняя печатная форма (.epf) - внешняя печатная форма согласно настройкам из формы. Особенность печатной формы: она может быть добавлена в конфигурацию самостоятельно и не требует наличия никаких дополнительных объектов конструктора;
  • Внешняя печатная форма без исполнителя (.epf) - внешняя печатная форма согласно настройкам из формы. Особенность печатной формы: она требует наличия PrintWizard: Исполнитель в составе конфигурации (или расширении) или в дополнительных отчетах и обработках;
  • расширение с печатными формами (.cfe) - расширение с печатными формами, а также PrintWizard: Исполнитель в составе.

Обработка и расширение с печатными формами собираются одним из двух способов:

  • утилитой ibcmd из поставки платформы 1С:Предприятия - установленный конфигуратор для этого не нужен;
  • конфигуратором в пакетном режиме - как в прежних версиях.

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

Способ выбирается реквизитом “Способ сборки”:

ЗначениеКак собирается файл
АвтоматическиУтилитой, если она найдена и ее версия не ниже 8.3.23; иначе конфигуратором. Значение по умолчанию
Утилита ibcmdТолько утилитой. Если утилита не найдена или ее версия ниже 8.3.23, сборка завершается ошибкой с причиной и подсказкой выбрать способ «Конфигуратор»
КонфигураторТолько конфигуратором, как в прежних версиях

Какой способ выбран и почему, записывается в журнал сборки. Если утилита найдена, но завершилась с ошибкой, способ «Автоматически» не пересобирает файл конфигуратором: ошибка видна в журнале, а способ можно сменить и запустить сборку еще раз.

Отдельной установки у утилиты ibcmd нет: она устанавливается вместе с серверными компонентами платформы.

  • Windows - компонент «Сервер 1С:Предприятия». Утилита есть на сервере и на рабочем месте, где установлен этот компонент; в поставке тонкого клиента ее нет. 32-разрядная Windows не поддерживается.
  • Linux - серверные компоненты установщика платформы.
  • macOS - входит в клиентскую установку платформы.

Утилита ищется там, где идет сборка: на сервере или на клиенте (реквизит “Директива” на странице “Настройки”). По умолчанию - в каталоге платформы 1С:Предприятия на этой стороне; другой файл задается реквизитом “Файл утилиты”. Если на стороне сборки утилиты нет - например, на рабочем месте Windows без компонента «Сервер 1С:Предприятия» или с платформой старше 8.3.23, - способ «Автоматически» собирает конфигуратором, как раньше.

Способ сборки задается в двух местах:

  • в настройке сборки (справочник “Сборки (PrintWizard)”) - для конкретной поставки. Значение «Как в настройках пользователя» означает, что способ берется из настроек пользователя;
  • в настройках пользователя - на странице “Настройки” формы запуска сборки в режиме отладки.

Способ из настройки сборки переопределяет способ пользователя. В режиме отладки форма показывает итоговый способ, и его можно сменить перед сборкой - например, выбрать «Конфигуратор», если утилита не справилась со сборкой. Вне режима отладки способ в форме не виден: сборка идет способом из настройки сборки, а если в ней способ не задан - способом из настроек пользователя.

Файл с расширением .xml (также .pdwx) используется для хранения и обмена макетами между различными информационными базами.

Технически файл .pdwx является архивом, внутри которого хранится файл .xml с сериализованными данными.

Для экспорта в файл *.pdwx перейдите в форму списка или форму элемента макета, в командной панели есть меню “Экспорт / Импорт” с командами выгрузки и загрузки макета.