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

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

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

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

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

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

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

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

В типовых конфигурациях длина наименования обычно составляет 25, 50, 100 или 150 символов в зависимости от справочника. Например, у номенклатуры длина чаще всего больше, чем у валют или единиц измерения. Если конфигурация находится на поддержке без возможности изменения, редактирование будет заблокировано — об этом отдельно ниже.

Что проверить перед изменением длины

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

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

Также проверьте, участвует ли справочник в планах обмена (РИБ, обмен с сайтом, синхронизация между конфигурациями). Несовпадение длин строк в узлах обмена — частая причина ошибок загрузки и «мусорных» дублей.

Наименование обрезается при вводеДлина меньше требуемой

Текущее значение длины в свойствах справочника

Ошибки при обмене даннымиВозможно несовпадение длин в узлах

Настройки планов обмена и длины реквизитов в обеих базах

Конфигурация на поддержкеИзменение может быть заблокировано

Статус поддержки в окне «Настройка поддержки»

Пошаговое изменение длины наименования в конфигураторе

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

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

Особенности для типовых конфигураций на поддержке

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

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

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

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

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

Полноценное решение; подходит, когда длинное наименование нужно везде. Минус — снятие объекта с поддержки и риски при обменах

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

Без изменения конфигурации; подходит для печати и выгрузок. Минус — стандартное наименование остаётся коротким, возможны расхождения

Сокращение наименований вручную

Без технических рисков; подходит при небольшом числе проблемных элементов. Минус — трудоёмко и не решает проблему системно

Риски при уменьшении длины и как их избежать

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

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

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

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

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

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

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

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

Строка сохраняется полностью, без обрезки

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

Ввод ограничивается старым числом символов — конфигурация базы данных не обновлена

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

Все наименования на месте, без усечения

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

Часть значений обрезана — восстанавливайте из резервной копии

Обмен данными
Норма

Синхронизация проходит без ошибок

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

Ошибки загрузки длинных строк — длины в узлах обмена различаются

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

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

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

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

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

Существующие данные не пострадают: увеличение длины строки — безопасная реструктуризация. Все наименования останутся как были, просто появится возможность вводить более длинные значения.

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

Чаще всего не выполнено обновление конфигурации базы данных (F7). Изменения в конфигураторе сначала сохраняются в основную конфигурацию, а применяются к рабочей базе только после обновления.

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

Заметного влияния при разумных значениях (до нескольких сотен символов) нет. Однако чрезмерно большие длины увеличивают размер индексов, если наименование индексируется, что может сказаться на больших базах.

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

Аналогично: в свойствах справочника в конфигураторе есть поле «Длина кода». Учтите, что уменьшение длины кода при числовом типе может привести к конфликтам нумерации, поэтому предварительно проверьте существующие коды.

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

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

Итог

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

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