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

Разработка и Конфигурация · 12 мин

Как изменить представление документа в 1С

Как изменить представление документа в 1С: через синоним, расширенное представление и обработчик ОбработкаПолученияПредставления. Пошаговые инструкции и примеры кода.

Под представлением документа в 1С понимается текст, который пользователь видит в списках, ссылках, отчётах и печатных формах. По умолчанию платформа формирует его автоматически: например, «Реализация товаров и услуг 000000-000123 от 15.03.2026». Такой формат не всегда удобен: бухгалтеру нужен номер счёта-фактуры, менеджеру — контрагент, а руководителю — сумма документа. Изменить представление можно несколькими способами — от простой настройки синонима до программной обработки в модуле менеджера объекта.

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

Как платформа формирует представление документа по умолчанию

По умолчанию 1С собирает представление документа из трёх частей: синонима объекта метаданных, номера документа и даты. Например: «Поступление товаров и услуг 0000-001234 от 10.02.2026 12:30:00». Именно эту строку пользователь видит в журнале документов, в поле «Документ основание», в расшифровках отчётов и при печати ссылок.

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

Это также означает, что сложное представление, собираемое запросом к нескольким таблицам, будет выполняться при каждом отображении списка. При больших объёмах данных это может заметно замедлить открытие журналов — об этом подробнее в разделе про производительность.

Способ 1. Изменить синоним документа в конфигураторе

Самый простой вариант — переименовать вид документа. Синоним используется в заголовках форм, в представлении по умолчанию и в меню разделов. Например, документ «Операция» в интерфейсе может называться «Операция, введённая вручную».

Порядок изменения синонима
  1. 1
    Откройте конфигуратор и найдите нужный документ в дереве метаданных (ветка «Документы»).
  2. 2
    Откройте палитру свойств объекта (правый клик — «Свойства»).
  3. 3
    Измените значение свойства «Синоним» — например, с «Заказ клиента» на «Заказ покупателя».
  4. 4
    Обновите конфигурацию базы данных (F7) и проверьте результат в режиме предприятия.

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

Способ 2. Расширенное представление объекта без программирования

В свойствах документа есть поле «Расширенное представление объекта» (ExtendedObjectPresentation). Оно позволяет задать форматную строку с подстановкой реквизитов — без единой строки кода в модуле. Платформа подставит значения полей автоматически.

Форматная строка записывается в квадратных скобках с именами реквизитов. Например, для документа «Заказ клиента» можно задать: Заказ [Номер] от [Дата] — [Контрагент]. Тогда в списках и ссылках документ будет отображаться как «Заказ 00123 от 15.03.2026 — ООО Ромашка».

Ограничения способа: работают только реквизиты шапки простых типов и ссылочных типов (подставляется их стандартное представление), нельзя использовать условную логику, обращение к табличным частям и вычисляемые значения. Если нужна логика «если проведён — показать сумму, иначе — статус», потребуется программный способ.

Способ 3. Программное представление через ОбработкаПолученияПредставления

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

В модуле менеджера документа (в дереве метаданных: правый клик по документу — «Открыть модуль менеджера») добавьте процедуру:

Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)

СтандартнаяОбработка = Ложь;

Представление = СтрШаблон("Заказ №%1 от %2 (%3)",

Данные.Номер,

Формат(Данные.Дата, "ДЛФ=D"),

Данные.Контрагент);

КонецПроцедуры

Параметр Данные содержит поля ссылки, которые платформа выбрала из базы. По умолчанию там только минимальный набор. Чтобы в данных появились нужные реквизиты (например, Контрагент, СуммаДокумента), их необходимо перечислить в свойстве документа «Поля представления» (PresentationFields) в конфигураторе — иначе обращение к реквизиту вернёт пустое значение или вызовет дополнительный запрос.

Если в обработчике не установить СтандартнаяОбработка = Ложь, платформа проигнорирует ваш текст и сформирует стандартное представление. Это самая частая причина, почему «код написан, но ничего не изменилось».

bsl
Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
	СтандартнаяОбработка = Ложь;
	Если Данные.Проведен Тогда
		Представление = СтрШаблон("%1 №%2 от %3 — проведён", Данные.ВидДокумента, Данные.Номер, Формат(Данные.Дата, "ДЛФ=D"));
	Иначе
		Представление = СтрШаблон("%1 №%2 от %3 (не проведён)", Данные.ВидДокумента, Данные.Номер, Формат(Данные.Дата, "ДЛФ=D"));
	КонецЕсли;
