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