К статье
Практический материал

Документы и Печать · 10 мин

Как редактировать печатную форму в 1С 7.7

Как открыть и отредактировать печатную форму в 1С 7.7: режим Таблица, работа с секциями и ячейками, изменение макета в конфигураторе, типичные ошибки и FAQ.

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

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

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

Разовая правка сформированной печатной формы

Если нужно исправить один конкретный документ перед печатью — опечатку в адресе, номер счёта, формулировку — не трогайте шаблон. Сформируйте печатную форму кнопкой «Печать» в документе, затем откройте меню «Вид» и включите пункт «Редактирование». Таблица станет доступной для правки: можно вводить текст в ячейки, менять шрифт и выравнивание через панель инструментов.

После правки нажмите кнопку печати на панели инструментов или Ctrl+P. Учтите ограничение: исправления существуют только в открытом окне таблицы. Если закрыть форму и сформировать её заново, все правки исчезнут — документ снова заполнится из шаблона и данных информационной базы.

Исправлять данные лучше в самом документе, а не в печатной форме. Если в счёте неверная цена, правильное действие — изменить цену в табличной части документа и перепровести его, а не подправлять цифру в таблице. Иначе печатная форма разойдётся с учётными данными, что при проверке создаст проблемы.

Как открыть макет печатной формы в конфигураторе

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

Откройте «Конфигурация → Открыть конфигурацию», найдите нужный объект — например, «Документы → СчетФактура» или «Документы → РасходнаяНакладная». В дереве объекта есть ветка «Макеты» (в некоторых конфигурациях макет открывается через кнопку «Макет» в окне редактирования объекта). Двойной щелчок по макету открывает табличный редактор.

В типовых конфигурациях у одного документа может быть несколько макетов: «Счет», «Накладная», «ТОРГ-12». Чтобы понять, какой макет используется, откройте модуль формы документа и найдите процедуру печати — в ней указано имя вызываемого макета, например Печать("Накладная").

Порядок действий в конфигураторе
  1. 1
    Сделайте резервную копию базы (копирование каталога или выгрузка данных)
  2. 2
    Попросите всех пользователей выйти и запустите базу в режиме Конфигуратор
  3. 3
    Откройте конфигурацию и найдите нужный документ или отчёт
  4. 4
    Откройте макет в ветке Макеты или через кнопку Макет
  5. 5
    Внесите изменения в секции и ячейки таблицы
  6. 6
    Сохраните конфигурацию (Ctrl+S) и подтвердите обновление
  7. 7
    Проверьте печать на тестовом документе

Структура макета: секции, ячейки и параметры

Макет в 1С 7.7 — это таблица, разбитая на именованные секции. Секция — это строка или блок строк с именем в левом поле (например, «Шапка», «Строка», «Подвал»). Модуль документа выводит секции последовательно: сначала шапку, затем секцию «Строка» для каждой позиции документа, затем подвал с итогами.

Внутри ячеек секций встречаются три типа содержимого. Обычный текст выводится как есть. Выражения в квадратных скобках, например [НомерДок] или [Контрагент.ПолнНаименование], — это параметры, значения которых подставляет модуль. Директивы вида #Если ... #КонецЕсли управляют условным выводом, но встречаются реже.

При правке важно не разрушить связь макета с модулем. Если переименовать секцию «Строка» в «Позиция», а в модуле останется вызов Таб.ВывестиСекцию("Строка"), печать завершится ошибкой. То же относится к именам параметров в квадратных скобках: модуль заполняет их через Таб.ПараметрыСтраницы или присваивание, и имя должно совпадать точно.

Типовые изменения макета

Добавление статичного текста — самая безопасная правка. Чтобы вписать в счёт строку «Оплата в течение 5 банковских дней», найдите секцию «Подвал» или «Шапка», вставьте новую строку внутри секции (правой кнопкой по номеру строки — «Раздвинуть») и введите текст в нужную ячейку. Границы секции при этом не должны смещаться так, чтобы захватить чужие строки.

