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

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

Длина наименования в 1С: что это и как настроить

Что такое длина наименования в 1С, где задаётся длина строки справочников и документов, как увеличить ограничение и какие риски это несёт.

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

В типовых конфигурациях (например, «Управление торговлей», «Бухгалтерия предприятия») длина наименования справочника «Номенклатура» обычно составляет 100–150 символов, у контрагентов — 150, а у некоторых служебных справочников — всего 25–50. Эти значения заданы разработчиком конфигурации и хранятся в метаданных объекта, а не в пользовательских настройках.

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

Где физически хранится ограничение длины

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

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

В файловом варианте базы и в клиент-серверном (SQL Server, PostgreSQL) механизм одинаков: платформа формирует структуру таблиц по метаданным. Разница только в том, что на SQL-уровне администратор базы может увидеть фактический тип колонки, но менять его в обход конфигуратора категорически нельзя — это приведёт к рассинхронизации метаданных и данных.

Как узнать текущую длину наименования объекта

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

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

Как увеличить длину наименования через конфигуратор

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

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

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

Риски при изменении длины: что может пойти не так

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

Второе — печатные формы и отчёты. Макеты часто рассчитаны на определённую ширину поля: слишком длинное наименование «разорвёт» верстку счёта или этикетки. После увеличения длины стоит проверить основные печатные формы.

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

Обмены данными и типовые ограничения

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

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

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

Увеличить длину наименования во всех системах

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

Использовать отдельный реквизит «Полное наименование»

Подходит, когда менять типовой объект нельзя: краткое наименование остаётся для обменов, полное — для печати и отображения

Настроить обрезку в правилах обмена

Компромисс при невозможности доработок: данные не теряются в исходной системе, но в приёмнике названия усечённые

Альтернатива: неограниченная строка и дополнительные реквизиты

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

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

Частые ошибки и как их избежать

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

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

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

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

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

Сохранение длинного наименования
Норма

Текст новой длины сохраняется целиком и отображается в карточке и списке

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

Значение обрезается или появляется ошибка при записи

Обмен данными со смежной базой
Норма

Номенклатура и контрагенты переносятся без ошибок, наименования совпадают в обеих системах

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

Ошибки загрузки или усечённые названия в базе-приёмнике

Печатные формы
Норма

Длинное наименование переносится по строкам и не ломает макет

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

Текст выходит за границы ячеек, таблица разъезжается

Существующие данные
Норма

Все старые наименования остались без изменений

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

Часть значений обрезана — признак того, что длину уменьшали без подготовки

FAQ

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

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

Что произойдёт с данными, если увеличить длину наименования?

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

Почему при обмене между базами наименования обрезаются?

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

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

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

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

Умеренное увеличение (например, со 100 до 250 символов) на практике незаметно. Ощутимый эффект дают не сами символы, а очень длинные значения в полях, участвующих в поиске, сортировке и индексах. Для текстов, по которым не нужно искать, лучше использовать отдельный реквизит неограниченной длины.

Итог

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

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