Печатные формы в 1С:Управление торговлей 11 (11.4, 11.5) — это неотъемлемая часть документации, которая определяет, как будут выглядеть счета, накладные, акты и другие выходные документы. Стандартные шаблоны не всегда соответствуют бизнес-требованиям: компании добавляют логотипы, изменяют структуру таблиц, корректируют реквизиты или адаптируют формы под специфические нормативные акты. В этой статье разберём все способы модификации печатных форм — от простых настроек через конфигуратор до сложных доработок с использованием языка 1С.
Важно понимать, что процесс изменения зависит от версии платформы (8.3.20+ рекомендуется для 11.5) и типа формы:
- Внешние печатные формы (файлы .erf или .epf) — гибкие, но требуют ручной привязки.
- Встроенные формы — редактируются в конфигураторе, но изменения могут сброситься при обновлении.
- Управляемые формы (для тонкого клиента) — настраиваются через механизм КомпоновкаДанных.
Если вы никогда не работали с печатными формами, начните с внешних — они безопаснее для новичков. Опытные разработчики могут сразу переходить к изменению встроенных шаблонов или созданию новых через Конструктор печатных форм.
⚠️ Внимание: Перед любыми изменениями сделайте резервную копию базы (через Администрирование → Выгрузка/загрузка данных или 1С:Предприятие → Все функции → Резервное копирование). Ошибки в печатных формах могут привести к краху сеанса или потере данных при формировании документов.
1. Подготовка к изменению печатной формы
Прежде чем приступать к редактированию, определитесь с целями модификации:
- Добавление логотипа или реквизитов компании?
- Изменение структуры таблицы (например, объединение колонок)?
- Корректировка формул расчёта (НДС, скидки, итоги)?
- Адаптация под новый бланк (например, УПД вместо ТОРГ-12)?
От этого зависит выбор инструмента. Например, для добавления логотипа достаточно внешней печатной формы, а для изменения логики расчётов потребуется редактирование встроенного модуля.
Шаг 1. Найдите исходную форму:
- Откройте документ (например, Реализация товаров и услуг).
- Нажмите Печать → Настроить форму (или Ещё → Изменить форму в новых версиях).
- В списке выберите нужную форму (например, Торговая накладная (ТОРГ-12)) и посмотрите её название — оно пригодится для поиска в конфигураторе.
Шаг 2. Проверьте права доступа:
- Для редактирования встроенных форм нужен доступ в конфигуратор (роль Администратор или Конфигуратор).
- Для внешних форм достаточно прав на Администрирование печатных форм (настраивается в НСИ и администрирование → Настройки пользователей и прав).
Определить цель модификации (дизайн/логика/реквизиты)|Найти название формы в интерфейсе 1С|Сделать резервную копию базы|Проверить права доступа (конфигуратор или администрирование)|Уточнить версию платформы (8.3.20+ для 11.5)-->
2. Способ 1: Редактирование через внешнюю печатную форму (.erf)
Внешние формы — самый безопасный способ, так как они не затрагивают конфигурацию. Подходит для добавления логотипов, изменения шрифтов, перестановки полей.
Инструкция:
Скачайте шаблон внешней формы для вашей версии 1С (например, с сайта Инфостарт или 1С:ИТС). Для УТ 11.4 подойдёт форма в формате
.erf, для 11.5 —.epf.Откройте форму в Конфигураторе через
Файл → Открыть.Внесите изменения в дизайн (например, добавьте картинку через
Вставить → Рисунокили измените шрифт в свойствах текстового поля).Сохраните файл и загрузите его в 1С через
НСИ и администрирование → Печатные формы → Внешние печатные формы.Привяжите форму к документу в настройках (
Действия → Настроить привязку).
Пример кода для добавления логотипа (в модуле внешней формы):
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Картинка = Новый Картинка(ПутьКФайлуЛоготипа);
ЭлементыФормы.Логотип.Картинка = Картинка;
КонецПроцедуры
⚠️ Внимание: Если логотип не отображается, проверьте путь к файлу (должен быть доступен на сервере 1С) и формат изображения (рекомендуется .png или .jpg с разрешением не выше 300 dpi).
Для ускорения работы сохраните часто используемые внешние формы в отдельную папку на сервере и настройте к ней доступ через Администрирование → Общие настройки → Пути к файлам.
3. Способ 2: Изменение встроенной печатной формы в конфигураторе
Этот метод подходит для глубоких доработок, но требует осторожности: ошибки могут привести к неработоспособности формы после обновления конфигурации.
Пошаговая инструкция:
Откройте конфигуратор (
1С:Предприятие → Конфигуратор).Найдите объект конфигурации:
- Для документов:
Объекты → Документы → [ВашДокумент] → Печатные формы.- Для справочников:
Объекты → Справочники → [ВашСправочник] → Печатные формы.Выберите нужную форму (например,
ТорговаяНакладная) и откройте её в Конструкторе печатных форм.Внесите изменения:
- Перетащите поля из панели
Данныев макет.- Измените свойства элементов (шрифт, выравнивание, границы).
- Добавьте новые табличные части через
Вставить → Таблица.Сохраните форму и обновите конфигурацию базы (
Конфигурация → Обновить конфигурацию базы данных).
Типовые ошибки и решения:
- 🔴 Форма не обновляется после изменений → Проверьте, что обновили конфигурацию базы и перезапустили сеанс 1С.
- 🔴 Исчезли стандартные реквизиты → Верните удалённые поля из панели
Данныеили откатите изменения черезCtrl+Z. - 🔴 Краш при открытии формы → Удалите временные файлы 1С (папка
%TEMP%\1C) и перезапустите программу.
Как вернуть стандартную форму после неудачного редактирования?
Если после изменений форма перестала работать, восстановите её через Конфигурация → Поддержка → Настройка поддержки. Выберите объект формы и нажмите Восстановить из шаблона. После этого обновите конфигурацию базы.
4. Способ 3: Использование конструктора печатных форм
В 1С:УТ 11.5 появился удобный Конструктор печатных форм, который позволяет настраивать макеты без глубоких знаний программирования. Он поддерживает:
- Перетаскивание полей (drag-and-drop). - Группировку данных. - Условное форматирование (например, выделение цветом строк с отрицательным остатком). Как открыть конструктор:
Пример настройки:
- Добавьте новую колонку в таблицу: перетащите поле - Измените порядок колонок: перетащите - Настройте условное форматирование: выделите колонку ⚠️ Внимание: Изменения, сделанные через конструктор, сохраняются в пользовательских настройках и могут сброситься при обновлении платформы. Для постоянных изменений экспортируйте форму в Если стандартные инструменты не покрывают ваши нужды, можно изменить форму программно. Например, чтобы добавить динамическую подпись или расчёт дополнительных полей.
Пример 1. Добавление новой колонки в таблицу:
// Добавляем колонку"Вес нетто" в таблицу товаров Колонка = ТаблицаТоваров.Колонки.Добавить("ВесНетто"); Колонка.Заголовок ="Вес нетто, кг"; Колонка.ТипЗначения = Новый Тип("Число"); // Заполняем данными Для Каждого Строка Из Документ.Товары Цикл Вес = Строка.Количество * СпрТовары.НайтиПоНаименованию(Строка.Номенклатура).Вес; ТаблицаТоваров.Добавить(Строка.Номенклатура,..., Вес); КонецЦикла; КонецПроцедуры
Заказ покупателя).Печать → Изменить форму (или Ещё → Настроить печатную форму).Конструктор печатных форм.Артикул из панели Доступные поля в заголовок таблицы.Цена перед Количество.Остаток, нажмите Условное форматирование и добавьте правило"Если < 0, то красный цвет текста"..erf и загрузите как внешнюю.
Способ изменения
Сложность
Безопасность
Когда использовать
Внешняя форма (.erf)
Низкая
⭐⭐⭐⭐⭐
Добавление логотипа, изменение дизайна
Конфигуратор
Высокая
⭐⭐⭐
Глубокие доработки логики
Конструктор печатных форм
Средняя
⭐⭐⭐⭐
Быстрые правки без программирования
Скрипты на языке 1С
Очень высокая
⭐⭐
Сложные расчёты, интеграция с другими системами
5. Доработка печатной формы через код (для разработчиков)
Процедура ПечатьТорговаяНакладная(Документ, ТаблицаТоваров)
Пример 2. Изменение шапки документа:
Процедура ПриКомпоновкеДанных(Документ, КомпоновщикМакета)
// Меняем заголовок документа в зависимости от типа операции
Если Документ.ВидОперации = ВидОперации.Розница Тогда
КомпоновщикМакета.Параметры.УстановитьЗначение("Заголовок","Чек ККМ №" + Документ.Номер);
Иначе
КомпоновщикМакета.Параметры.УстановитьЗначение("Заголовок","Счёт на оплату №" + Документ.Номер);
КонецЕсли;
КонецПроцедуры
⚠️ Внимание: При программных доработках используйте обработку ошибок, чтобы избежать падения формы:
Попытка
// Ваш код
Исключение
ЗаписатьЖурналРегистрации(НСтр("ru ='Ошибка печатной формы:'") + ОписаниеОшибки);
ПрерватьОбработку;
КонецПопытки;
Программные доработки печатных форм требуют тестирования на копии базы. Особенно опасно изменять формы, которые используются в регламентных заданиях (например, автоматическая отправка счетов по email).
6. Типовые ошибки и их решения
Даже опытные пользователи сталкиваются с проблемами при изменении печатных форм. Вот самые распространённые случаи и способы их устранения:
- 🔴 Форма открывается пустой:
- Причина: неверно указан источник данных или сбросились настройки компоновки.
- Решение: проверьте привязку формы к документу в
НСИ и администрирование → Печатные формы. - 🔴 Не отображаются русские символы:
- Причина: неверная кодировка файла
.erf(должна бытьUTF-8).- Решение: откройте файл в Notepad++
и сохраните с кодировкойUTF-8 без BOM. - 🔴 Медленное формирование формы:
- Причина: сложные запросы или большие таблицы в макете.
- Решение: оптимизируйте запрос (используйте индексы) или разбейте форму на несколько страниц.
- 🔴 Ошибка"Не найден макет":
- Причина: макет удалён или переименован.
- Решение: восстановите макет из резервной копии или создайте новый через
Конфигуратор → Объекты → Макеты.
Критическая ошибка: если после изменения формы перестали формироваться все печатные формы документа, проверьте целостность конфигурации через Администрирование → Тестирование и исправление с флагом"Проверка логической целостности".
7. Как сохранить изменения после обновления 1С
Одно из главных разочарований при работе с печатными формами — сброс изменений после обновления конфигурации. Чтобы этого избежать:
Для внешних форм: Храните файлы
.erf/.epfв отдельной папке и загружайте их заново после обновления.Для встроенных форм:
- Создайте расширение конфигурации (
Конфигурация → Расширения) и перенесите изменения туда.- Или используйте механизм
Подписки на событиядля динамического изменения формы.Для программных доработок: Вынесите код в отдельный общий модуль и подключите его к форме через обработчик события.
⚠️ Внимание: Если вы используете 1С:УТ 11.5 в облачном сервисе (1С:Fresh), некоторые способы (например, расширения) могут быть ограничены. Уточните возможности в личном кабинете сервиса.
Перед обновлением конфигурации экспортируйте все изменённые печатные формы в файл через Да, если использовать внешние печатные формы (.erf/.epf) или Конструктор печатных форм (доступен в пользовательском режиме для 11.5). Для этого нужны права на администрирование печатных форм, но не требуется доступ в конфигуратор. Для добавления QR-кода:
ЭлементыФормы.QRCode.Картинка = КартинкаQR;Конфигурация → Выгрузить конфигурацию в файлы. После обновления сравните файлы с новой версией (например, через Beyond Compare) и перенесите изменения.FAQ: Частые вопросы по печатным формам в 1С:УТ 11
Можно ли изменить печатную форму без доступа в конфигуратор?
Как добавить QR-код в печатную форму?
КартинкаQR = ПолучитьQRКод(Документ.Ссылка.УникальныйИдентификатор);
ПолеКартинки в макете формы.Почему после изменения формы в конфигураторе она не применяется?
Вероятные причины:
- Не обновлена конфигурация базы (
Конфигурация → Обновить конфигурацию базы данных). - Форма кэшируется. Попробуйте очистить кэш 1С (удалите папку
%APPDATA%\1C\1Cv8\). - Изменения сделаны в другой базе. Проверьте, что редактируете ту же базу, в которой тестируете.
Как сделать печатную форму для нового документа?
Шаги:
- В конфигураторе откройте объект документа (
Объекты → Документы → [ВашДокумент]). - Добавьте новую печатную форму через
Действия → Добавить → Печатная форма. - Настройте макет в Конструкторе печатных форм или вручную.
- Привяжите форму к документу в модуле объекта:
Процедура Печать(КоллекцияПечатныхФорм, Объект)КоллекцияПечатныхФорм.Добавить("НоваяФорма", Новый ПечатнаяФормаНоваяФорма(Объект));
КонецПроцедуры
Можно ли изменить печатную форму для мобильного приложения 1С?
В 1С:Мобильная платформа печатные формы настраиваются отдельно. Для этого:
- Откройте мобильное приложение в конфигураторе.
- Найдите раздел
Мобильное приложение → Печатные формы. - Используйте упрощённые макеты (без сложных таблиц и графики).
⚠️ Ограничения: в мобильной версии не поддерживаются некоторые элементы (например, ТабличныйДокумент с вложенными таблицами).