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

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

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

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

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

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

Важно понимать разницу между «наименованием» и другими реквизитами. У документов в 1С, в отличие от справочников, нет стандартного реквизита «Наименование» — есть номер, дата и автоматически формируемое представление. Путаница между этими понятиями — частая причина ошибок в запросах и коде.

Что такое наименование документа в 1С и чем оно отличается от номера

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

По умолчанию представление документа строится по шаблону: синоним вида документа + номер + «от» + дата. Например, «Поступление товаров и услуг 0000-000045 от 02.03.2026 12:30:15». Разработчик конфигурации может переопределить это представление в модуле менеджера документа через обработчик ОбработкаПолученияПредставления, поэтому в разных конфигурациях формат может отличаться.

Номер документа — это лишь часть наименования. Если задача — получить именно номер (например, для сверки с первичными документами контрагента), нужно обращаться к реквизиту Номер, а не к представлению. Если нужна полная человекочитаемая строка — используется представление.

Как узнать наименование документа через интерфейс

Самый простой способ — открыть список документов нужного вида. В журнале документов платформа показывает представление в колонках «Номер», «Дата» и типе документа. Полная строка вида «Реализация товаров и услуг 0000-000123 от 15.03.2026» отображается в заголовке формы открытого документа и в строке навигации.

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

Ещё один способ — использовать функцию «Получить ссылку» (кнопка в командной панели формы или пункт меню «Ещё»). Открывшееся окно показывает навигационную ссылку вида e1cib/data/Документ.РеализацияТоваровУслуг?ref=.... Это не наименование, но по виду документа в ссылке можно понять его тип, а саму ссылку — передать коллеге для быстрого открытия.

Как скопировать наименование из интерфейса
  1. 1
    Откройте журнал документов нужного вида
  2. 2
    Откройте нужный документ двойным щелчком
  3. 3
    Посмотрите заголовок формы — там полное представление
  4. 4
    Выделите текст представления в поле формы и скопируйте (Ctrl+C)
  5. 5
    Проверьте, что скопированы номер и дата без искажений

Как получить наименование программно на встроенном языке

В коде на встроенном языке представление документа получается неявным преобразованием ссылки к строке или явным вызовом функции Строка(). Это самый распространённый способ при формировании сообщений, протоколов обмена и произвольных надписей.

ДокументСсылка = Документы.РеализацияТоваровУслуг.НайтиПоНомеру("0000-000123", ТекущаяДатаСеанса());

НаименованиеДокумента = Строка(ДокументСсылка);

// Результат: "Реализация товаров и услуг 0000-000123 от 15.03.2026 12:30:15"

Для объекта документа (полученного через ПолучитьОбъект()) существует метод ПолучитьПредставление(), но на практике чаще используют Строка(Ссылка) — он не требует получения объекта и работает быстрее, поскольку не считывает все данные документа из базы.

Если нужно собрать наименование в собственном формате — например, без времени или с префиксом организации — формируйте строку вручную из реквизитов:

Наименование = "Реализация № " + СокрЛП(ДокументСсылка.Номер)

+ " от " + Формат(ДокументСсылка.Дата, "ДЛФ=D");

bsl
Наименование = Строка(ДокументСсылка); // представление документа целиком

Обращение к реквизитам через точку (ДокументСсылка.Номер) выполняет обращение к базе данных. Если таких обращений много в цикле, лучше получить данные одним запросом — это существенно быстрее на больших объёмах.

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

В языке запросов 1С есть оператор ПРЕДСТАВЛЕНИЕ(), который возвращает строковое представление ссылки. Это удобно, когда наименование нужно вывести в отчёте или выборке без дополнительной обработки в коде.

ВЫБРАТЬ

ПРЕДСТАВЛЕНИЕ(РеализацияТоваровУслуг.Ссылка) КАК НаименованиеДокумента,

РеализацияТоваровУслуг.Номер,

РеализацияТоваровУслуг.Дата

ИЗ

Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг

ГДЕ

РеализацияТоваровУслуг.Проведен

У оператора ПРЕДСТАВЛЕНИЕ() есть ограничение: он формирует стандартное представление платформы и не учитывает переопределённое представление из обработчика ОбработкаПолученияПредставления. Если в конфигурации представление кастомизировано, результат запроса может отличаться от того, что видит пользователь в интерфейсе.

