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

Программист 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Управленческий учет
← На главную

В процессе работы с программой 1С:Бухгалтерия 8.3 пользователи часто сталкиваются с ограничением длины стандартного поля Наименование в справочнике Номенклатура. Это создает сложности при загрузке данных из систем электронного документооборота (ЭДО) или при необходимости внесения специфических технических характеристик товара (например, при переносе штрихкодов и упаковок). Разберем подробно, как решить эту задачу с технической и методической точек зрения, учитывая ограничения платформы и требования производительности.

Техническое увеличение длины наименования в Конфигураторе

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

Рассмотрим пошагово, как внести изменения:

  1. Откроем базу в режиме Конфигуратор.
  2. В дереве метаданных найдем справочник Номенклатура.
  3. Перейдем на закладку Данные.
  4. Найдем стандартный реквизит Наименование и изменим его длину.

Важно: Максимально допустимая длина для стандартного реквизита Наименование составляет 150 символов. Это ограничение заложено в ядро платформы 1С:Предприятие. Выясним причину такого лимита: поле Наименование является индексируемым. В большинстве СУБД (например, MS SQL Server) размер индекса ограничен (обычно 900 байт). Поскольку 1С использует кодировку Unicode, где один символ занимает 2 байта, лимит в 150 символов гарантирует стабильную работу индексов и высокую скорость поиска.

Настройка отображения Полного наименования в списке номенклатуры

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

Разберем, как вывести полное наименование в форму списка в режиме «1С:Предприятие» (существуют и другие методы доработки динамических списков):

  1. Откроем справочник Номенклатура.
  2. Нажмем кнопку Еще в правом верхнем углу и выберем пункт Изменить форму.
  3. В открывшемся окне найдем ветку Список.
  4. Встанем курсором на поле Ссылка (или Наименование) и нажмем кнопку Добавить поля.
  5. В списке доступных полей отметим галочкой Полное наименование и нажмем ОК.
  6. Теперь с помощью синих стрелок «Вверх» и «Вниз» переместим новое поле в удобное место (например, сразу после артикула) и установим для него достаточную ширину. Также можно использовать конструктор оформления списков для выделения важных позиций цветом.

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

Методология работы с наименованиями и сопоставление в ЭДО

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

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

  1. При первой загрузке документа от поставщика система предлагает сопоставить его название с вашим внутренним справочником.
  2. Вы выбираете свою карточку (даже если ваше Наименование короткое, а у поставщика — 200 символов).
  3. Программа записывает эту связь в регистр.
  4. При всех последующих загрузках 1С найдет ваш товар по ссылке из регистра, игнорируя текстовые различия в названиях.

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

Программные способы изменения представления объекта

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

Посмотрим на пример кода, который можно разместить в модуле менеджера справочника Номенклатура:


Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    // Формируем представление: Артикул + Краткое наименование
    Представление = "[" + Данные.Артикул + "] " + Данные.Наименование;
КонецПроцедуры

Такой подход позволяет не раздувать длину строковых полей, но при этом делать работу пользователя максимально информативной.

Поиск по длинным строкам: Полнотекстовый поиск

Выясним причину, почему поиск по началу строки в 500 символов — это плохая идея. Если мы будем искать товар «Сендвич-панель трехслойная тип А-45-890...», вводя текст с начала, мы потратим много времени. В 1С реализован механизм Полнотекстового поиска.

Проанализируем его преимущества:

Совет: Если вы вывели Полное наименование в форму списка, используйте стандартную строку поиска (вызывается по Ctrl + F). В настройках поиска выберите Искать в: Полное наименование и Поиск: По любой части — для этого подойдёт улучшенный поиск и автоподбор номенклатуры в 1С. Это решит проблему нахождения товара с очень длинным названием без технических правок конфигурации.

Итоги и рекомендации

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

  1. Используйте Наименование (до 150 знаков) как рабочий идентификатор для сотрудников: он должен быть кратким, содержать артикул или ключевые свойства в начале.
  2. Используйте Полное наименование для печати первичных документов и хранения юридически значимых названий.
  3. Настраивайте формы списков через Изменить форму для визуального контроля длинных строк.
  4. Пользуйтесь регистрами сопоставления номенклатуры для ЭДО, чтобы не зависеть от длины строк при обмене данными.

Такой комплексный подход обеспечит высокую производительность системы и удобство работы всех отделов компании.

← На главную