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

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

Измерения, ресурсы и реквизиты регистров в 1С: назначение и отличия

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

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

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

Что такое регистр и почему у него три вида полей

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

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

Измерения: разрезы учёта и аналитики

Измерение отвечает на вопрос «в каком разрезе мы храним данные». Для регистра остатков товаров типичные измерения — Номенклатура, Склад, иногда Характеристика или Серия. Каждая уникальная комбинация значений измерений образует отдельную позицию учёта, по которой платформа умеет быстро получать остаток или оборот.

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

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

Ресурсы: что именно мы считаем и храним

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

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

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

Реквизиты: дополнительная информация о записи

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

Когда реквизит действительно уместен? Например, в регистре продаж поле «Менеджер» нужно только для расшифровки конкретных строк в отчёте, а итоги по менеджерам не требуются — тогда это реквизит. Но как только появляется задача «отчёт по продажам в разрезе менеджеров», поле необходимо переносить в измерения, иначе отчёт придётся строить по физическим записям с группировкой, что медленнее и лишает возможности использовать СКД по виртуальным таблицам.

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

Сравнение вариантов размещения поля

Измерение

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

Ресурс

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

Реквизит

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

Как выбрать: практический алгоритм

При добавлении нового поля в регистр задайте себе три вопроса. Первый: нужны ли по этому полю итоги, отборы или контроль? Если да — это измерение. Второй: является ли значение показателем, который складывается или вычитается? Если да — это ресурс. Третий: это просто дополнительная информация о строке? Тогда реквизит.

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

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

Отличия для разных видов регистров

Регистры накопления

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

Регистры сведений

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

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

Типичные ошибки и их последствия

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

Обратная ошибка — избыточные измерения. Регистр, где в измерения вынесены все мыслимые справочники, медленно записывается, занимает лишнее место и усложняет запросы. Контроль остатков по такому регистру также работает медленнее, поскольку проверяется больше комбинаций.

Третья группа ошибок — неправильный выбор типа ресурса: недостаточная длина или точность числа приводит к ошибкам переполнения при больших суммах, а хранение денежных величин в строках ломает суммирование в отчётах.

Типичные ошибки
01
Аналитика в реквизитах вместо измерений — отчёт в нужном разрезе невозможен без доработки и переноса данных
02
Лишние измерения «про запас» — замедление записи движений и раздувание индексов
03
Нечисловой ресурс в регистре накопления — итоги и обороты теряют смысл
04
Слишком маленькая точность числового ресурса — ошибки округления и переполнения при росте объёмов
05
Игнорирование режима записи регистра сведений — попытка записать дубль по ключу измерений вызывает ошибку

Как проверить, что структура спроектирована правильно

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

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

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

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

Виртуальная таблица остатков/среза
Норма

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

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

Требуемый разрез отсутствует — значит, он ошибочно размещён в реквизитах

Итоги по ресурсам
Норма

Суммы сходятся с данными документов

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

Расхождения или пустые итоги — проверьте вид движения и тип ресурса

Скорость проведения документа
Норма

Проведение занимает приемлемое время на рабочем объёме

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

Заметные задержки — вероятен избыток измерений или неоптимальные индексы

Итог

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

Измерения определяют разрезы учёта и итогов, ресурсы — суммируемые показатели, реквизиты — справочную информацию о строке. Правильное распределение полей обеспечивает быстрые отчёты и корректные остатки; ошибку проще предотвратить на этапе проектирования, чем исправлять на рабочей базе.

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

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

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

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

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

Чем реквизит регистра отличается от реквизита документа?

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

Нужно ли выносить Организацию в измерения?

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

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

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

Можно ли использовать ресурс регистра сведений для отбора в запросе?

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