Для отчётов на СКД (системе компоновки данных) часто достаточно просто вывести поле «Ссылка» — компоновка сама отобразит его представлением. Явно использовать ПРЕДСТАВЛЕНИЕ() стоит, когда результат запроса передаётся в таблицу значений для дальнейшей обработки или выгрузки.

Как получить наименование по ссылке извне: COM, веб-сервисы, расширения

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

УникальныйИдентификатор = Новый УникальныйИдентификатор(СтрокаGUID);

ДокументСсылка = Документы.РеализацияТоваровУслуг.ПолучитьСсылку(УникальныйИдентификатор);

Если ДокументСсылка.ПолучитьОбъект() <> Неопределено Тогда

Наименование = Строка(ДокументСсылка);

Иначе

Наименование = "Документ не найден";

КонецЕсли;

Проверка существования документа обязательна: ПолучитьСсылку() вернёт ссылку даже для несуществующего объекта, и Строка() от такой «битой» ссылки даст строку вида «<Объект не найден> (123:abc...)». Перед использованием наименования убедитесь, что объект реально существует в базе.

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

Как изменить или задать собственное наименование документа

Стандартное представление можно переопределить в модуле менеджера документа. Для этого создаётся обработчик события ОбработкаПолученияПредставления, в котором формируется произвольная строка:

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

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

Представление = "Реализация № " + СокрЛП(Данные.Номер)

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

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

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

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

Способы получения наименования

Строка(Ссылка) в коде

Быстро и просто; учитывает переопределённое представление. Не подходит для пакетной обработки тысяч документов из-за обращений к базе.

ПРЕДСТАВЛЕНИЕ() в запросе

Эффективно для выборок и отчётов. Возвращает стандартное представление, игнорирует обработчик переопределения.

Интерфейс (заголовок формы)

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

Сборка из реквизитов вручную

Полный контроль над форматом. Требует поддержки формата при изменении требований.

Типичные ошибки и как их проверить

Самая частая ошибка — попытка обратиться к реквизиту «Наименование» у документа, как у справочника. Запрос Документ.РеализацияТоваровУслуг.Наименование завершится ошибкой, потому что такого поля не существует. Для документов используются Номер, Дата и представление ссылки.

Вторая распространённая проблема — обращения к базе в цикле. Конструкция вида Строка(СтрокаТаблицы.Ссылка) внутри цикла по тысяче строк выполняет обращение к данным при каждом обращении к реквизитам ссылки. Правильный подход — один запрос с ПРЕДСТАВЛЕНИЕ() или выборкой нужных полей.

Типичные ошибки
01
Обращение к несуществующему реквизиту Наименование у документа — ошибка выполнения запроса или кода
02
Использование Строка(Ссылка) без проверки существования объекта — в результатах появляется «<Объект не найден>»
03
Обращения к базе в цикле вместо одного запроса — резкое падение производительности
04
Ожидание, что ПРЕДСТАВЛЕНИЕ() в запросе учтёт переопределённое представление — расхождение с интерфейсом
05
Разбор представления строковыми функциями для поиска документа — ломается при смене формата; ищите по номеру и дате

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

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

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

Сравнение с заголовком формы документа
Норма

Номер и дата в наименовании совпадают с формой

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

Номер или дата отличаются — получена другая ссылка

Наличие текста «Объект не найден»
Норма

Строка содержит вид, номер и дату

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

Строка вида «<Объект не найден>» — ссылка битая

Скорость выполнения на большой выборке
Норма

Один запрос с ПРЕДСТАВЛЕНИЕ() выполняется быстро

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

Цикл с обращениями к реквизитам работает заметно медленно

FAQ

Как получить только номер документа без вида и даты?

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

Почему Строка(Ссылка) и ПРЕДСТАВЛЕНИЕ() в запросе дают разный результат?

Строка(Ссылка) вызывает механизм представления с учётом обработчика ОбработкаПолученияПредставления в конфигурации, а оператор ПРЕДСТАВЛЕНИЕ() формирует стандартное представление платформы на уровне запроса. Если представление переопределено, результаты будут различаться.

Можно ли найти документ по его наименованию?

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

Как вывести наименование документа в печатной форме?

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

Что делать, если в наименовании появляется «Объект не найден»?

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

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

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

Итог

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

У документов 1С нет реквизита «Наименование» — есть автоматическое представление из вида, номера и даты. Получайте его через Строка(Ссылка) в коде, ПРЕДСТАВЛЕНИЕ() в запросах или из заголовка формы в интерфейсе. Всегда проверяйте существование объекта и избегайте обращений к базе в циклах.