Что такое синоним в 1С Предприятие и как его настроить
Содержание
Синоним в 1С Предприятие — это свойство объекта метаданных, которое пользователь видит вместо его имени. Задаётся он в конфигураторе: выделите объект в дереве и откройте палитру свойств (Alt+Enter), поле Синоним стоит сразу под полем Имя.
Частое заблуждение — что синоним и имя связаны жёстко и, поменяв одно, вы сломаете другое. Это не так. Имя служит для кода и запросов, синоним — для интерфейса. Переименовать синоним можно сколько угодно раз: код, запросы и данные в базе от этого не пострадают.
Зачем объекту метаданных синоним и как платформа его использует
У каждого объекта конфигурации есть два «лица». Имя — это идентификатор: без пробелов, не начинается с цифры, пишется слитно. Синоним — обычная строка на человеческом языке, с пробелами, скобками и знаками препинания.
Пример для реквизита документа:
| Свойство | Значение | Кто видит |
|---|---|---|
| Имя | СуммаДокументаСНДС | разработчик, код, запросы |
| Синоним | Сумма (с НДС) | пользователь в формах и отчётах |
| Комментарий | Пересчитывается при записи | только разработчик в конфигураторе |
Где платформа подставляет синоним автоматически:
- 📋 заголовки полей на автоматически созданных формах;
- 🗂 заголовки колонок списков и табличных частей;
- 🧭 названия разделов и команд командного интерфейса, если не заданы отдельные представления;
- 📊 заголовки полей в системе компоновки данных (СКД), когда поле берётся из реквизита;
- 🔤 представления значений перечислений:
Строка(Перечисления.СтавкиНДС.НДС20)вернёт синоним значения, а не его имя; - 🪟 заголовок главного окна программы — там выводится синоним самой конфигурации.
Если синоним пустой, платформа покажет пользователю имя. Отсюда «КонтрагентПолучатель» слитно в форме — признак того, что синоним забыли заполнить.
Как задать синоним в конфигураторе: пошагово
Синоним для нового объекта
- Откройте конфигуратор и дерево конфигурации (
Конфигурация → Открыть конфигурацию). - Добавьте объект — справочник, документ, реквизит.
- Введите имя в стиле «каждое слово с заглавной», например
НомерВходящегоДокумента. - Перейдите в поле
Синоним. Конфигуратор уже заполнил его сам: «Номер входящего документа». Он разбивает имя по заглавным буквам. - Поправьте текст, если автоматический вариант звучит коряво.
💡 Автозаполнение срабатывает, только пока синоним пустой или совпадает со сгенерированным из прежнего имени. Если вы правили синоним вручную, при смене имени он останется прежним.
Синоним для существующего объекта
- Найдите объект в дереве. Быстрый способ — встать на дерево и начать набирать имя, курсор перескочит на совпадение.
- Откройте свойства
Alt+Enterи исправьте полеСиноним. - Сохраните конфигурацию и обновите конфигурацию базы данных (
F7).
Изменение синонима не меняет структуру таблиц. Реструктуризации не будет, обновление пройдёт быстро. Но базу всё равно нужно обновить, иначе пользователи продолжат видеть старый текст.
Если конфигурация типовая и стоит на поддержке, править объект напрямую можно только после включения возможности изменения. Каждая такая правка — это отличие от поставщика, которое придётся сравнивать при каждом обновлении. Для типовых баз удобнее менять заголовки на формах через расширение.
Синоним на нескольких языках
Синоним — многоязычная строка. Если в ветке Общие → Языки у конфигурации больше одного языка, рядом с полем появится кнопка выбора. Она откроет таблицу «язык — текст».
В коде такая строка хранится в формате:
ru = 'Номер входящего документа'; en = 'Incoming document number'
Пользователь видит вариант на языке своего сеанса. Если перевод на его язык пустой, платформа возьмёт текст основного языка.
Синонимы реквизитов, табличных частей и связанные представления
Синоним есть почти у всего, что лежит в дереве: у реквизитов, измерений и ресурсов регистров, табличных частей и их колонок, значений перечислений, общих модулей, ролей, подсистем.
Для справочников, документов и регистров у синонима есть «соседи». Они перекрывают его в конкретных местах:
| Свойство | Где показывается | Пример |
|---|---|---|
| Синоним | везде по умолчанию | Поступление товаров |
| Представление объекта | заголовок формы одного элемента | Поступление товара |
| Расширенное представление объекта | заголовок формы, если задано | Документ поступления товаров |
| Представление списка | заголовок формы списка и команда в панели | Поступления товаров |
| Расширенное представление списка | заголовок формы списка, если задано | Журнал поступлений |
Эти свойства лежат на вкладке Основные и ниже по палитре. Если они пусты, везде работает синоним.
Для реквизитов рядом с синонимом есть поле Подсказка. Её текст всплывает при наведении на поле формы. Не дублируйте в подсказке синоним: туда пишут то, чего нет в заголовке. Например: «Указывается дата из документа поставщика, а не дата поступления».
Заголовок поля на форме важнее синонима
Если на управляемой форме у элемента заполнено свойство Заголовок, пользователь увидит его, а не синоним реквизита. Это главный приём, когда нужно поменять подпись в одном месте, не трогая весь объект. В типовой конфигурации так и делают: заимствуют форму в расширение и правят заголовок элемента там.
Как получить синоним программно и можно ли его изменить
Синоним читается через объект метаданных. Несколько рабочих вариантов:
// Синоним справочника
СинонимСправочника = Метаданные.Справочники.Номенклатура.Синоним;
// Синоним реквизита документа
СинонимРеквизита = Метаданные.Документы.ПоступлениеТоваровУслуг.Реквизиты.Склад.Синоним;
// По полному имени объекта
ОбъектМД = Метаданные.НайтиПоПолномуИмени("Справочник.Контрагенты");
Если ОбъектМД <> Неопределено Тогда
Сообщить(ОбъектМД.Синоним);
КонецЕсли;
// Метаданные по ссылке
Ссылка = Справочники.Контрагенты.ПустаяСсылка();
Сообщить(Ссылка.Метаданные().Синоним);
Удобнее вызывать метод Представление(). Он возвращает синоним, а если тот пуст — имя. Так в сообщении никогда не окажется пустая строка:
Сообщить(Метаданные.Справочники.Номенклатура.Представление());
Вывести список реквизитов с синонимами — типовая задача при разборе чужой конфигурации:
Для Каждого Реквизит Из Метаданные.Справочники.Номенклатура.Реквизиты Цикл
Сообщить(Реквизит.Имя + " — " + Реквизит.Представление());
КонецЦикла;
Стандартные реквизиты («Код», «Наименование», «Ссылка») в коллекцию Реквизиты не входят. Они лежат в отдельной коллекции СтандартныеРеквизиты.
Изменить синоним из кода нельзя
В режиме 1С:Предприятие метаданные доступны только для чтения. Присвоить Метаданные.Справочники.Номенклатура.Синоним = "..." не получится — платформа выдаст ошибку.
Что можно сделать программно вместо этого:
- 🏷 поменять подпись поля на форме:
Элементы.Склад.Заголовок = "Склад отгрузки"; - 🖨 вывести в печатную форму свой текст через параметр макета;
- 📊 задать заголовок поля в настройках СКД или в программно созданных настройках отчёта.
Для разовых переименований по всей базе путь один — конфигуратор или расширение.
Как синонимы попадают в отчёты и печатные формы
Отчёты на СКД
Когда в запросе набора данных поле выбрано прямо из реквизита, СКД берёт заголовок поля из синонима этого реквизита. Для поля ДоговорКонтрагента пользователь увидит «Договор контрагента» или тот текст, что вписан в синоним.
Ситуация меняется, когда поле получает псевдоним через КАК или вычисляется выражением:
ВЫБРАТЬ
Продажи.Контрагент,
СУММА(Продажи.Сумма) КАК СуммаПродажЗаПериод
ИЗ
РегистрНакопления.Продажи КАК Продажи
СГРУППИРОВАТЬ ПО
Продажи.Контрагент
Для второго поля синонима у платформы нет, и заголовок генерируется из псевдонима. Проверьте и при необходимости задайте его вручную:
- Откройте схему компоновки, вкладку
Наборы данных. - В таблице полей найдите строку поля и колонку
Заголовок. - Впишите понятный текст: «Сумма продаж за период».
На вкладке Вычисляемые поля и Ресурсы заголовок задаётся там же, где описано поле.
Печатные формы
В макетах табличного документа подписи колонок обычно набраны прямо в ячейках или подставляются параметрами. Синоним сам туда не попадёт: поменяли синоним реквизита — подпись в печатной форме останется прежней.
Если хотите, чтобы печать следовала за метаданными, выводите подпись из кода:
ОбластьШапка.Параметры.ЗаголовокСклад = Метаданные.Документы.ПоступлениеТоваровУслуг.Реквизиты.Склад.Представление();
Для значений перечислений синоним работает сразу: при выводе значения в ячейку табличного документа печатается его представление, то есть синоним.
Синоним самой конфигурации и правки в типовых базах
Синоним конфигурации
У корня дерева конфигурации тоже есть синоним. Откройте свойства корневого элемента — поле то же, Синоним. Его текст пользователь видит в заголовке главного окна программы и в окне «О программе».
Рядом лежат свойства Краткая информация, Подробная информация, Авторские права, Версия. Если вы ведёте собственную доработанную конфигурацию, синоним стоит поменять: например, «Бухгалтерия предприятия (доработки склада)». Так пользователь сразу отличит рабочую базу от копии.
Чтобы различать базы, синоним конфигурации править не обязательно. Заголовок окна дополняется представлением информационной базы из списка баз в окне запуска — для тестовой копии достаточно дать ей другое имя в этом списке.
Синонимы и обновление типовой конфигурации
При обновлении типовой базы синонимы объектов поставщика приходят вместе с релизом. Если вы поменяли синоним прямо в конфигурации на поддержке, при сравнении и объединении он попадёт в список отличий. Каждый раз придётся решать, чей вариант оставить.
Расширение снимает эту проблему для форм: заголовок элемента, заданный в заимствованной форме, переживает обновление без ручного объединения.
Практическое правило для типовых баз:
- Подпись нужна в одной-двух формах — правьте
Заголовокэлемента в расширении. - Подпись нужна во всех формах, отчётах и списках сразу — меняйте синоним в основной конфигурации и фиксируйте правку в журнале доработок.
- Нужен новый реквизит — добавляйте его в расширение со своим именем и синонимом, основную конфигурацию не трогайте.
Правила именования и типичные ошибки с синонимами
Хороший синоним понятен бухгалтеру без расшифровки. Несколько правил, которые экономят переделки:
- ✅ Пишите с заглавной буквы только первое слово: «Дата поступления», а не «Дата Поступления».
- ✅ Сокращайте только общепринятое: «ИНН», «КПП», «НДС». «Кол-во» в заголовке колонки допустимо, в названии справочника — нет.
- ✅ Справочник называйте во множественном числе («Склады»), представление объекта — в единственном («Склад»).
- ✅ Не ставьте точку в конце и пробелы по краям.
- ✅ Для булевых реквизитов формулируйте утверждение: «Облагается НДС», а не «Флаг НДС».
Ошибки, которые встречаются чаще других:
| Ошибка | Чем плоха | Как исправить |
|---|---|---|
| Синоним пустой | пользователь видит слитное имя | заполнить или удалить и перенабрать имя, чтобы сработало автозаполнение |
| Два реквизита с одинаковым синонимом | в форме и отборе не отличить «Склад» от «Склад» | уточнить: «Склад отправитель», «Склад получатель» |
| Синоним разошёлся с именем по смыслу | через год разработчик ищет «Ответственного», а в коде это Менеджер | при смене смысла менять и имя, и синоним |
| Синоним поменяли, а форму нет | на форме остался старый Заголовок элемента | очистить заголовок элемента или поправить его |
| Перевод на второй язык не заполнен | англоязычный пользователь видит русский текст | заполнить все языки в многоязычной строке |
Не пытайтесь «переименовать» объект, меняя только синоним, если смысл реквизита изменился. Код, обработки и обмены продолжают опираться на имя, и через полгода путаница в смыслах обходится дороже честного переименования.
Частые вопросы
Влияет ли синоним на запросы и код?
Нужна ли реструктуризация базы после смены синонима?
Можно ли показать разным пользователям разные синонимы?
Заголовок элемента формы из кода в обработчике ПриСозданииНаСервере.Чем синоним отличается от комментария?
Почему в отчёте заголовок колонки не совпадает с синонимом реквизита?
Заголовок на вкладке наборов данных.