КонецПроцедуры

Настройка полей представления и производительность

Ключевой момент при программном формировании представления — свойство «Поля представления» (PresentationFields) в палитре свойств документа. В него нужно добавить все реквизиты, которые используются в обработчике: Номер, Дата, Контрагент, СуммаДокумента, Проведен и т.д.

Если реквизит не включён в поля представления, платформа при обращении к нему в параметре Данные либо вернёт неопределённое значение, либо (в зависимости от режима) выполнит дополнительный запрос к базе для каждой строки списка. На журнале из нескольких тысяч документов это превращается в тысячи лишних запросов и заметное «подвисание» интерфейса.

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

Контрольные точки

Как проверить результат

Отображение в журнале документов
Норма

В списке видна новая строка представления, список открывается быстро

Тревожный признак

Старое представление или заметная задержка при прокрутке списка

Поле ввода со ссылкой на документ
Норма

При выборе документа в поле отображается новое представление

Тревожный признак

В поле ввода старый формат — проверьте, что изменён именно нужный вид документа

Отчёты и расшифровки
Норма

Ссылки на документ в отчётах показывают новый формат

Тревожный признак

В отчётах старый формат — возможно, в СКД представление задано явно в настройках поля

Изменение представления через расширение конфигурации

Для типовых конфигураций (1С:Бухгалтерия, 1С:Управление торговлей, ERP) правильный путь — расширение. В расширении добавьте нужный документ в заимствованные объекты, затем в его модуле менеджера напишите обработчик с аннотацией &После("ОбработкаПолученияПредставления") или &Вместо, если в типовой модуле такой обработчик уже есть.

&Вместо("ОбработкаПолученияПредставления")

Процедура Расш1_ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)

СтандартнаяОбработка = Ложь;

Представление = СтрШаблон("%1 №%2 от %3 — %4",

"Счёт на оплату", Данные.Номер,

Формат(Данные.Дата, "ДЛФ=D"), Данные.Контрагент);

КонецПроцедуры

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

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

Сравнение способов

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

Подходит для переименования вида документа в интерфейсе. Не меняет формат строки с номером и датой.

Расширенное представление объекта

Простая форматная строка с реквизитами без кода. Нет условной логики и обращения к табличным частям.

ОбработкаПолученияПредставления

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

Отдельный реквизит со строкой

Строка формируется при записи документа и хранится в базе. Быстро при отображении, но требует обновления при изменении связанных данных.

Типичные ошибки и ограничения

Первая ошибка — забыть СтандартнаяОбработка = Ложь. Без этого присвоения платформа игнорирует сформированную строку и показывает стандартное представление. Вторая — не добавить реквизиты в «Поля представления»: данные в обработчике оказываются пустыми, и в строке выводятся пустые значения вместо контрагента или суммы.

Третья ошибка — тяжёлый код в обработчике. Запросы, обходы табличных частей, вызовы серверных функций внутри ОбработкаПолученияПредставления выполняются для каждой отображаемой строки списка. На больших базах это критично: журнал документов начинает открываться секундами.

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

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

Часто задаваемые вопросы

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

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

Почему после изменения обработчика в журнале всё осталось по-старому?

Проверьте три вещи: установлено ли СтандартнаяОбработка = Ложь, обновлена ли конфигурация базы данных (F7) и перезапущен ли сеанс 1С:Предприятия. Если изменения внесены через расширение — убедитесь, что расширение активно и применено без ошибок.

Как вывести в представление данные табличной части, например первую номенклатуру?

Напрямую в обработчике это делать не рекомендуется — потребуется запрос к табличной части для каждой строки списка, что критично для производительности. Правильное решение: добавить в шапку документа реквизит (например, «ОсновнаяНоменклатура»), заполнять его при записи и использовать в полях представления.

Влияет ли изменение представления на печатные формы?

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

Можно ли задать разные представления для разных пользователей?

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

Что делать, если представление нужно искать через поиск в журнале?

Представление не участвует в поиске — поиск работает по реквизитам динамического списка. Добавьте нужные реквизиты (контрагент, комментарий, сумма) в колонки журнала и используйте строку поиска по ним. Для составного «имени» документа создайте отдельный строковый реквизит с индексированием.

Итог

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

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