Изменение ширины колонок и шрифтов выполняется стандартными средствами табличного редактора: перетаскиванием границы столбца или через свойства ячейки (правой кнопкой — «Свойства»). Там же задаются рамки, выравнивание и формат чисел. Формат даты или суммы меняется в свойствах ячейки на закладке «Текст» через шаблон формата.

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

1c
// В модуле документа, процедура печати
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Накладная");
Таб.ВывестиСекцию("Шапка");
Для Ном = 1 По КоличествоСтрок() Цикл
    Таб.ВывестиСекцию("Строка");
КонецЦикла;
Таб.ВывестиСекцию("Подвал");
Таб.Показать("Печать накладной");

Внешние печатные формы как альтернатива

Если конфигурацию нельзя изменять — например, она на поддержке поставщика или обновляется часто — используйте внешнюю печатную форму. Это файл обработки с расширением .ert, который открывается через «Файл → Открыть» и формирует печать по данным открытого документа. Внешняя форма не требует монопольного доступа и не затирается при обновлении конфигурации.

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

Сравнение вариантов

Правка сформированной таблицы

Подходит для разового исправления перед печатью. Не требует прав, но изменения не сохраняются и не влияют на шаблон.

Правка макета в конфигураторе

Постоянное изменение для всех пользователей. Требует монопольного доступа и затирается при типовом обновлении конфигурации.

Внешняя печатная форма (.ert)

Изменения не зависят от обновлений конфигурации. Требует навыков программирования и ручного запуска файла.

Проверка результата и типичные ошибки

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

Распространённая ошибка — появление пустых квадратных скобок или текста параметра вместо значения. Это значит, что модуль не присвоил параметру значение: либо имя в макете не совпадает с именем в модуле, либо секция выводится до заполнения параметров. Вторая частая проблема — «поехавшая» вёрстка после вставки строк: проверьте, что новая строка вошла внутрь нужной секции, а не разорвала её.

Типичные ошибки
01
Переименование секции без правки модуля — печать падает с ошибкой вывода секции
02
Правка макета без резервной копии — при неудаче приходится восстанавливать конфигурацию вручную
03
Исправление цифр в готовой таблице вместо правки документа — печать расходится с учётными данными
04
Забытый монопольный режим — изменения конфигурации не сохраняются, работа теряется
05
Обновление типовой конфигурации без переноса правок — изменённый макет заменяется типовым

Если после обновления конфигурации печатная форма вернулась к типовому виду, восстановите правки из резервной копии макета. Хорошая практика — хранить изменённые макеты отдельно: сохранять таблицу макета в файл (в редакторе таблиц — «Файл → Сохранить как») и документировать, какие секции менялись.

Итог

Что важно запомнить

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

Частые вопросы

Почему пункт «Редактирование» в меню «Вид» неактивен?

Режим редактирования доступен только для окна таблицы, а не для формы документа. Сначала сформируйте печатную форму кнопкой «Печать», затем кликните в открывшееся окно таблицы и снова откройте меню «Вид». Также проверьте, что таблица не открыта в режиме «Только просмотр» — это задаётся в модуле при вызове метода Показать().

Изменения в макете не видны пользователям. Что не так?

Чаще всего конфигурация не была сохранена или сохранена без обновления: в конфигураторе нужно выполнить «Конфигурация → Сохранить» и подтвердить обновление. Также пользователи должны перезайти в базу — работающие сеансы используют старую версию конфигурации. Реже причина в том, что печать вызывает другой макет или внешнюю форму.

Как добавить логотип компании в печатную форму?

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

Можно ли редактировать печатную форму без конфигуратора?

Только разово — в сформированной таблице через режим редактирования. Шаблон макета из режима «Предприятие» не редактируется. Альтернатива без изменения конфигурации — внешняя печатная форма (.ert), но её разработка всё равно выполняется в конфигураторе.

После правки макета печать выдаёт ошибку «Секция не найдена». Как исправить?

Имя секции в макете не совпадает с именем в вызове ВывестиСекцию() в модуле. Откройте модуль формы документа, найдите процедуру печати и сравните имена посимвольно — включая регистр и пробелы. Либо переименуйте секцию обратно, либо поправьте вызов в модуле.

Пропадут ли мои изменения при обновлении конфигурации?

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