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