Справочники и Данные · 14 мин
Как добавить дополнительный реквизит в справочник 1С
Пошаговая инструкция: как добавить дополнительный реквизит в справочник 1С без изменения конфигурации, через конфигуратор и как вывести его в отчёты и печатные формы.
Когда типовых полей справочника не хватает — например, нужно хранить у контрагента сегмент рынка, а у номенклатуры — страну происхождения или особые условия хранения, — в 1С есть два пути. Первый — добавить дополнительный реквизит штатным механизмом, без доработки конфигурации. Второй — внести новый реквизит через конфигуратор, изменив структуру метаданных. Выбор зависит от того, где будет использоваться значение и нужна ли по нему сложная логика.
Механизм дополнительных реквизитов и сведений встроен в большинство типовых конфигураций на базе Библиотеки стандартных подсистем: «Управление торговлей», «ERP», «Комплексная автоматизация», «Зарплата и управление персоналом», «Бухгалтерия предприятия». Он позволяет пользователю с правами администратора самостоятельно расширять карточки справочников и документов, не привлекая программиста.
Ниже разобраны оба способа, их ограничения, проверка результата и типичные ошибки. Инструкции приведены для управляемого интерфейса «Такси»; в старых версиях платформы названия пунктов меню могут немного отличаться.
Чем дополнительный реквизит отличается от реквизита конфигурации
Дополнительный реквизит хранится не в таблице самого справочника, а в служебной табличной части «Дополнительные реквизиты» или в регистре сведений. Система подставляет его в карточку объекта динамически, при открытии формы. Для пользователя это выглядит как обычное поле, но внутри базы структура данных не меняется.
Реквизит, добавленный через конфигуратор, становится частью метаданных: для него создаётся физическое поле в таблице справочника. Такой реквизит доступен в запросах напрямую, может участвовать в индексах, движениях документов, обменах данными и произвольных алгоритмах.
Сравнение вариантов
Подходит для аналитики, отборов в списках, печати и отчётов. Не требует снятия конфигурации с поддержки. Ограничение: медленнее в запросах, сложнее использовать в коде и обменах.
Подходит, когда значение нужно в проведении, обменах, регламентных заданиях и частых запросах по большим объёмам. Требует прав разработчика, возможного снятия с поддержки и обновления структуры базы.
Разновидность для данных, которые не нужно показывать в карточке постоянно, но нужно хранить и использовать в отборах. Хранится в регистре сведений, отображается по кнопке «Ещё».
Практическое правило: если значение нужно «для справки», в отчётах и на печати — используйте дополнительный реквизит. Если по нему строится бизнес-логика (цены, скидки, проверки при проведении, интеграции) — закладывайте реквизит в конфигурацию.
Подготовка: включение механизма и проверка прав
Перед началом убедитесь, что у вашей учётной записи есть права администратора или хотя бы право «Добавление и изменение базовой нормативно-справочной информации». Обычному пользователю без этих прав пункты настройки будут недоступны.
Откройте раздел «Администрирование» → «Общие настройки» (в некоторых конфигурациях — «НСИ и администрирование» → «Общие настройки»). Найдите группу «Дополнительные реквизиты и сведения» и установите флажки «Дополнительные реквизиты и сведения» и, при необходимости, «Реквизиты и сведения с общим списком значений».
После включения флажков появляются гиперссылки «Дополнительные реквизиты» и «Дополнительные сведения». Если флажки уже установлены — механизм активен, можно переходить к созданию реквизита. В файловой базе изменения применяются сразу; в клиент-серверной — тоже, перезапуск не требуется.
Добавление дополнительного реквизита штатным способом
Откройте «Администрирование» → «Общие настройки» → «Дополнительные реквизиты». В левой части окна отображается список наборов — по одному на каждый вид объектов: «Номенклатура», «Контрагенты», «Партнёры», «Физические лица» и так далее. Выберите набор нужного справочника.
Нажмите «Добавить» → «Новый». Заполните карточку реквизита:
- Наименование — подпись поля, которую увидят пользователи, например «Сегмент рынка».
- Тип значения — строка, число, дата, булево, ссылка на другой справочник (например, «Значения свойств объектов») или составной тип. От типа зависит, какие проверки и отборы будут доступны.
- Заполнять обязательно — включайте осознанно: обязательный реквизит заблокирует запись старых элементов, у которых поле не заполнено, при их следующем редактировании.
- Доступность и видимость — можно настроить показ реквизита по условиям (например, только для определённого вида номенклатуры) через дополнительные настройки, если конфигурация это поддерживает.
Если тип значения — «Дополнительное значение», сразу заполните список допустимых значений в табличной части карточки реквизита. Это избавит пользователей от ручного ввода и обеспечит единообразие данных, что критично для последующих отборов и отчётов.
- 1Откройте «Администрирование» → «Общие настройки» и включите «Дополнительные реквизиты и сведения».
- 2Перейдите по ссылке «Дополнительные реквизиты» и выберите набор нужного справочника.
- 3Нажмите «Добавить» → «Новый», укажите наименование и тип значения.
- 4При типе «Дополнительное значение» заполните список допустимых значений.
- 5Запишите реквизит, откройте карточку любого элемента справочника и проверьте, что поле появилось.
- 6Заполните поле, сохраните элемент и проверьте отбор по этому значению в списке.
Где появится реквизит и как его заполнять массово
После сохранения реквизит появляется в карточке элемента справочника — обычно в отдельной группе «Дополнительные реквизиты» или на закладке «Дополнительно». В некоторых конфигурациях поле доступно через кнопку «Ещё» → «Дополнительные реквизиты».
Заполнять значения вручную по одному элементу долго, если справочник большой. Для массового заполнения используйте штатную обработку «Групповое изменение реквизитов» («Администрирование» → «Обслуживание» → «Корректировка данных»). В ней выберите вид объектов, настройте отбор нужных элементов, в списке реквизитов найдите дополнительный (он отображается вместе со штатными) и задайте значение. Перед выполнением обработка покажет, сколько элементов будет изменено.
Ещё один вариант массового заполнения — загрузка из табличного документа через обработку «Загрузка данных из файла» (доступна в карточках многих справочников по кнопке «Ещё» или в разделе «Покупки/Продажи» в зависимости от конфигурации). Дополнительные реквизиты в ней сопоставляются с колонками файла так же, как обычные поля.
Использование реквизита в списках, отчётах и печати
В списке справочника дополнительный реквизит доступен для отбора и сортировки: кнопка «Ещё» → «Настроить список», в полях отбора он находится в группе дополнительных реквизитов. Чтобы видеть значения колонкой, включите соответствующее поле в настройке списка — на больших справочниках это может замедлить открытие списка, поскольку значения подтягиваются из отдельной таблицы.
В отчётах на СКД (а это большинство типовых отчётов) дополнительные реквизиты доступны в настройках: «Настройки» → вкладка «Отбор» или «Поля» → кнопка выбора поля → развёрнутый список содержит дополнительные реквизиты объекта. Если реквизит не виден, проверьте, что отчёт построен по тому же объекту, к которому привязан реквизит.
Для вывода в печатную форму дополнительный реквизит обычно доступен в редакторе макета: откройте печатную форму документа, перейдите к изменению макета (если конфигурация поддерживает пользовательское редактирование макетов) и добавьте параметр вида [ДополнительныйРеквизит1] или выберите реквизит из дерева доступных полей. Точный синтаксис зависит от конфигурации — в «Управлении торговлей» и «ERP» механизм пользовательских макетов поддерживает дополнительные реквизиты штатно.
Как проверить результат
Реквизит отображается, сохраняется и восстанавливает значение при повторном открытии
Поле есть, но значение пропадает после записи — проверьте права и тип значения
Список фильтруется по значению реквизита, показывает только нужные элементы
Отбор не находит элементы — значения введены вручную с разным написанием вместо списка значений
Реквизит доступен в настройках полей и отборов, данные выводятся
Реквизита нет в списке полей — отчёт построен по другому объекту или нужно обновить настройки варианта отчёта
Добавление реквизита через конфигуратор
Если штатного механизма недостаточно, откройте конфигуратор: «Конфигурация» → «Открыть конфигурацию». В дереве объектов найдите нужный справочник, раскройте его, выберите ветку «Реквизиты» и добавьте новый элемент через контекстное меню.
В палитре свойств задайте имя (латиницей, без пробелов, например СегментРынка), синоним (увидят пользователи) и тип. Для ссылочного типа укажите конкретный справочник или перечисление. Обратите внимание на свойства «Проверка заполнения» (значение «Выдавать ошибку» сделает поле обязательным) и «Индексировать» — включайте индекс только если по реквизиту действительно часто ищут: лишние индексы замедляют запись.
После добавления реквизит нужно вывести на форму: откройте основную форму элемента, в дереве элементов формы добавьте поле и свяжите его с реквизитом объекта. Затем обновите конфигурацию базы данных («Конфигурация» → «Обновить конфигурацию базы данных»). Платформа выполнит реструктуризацию — на больших таблицах это может занять заметное время, поэтому в клиент-серверной базе обновление планируют вне рабочих часов.
Альтернатива прямой доработке — расширение конфигурации. Расширение позволяет добавить реквизит в справочник, не меняя типовой объект: конфигурация остаётся на поддержке, обновления проходят штатно. Это рекомендуемый путь, когда нужен «настоящий» реквизит, но важна простота сопровождения.
Типичные ошибки и ограничения механизма
Ещё одно ограничение — производительность. Каждый дополнительный реквизит — это соединение с дополнительной таблицей при чтении данных. Два-три реквизита незаметны, но пара десятков на крупном справочнике уже может ощутимо замедлять списки и отчёты. Если аналитики много, часть логично оформить как дополнительные сведения, а самые нагруженные — как реквизиты конфигурации.
Также учтите, что дополнительные реквизиты привязаны к конкретному виду объекта. Если у справочника есть виды (например, виды номенклатуры), для каждого вида может существовать свой набор реквизитов — проверьте, в какой именно набор вы добавляете поле.
Прежде чем создавать новый дополнительный реквизит, откройте список существующих в наборе справочника: нередко нужное поле уже добавлял кто-то из коллег под другим названием. Дублирующие реквизиты потом приходится объединять вручную с переносом значений.
Проверка результата и перенос между базами
После настройки пройдите полный цикл: создайте или откройте элемент справочника, заполните реквизит, запишите, закройте и откройте заново — значение должно сохраниться. Затем проверьте отбор в списке, вывод в отчёте и, если требуется, в печатной форме. Только после этого давайте пользователям команду заполнять данные массово.
При переносе между базами (например, из тестовой в рабочую) дополнительные реквизиты переносятся как обычные элементы справочника «Наборы дополнительных реквизитов и сведений» и связанных объектов — через выгрузку/загрузку данных в формате XML («Администрирование» → «Перенос данных» в типовых) или через «Конвертацию данных». Сами значения реквизитов переносятся вместе с элементами справочника.
Что важно запомнить
Дополнительный реквизит добавляется через «Администрирование» → «Дополнительные реквизиты» без изменения конфигурации и подходит для аналитики, отборов и печати. Для бизнес-логики, обменов и высоких нагрузок используйте реквизит конфигурации, предпочтительно через расширение. Перед массовым заполнением делайте резервную копию и проверяйте работу на одном элементе.
Частые вопросы
Почему добавленный реквизит не виден в карточке элемента?
Чаще всего реквизит добавлен не в тот набор: проверьте, что выбран набор именно вашего справочника (или конкретного вида, если справочник использует виды). Также убедитесь, что у пользователя есть права на просмотр дополнительных реквизитов и что форма элемента в конфигурации выводит группу дополнительных реквизитов — в сильно доработанных формах её могли удалить.
Можно ли изменить тип значения уже используемого реквизита?
Технически тип можно отредактировать в карточке реквизита, но уже введённые значения несовместимого типа будут очищены или станут недоступны. Безопасный путь: создайте новый реквизит с нужным типом, перенесите значения обработкой группового изменения или вручную, затем отключите старый реквизит.
Переносятся ли дополнительные реквизиты при обмене между базами 1С?
В типовых правилах обмена между идентичными конфигурациями дополнительные реквизиты и их значения обычно переносятся. При обмене между разными конфигурациями (например, УТ и БП) перенос зависит от правил: часть реквизитов сопоставляется, часть требует доработки правил конвертации. Проверяйте состав переносимых свойств в настройках синхронизации.
Чем дополнительное сведение отличается от дополнительного реквизита?
Реквизит хранится в табличной части объекта и отображается прямо в его карточке. Сведение хранится в отдельном регистре сведений и открывается по кнопке «Ещё» → «Дополнительные сведения». Сведения удобны для редко используемой информации, которую не нужно постоянно показывать в форме, но по которой всё же требуются отборы.
Как удалить дополнительный реквизит, если он больше не нужен?
Откройте список дополнительных реквизитов соответствующего набора и пометьте реквизит на удаление. Значения, введённые пользователями, будут удалены вместе с ним необратимо. Если данные могут понадобиться, сначала выгрузите их в отчёт или табличный документ для архива.
Можно ли сделать реквизит видимым только для части элементов справочника?
Да, если конфигурация поддерживает наборы реквизитов по видам объектов — например, отдельные наборы для каждого вида номенклатуры. Тогда реквизит, добавленный в набор конкретного вида, будет показываться только у элементов этого вида. Если видов нет, ограничить видимость штатно не получится — потребуется доработка формы.