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

Другое · 11 мин

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

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

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

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

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

Где в 1С задаётся длина наименования

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

Типовые значения различаются: в «Управлении торговлей» наименование номенклатуры обычно длинное, а в некоторых старых конфигурациях встречаются ограничения в 25–50 символов. Узнать текущее ограничение можно двумя способами: попробовать ввести длинный текст в пользовательском режиме (лишние символы просто не набираются) или открыть свойства объекта в конфигураторе и посмотреть значение «Длина наименования».

Помимо стандартного наименования, ограничение по длине действует и на любые дополнительные реквизиты типа «Строка», созданные разработчиком. Механика изменения у них та же самая.

Подготовка: резервная копия и режим поддержки

Любое изменение структуры метаданных требует обновления конфигурации базы данных, а это потенциально опасная операция. Перед началом работ создайте резервную копию: в файловой базе достаточно скопировать файл 1Cv8.1CD, в клиент-серверной — сделайте выгрузку через конфигуратор (Администрирование → Выгрузить информационную базу) или средствами СУБД.

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

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

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

Основной сценарий — увеличение стандартного наименования справочника, например «Номенклатуры». Порядок действий одинаков для большинства конфигураций на платформе 1С:Предприятие 8.

Порядок действий
  1. 1
    Откройте конфигуратор и разблокируйте конфигурацию для изменений (Конфигурация → Поддержка → Настройка поддержки → Включить возможность изменения)
  2. 2
    В дереве конфигурации найдите нужный объект, например Справочники → Номенклатура
  3. 3
    Откройте палитру свойств объекта (правый клик → Свойства)
  4. 4
    Найдите свойство «Длина наименования» и увеличьте значение, например со 100 до 150 или 250
  5. 5
    Сохраните конфигурацию (Ctrl+S)
  6. 6
    Обновите конфигурацию базы данных (F7) и подтвердите реструктуризацию
  7. 7
    Проверьте в пользовательском режиме, что длинное наименование вводится и сохраняется

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

Аналогично меняется длина наименования у планов видов характеристик, планов счетов, планов обмена и других объектов, у которых есть стандартное наименование. Свойство находится в той же палитре свойств корневого узла объекта.

Изменение длины кода и номера документа

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

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

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

Увеличение длины дополнительных реквизитов и полей документов

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

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

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

Способы решить проблему длины

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

Полноценное увеличение стандартного наименования. Подходит для самописных и доработанных конфигураций. Минус — влияет на поддержку и обновления типовых решений.

Расширение конфигурации

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

Дополнительный реквизит

Создаётся в пользовательском режиме без конфигуратора. Подходит, если длинное название нужно хранить, но не обязательно в стандартном поле. Минус — поле не участвует в стандартных представлениях объекта.

Расширение конфигурации как безопасная альтернатива

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

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

Ограничения у расширений тоже есть: не все свойства можно переопределять, а при существенной смене структуры в новом релизе поставщика расширение может потребовать доработки. Тем не менее для задачи увеличения длины строки это наиболее «чистый» вариант.

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

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

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

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

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

Все символы вводятся и сохраняются

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

Ввод обрывается на старом лимите — обновление конфигурации БД не выполнено

Повторное открытие элемента
Норма

Наименование отображается полностью

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

Текст усечён — изменено не то поле или не тот объект

Отчёты и печатные формы
Норма

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

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

Текст обрезан в макете — ограничение задано в шаблоне печатной формы

Типичные ошибки
01
Сохранили конфигурацию, но не выполнили обновление конфигурации базы данных (F7) — в пользовательском режиме ничего не изменилось
02
Изменили длину у одного объекта, а синонимичное поле в связанном объекте (например, наименование для печати) осталось коротким — данные обрезаются при переносе
03
Уменьшили длину без проверки существующих данных — реструктуризация завершилась ошибкой или значения усечены
04
Сняли типовую конфигурацию с поддержки без необходимости, хотя задача решалась расширением или дополнительным реквизитом

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

Итог

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

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

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

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

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

Что будет со старыми данными после увеличения длины?

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

Почему после изменения в конфигураторе в режиме «Предприятие» ничего не поменялось?

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

Можно ли сделать наименование неограниченной длины?

Технически можно установить длину 0 (неограниченная), но это не рекомендуется для наименований: такие поля нельзя индексировать, они медленнее работают в запросах и могут создать проблемы при обмене данными. Лучше задать разумный запас, например 150–250 символов.

Слетит ли конфигурация с поддержки после изменения длины?

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

Нужно ли менять длину в связанных базах при обмене?

Да. Если базы обмениваются данными (РИБ, обмен через правила, EnterpriseData), длина соответствующих полей должна быть согласована. Иначе длинное наименование из одной базы будет обрезано при загрузке в другую или вызовет ошибку обмена.