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

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

Что такое реквизит в 1С и как с ним работать

Реквизит в 1С — что это, какие бывают виды реквизитов, как добавить свой реквизит в справочник или документ и избежать типичных ошибок.

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

Если провести аналогию с бумажным документом, то сам документ «Счёт на оплату» — это бланк, а реквизиты — строки и графы в нём: номер, дата, покупатель, сумма. В 1С то же самое, только поля описываются формально: у каждого реквизита есть имя, тип данных, длина и другие свойства, которые задаются в конфигураторе.

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

Где встречаются реквизиты и какую роль они играют

Реквизиты есть практически у всех объектов конфигурации. У справочника «Номенклатура» это наименование, артикул, единица измерения, ставка НДС. У документа «Реализация товаров» — номер, дата, контрагент, договор, склад. У регистров реквизиты делятся на измерения, ресурсы и собственно реквизиты, но принцип тот же: поле хранит одно значение определённого типа.

Именно по реквизитам строятся отборы, сортировки, поиск и отчёты. Когда бухгалтер фильтрует документы по контрагенту или менеджер ищет товар по артикулу, система работает со значениями реквизитов. От того, насколько грамотно спроектирован набор реквизитов, зависит удобство учёта: если нужной характеристики нет, её не получится вывести в отчёт без доработки.

Виды реквизитов: стандартные, прикладные и дополнительные

Стандартные реквизиты платформа создаёт автоматически. У справочников это код, наименование, владелец, родитель, пометка удаления. У документов — номер, дата, признак проведения. Их нельзя удалить, но можно настроить: например, изменить длину наименования или формат номера документа.

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

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

Три способа хранить характеристику

Прикладной реквизит в конфигураторе

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

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

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

Дополнительное сведение

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

Типы данных реквизитов и как выбрать правильный

Каждый реквизит имеет тип, который определяет, что в нём можно хранить. Основные примитивные типы: строка (с указанием длины), число (с точностью после запятой), дата (с составом: дата, время или дата и время), булево. Ссылочные типы позволяют хранить ссылку на другой объект: элемент справочника, документ, перечисление.

Реквизит может быть составным — тогда он принимает значения нескольких типов, например строку или ссылку на любой справочник. Это удобно для универсальных полей вроде «Ответственный» или «Основание», но усложняет запросы и замедляет работу с большими объёмами данных. Составные типы стоит применять осознанно, а не «на всякий случай».

Частая ошибка проектирования — неверный выбор типа. Например, хранение суммы в строке ломает сортировку и итоги, а число с недостаточной точностью приводит к ошибкам округления в расчётах. Для телефонов и ИНН используют строку, а не число: ведущие нули и символы форматирования в числе не сохраняются.

Тип реквизитаЧто хранитТипичное применение
СтрокаТекст ограниченной или неограниченной длиныНаименования, ИНН, адреса, комментарии
ЧислоЧисловое значение с заданной точностьюСуммы, количества, проценты
ДатаДата, время или дата со временемДаты документов, сроки, периоды
БулевоИстина или ложьПризнаки: «Архив», «Облагается налогом»
СсылкаСсылка на объект конфигурацииКонтрагент, договор, склад, сотрудник

Как добавить реквизит в конфигураторе

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

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

Добавление реквизита в конфигураторе
  1. 1
    Откройте конфигуратор и найдите нужный объект в дереве конфигурации
  2. 2
    В ветке «Реквизиты» добавьте новый элемент и задайте имя, синоним и тип
  3. 3
    При необходимости настройте свойства: обязательность, проверку заполнения, индексирование
  4. 4
    Добавьте реквизит на форму объекта
  5. 5
    Обновите конфигурацию базы данных (F7) и проверьте результат в режиме предприятия

Дополнительные реквизиты без доработки конфигурации

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

Пользователь задаёт название поля и тип: текст, число, дата, булево, ссылка на справочник или значение из собственного списка. Добавленный реквизит сразу появляется на форме, доступен в отборах списков и выводится в отчёты. Это покрывает большинство потребностей вроде «добавить поле "Регион" к контрагентам» без привлечения программиста.

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

Табличные части и реквизиты внутри них

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

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

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

Типичные ошибки при работе с реквизитами
01
Хранение сумм и количеств в строковых реквизитах — ломает итоги, сортировку и арифметику в отчётах
02
Удаление реквизита без анализа — все накопленные значения теряются безвозвратно
03
Создание составного типа «на всякий случай» — усложняет запросы и замедляет работу
04
Дублирование дополнительных реквизитов с похожими названиями — пользователи заполняют разные поля, данные расходятся
05
Изменение типа заполненного реквизита без проверки — часть значений может не пройти преобразование при реструктуризации

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

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

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

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

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

Отображение на форме
Норма

Поле видно в карточке объекта и доступно для ввода

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

Реквизит есть в конфигурации, но на форме отсутствует

Сохранение значения
Норма

Введённое значение сохраняется и отображается после повторного открытия

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

Значение пропадает — возможно, реквизит не записывается или очищается кодом

Доступность в отчётах
Норма

Реквизит можно выбрать в настройках отчёта и отбора

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

Поле отсутствует в списке доступных — нужна доработка отчёта

Итог

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

Реквизит — это поле объекта 1С с заданным типом данных. Стандартные создаёт платформа, прикладные — разработчик в конфигураторе, дополнительные — пользователь в типовой конфигурации без доработки. Перед изменением конфигурации делайте резервную копию, а тип данных выбирайте под реальное содержимое поля.

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

Чем реквизит отличается от табличной части?

Реквизит — это одно поле с одним значением. Табличная часть — это вложенная таблица объекта, состоящая из строк, а каждая колонка этой таблицы является реквизитом табличной части. Например, «Контрагент» в шапке документа — реквизит, а колонка «Цена» в списке товаров — реквизит табличной части «Товары».

Можно ли добавить реквизит без программиста?

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

Что произойдёт с данными, если удалить реквизит?

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

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

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

Почему реквизит не попадает в отчёт?

Отчёт выводит только те поля, которые включены в его запрос или схему компоновки данных. Если реквизит добавлен недавно, отчёт нужно доработать: добавить поле в набор данных. Дополнительные реквизиты типовые отчёты обычно подхватывают автоматически, но для самописных отчётов может потребоваться настройка.

Какой тип выбрать для реквизита с телефоном или ИНН?

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