4 сентября 2026

Что такое регистр сведений в 1С: структура, виды и программная работа

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

Разработчик работает с регистром сведений в 1С за рабочим столом

Регистр сведений в 1С: что это и зачем нужен

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

image

Сделайте следующий шаг в карьере

Подберите обучение, которое поможет освоить новые компетенции

Выбрать курс

Ключевые отличия от близких объектов платформы:

  • Справочник получает ключ-ссылку автоматически при создании; измерений нет.
  • Константа хранит ровно одно значение без разрезов.
  • Регистр накопления считает обороты и остатки; документ обязателен при любой записи.

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

Структура: измерения, ресурсы и реквизиты регистра сведений

Каждая запись состоит из трёх типов полей. Измерения образуют составной первичный ключ: система управления базами данных (СУБД) строит по ним индекс автоматически. Ресурсы — хранимые значения в разрезе этого ключа. Реквизиты — вспомогательные колонки, не влияющие на уникальность.

Тип поля
Роль в записи
Примеры
Влияние на ключ
Измерение Часть первичного ключа Валюта, Номенклатура, Сотрудник Обязательно входит
Ресурс Хранимое значение Курс, Цена, ПлановоеНачисление Не входит
Реквизит Вспомогательная информация Комментарий, Ответственный Не входит

Порядок измерений влияет на производительность: СУБД строит индекс в заданной последовательности. Измерение, по которому запросы фильтруются чаще всего, ставьте первым. Лишние измерения раздувают таблицу и замедляют запись.

Примеры применения регистра сведений в 1С 8.3

Типичные случаи из реальных конфигураций:

  • Курсы валют — измерения [Валюта, Дата], ресурс — Курс. Периодический регистр.
  • Цены номенклатуры — измерения [Номенклатура, ТипЦены], ресурс — Цена. Периодический.
  • Настройки пользователя — измерение [Пользователь], ресурс — Значение. Непериодический.

Если нужна история изменений — выбирайте периодический вид; если значение статично — непериодический.

Виды регистров сведений в 1С

Регистры делятся по двум независимым основаниям: по отношению к регистратору и по периодичности. Это разные оси — любой вид из одной оси сочетается с любым из другой. Выбор вида определяет структуру таблицы в СУБД и синтаксис программной работы.

  Непериодический
Периодический
Независимый Настройки, соответствия объектов Курсы валют, тарифы
Подчинённый Используется редко Цены с привязкой к документу

Независимый и подчинённый регистр сведений

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

Подчинённый регистр создаёт записи при проведении документа-регистратора. При откате проведения записи удаляются автоматически. В коде обязателен отбор по регистратору:

Набор.Отбор.Регистратор.Установить(СсылкаНаДокумент);

Характеристика
Независимый
Подчинённый
Создание записей Напрямую При проведении документа
Удаление при откате Не затрагивается Автоматически
Типичное применение Курсы, настройки Цены по документам

Периодический и непериодический регистр сведений

Периодический регистр включает дату в состав первичного ключа — так хранится история изменений. Для него доступны виртуальные таблицы срезов. Периодичность «по позиции регистратора» усложняет запросы срезов — применяйте только при явной бизнес-необходимости.

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

Правило выбора: данные меняются во времени → периодический; значение постоянно → непериодический.

Виртуальные таблицы: СрезПоследних и СрезПервых

Инфографика СрезПоследних в 1С: точка среза на ленте записей регистра сведений

Виртуальные таблицы — механизм платформы для получения актуальных значений из периодического регистра сведений. Физически в СУБД их нет: платформа собирает данные в момент запроса.

  • СрезПоследних — возвращает последнюю запись с датой ≤ указанной. SQL-аналог: подзапрос с MAX(дата).
  • СрезПервых — первая запись с датой ≥ указанной.

Типичная ошибка — передавать условие отбора в блок ГДЕ вместо параметров таблицы:

// Неверно — полное сканирование таблицы:

ВЫБРАТЬ * ИЗ РегистрСведений.КурсыВалют.СрезПоследних()

ГДЕ Валюта = &Валюта

// Верно — условие внутри параметров виртуальной таблицы:

ВЫБРАТЬ * ИЗ РегистрСведений.КурсыВалют.СрезПоследних(&Дата, Валюта = &Валюта)

При ошибочном подходе платформа сначала загружает всю таблицу, затем фильтрует результат. На больших объёмах это заметно снижает производительность.

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

Где найти регистры сведений в 1С 8.3

Дерево Конфигуратора 1С с раскрытым разделом «Регистры сведений» и дочерними объектами

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

Путь в Конфигураторе: найти, создать и удалить объект

Откройте Конфигуратор → разверните дерево конфигурации → раздел «Регистры сведений». Здесь видны все регистры текущей конфигурации.

  • Создать: правая кнопка мыши на разделе → «Добавить»; задайте измерения, ресурсы, реквизиты, вид периодичности.
  • Удалить объект конфигурации: правая кнопка мыши на регистре → «Удалить»; перед удалением система проверяет ссылки на объект в коде и метаданных.
  • Открыть данные в режиме пользователя: меню «Все функции» → «Стандартные» → «Регистр сведений».

Регистры сведений в 1С ЗУП: где найти

В конфигурации 1С:Зарплата и управление персоналом (ЗУП) регистры сведений хранят плановые начисления, графики работы сотрудников, значения расчётных показателей.

Путь не отличается от других конфигураций: Конфигуратор ЗУП → дерево конфигурации → «Регистры сведений». Для быстрого поиска по имени используйте Ctrl+F в дереве.

Программная работа с регистром сведений в 1С

Встроенный язык 1С (BSL) предоставляет два объекта для работы с данными: Менеджер записи — для операций с одной записью, и Набор записей — для групповых операций. При массовых вставках или удалениях набор записей работает быстрее за счёт групповой отправки данных в СУБД.

Добавить запись в регистр сведений программно

Через Менеджер записи — удобно для одиночной записи:

// Создаём менеджер записи регистра ЦеныНоменклатуры

Пора сменить профессию? Начните с понятного плана

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

  • Востребованные навыки без лишней теории.
  • Поддержку экспертов на каждом этапе
  • Помощь с выходом на рынок труда
Подобрать обучение
image

МенеджерЗаписи = РегистрыСведений.ЦеныНоменклатуры.СоздатьМенеджерЗаписи();

МенеджерЗаписи.Период = ТекущаяДата();

МенеджерЗаписи.Номенклатура = СсылкаНаТовар;

МенеджерЗаписи.ТипЦены = СсылкаНаТипЦены;

МенеджерЗаписи.Цена = 1500;

МенеджерЗаписи.Записать();

Через Набор записей — предпочтительно при записи нескольких строк:

НаборЗаписей = РегистрыСведений.ЦеныНоменклатуры.СоздатьНаборЗаписей();

НоваяЗапись = НаборЗаписей.Добавить();

НоваяЗапись.Период = ТекущаяДата();

НоваяЗапись.Номенклатура = СсылкаНаТовар;

НоваяЗапись.ТипЦены = СсылкаНаТипЦены;

НоваяЗапись.Цена = 1500;

НаборЗаписей.Записать();

Удалить запись в регистре сведений программно

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

НаборЗаписей = РегистрыСведений.ЦеныНоменклатуры.СоздатьНаборЗаписей();

// Устанавливаем отбор по измерению

НаборЗаписей.Отбор.Номенклатура.Установить(СсылкаНаТовар);

// Читаем текущие записи, очищаем и записываем пустой набор

НаборЗаписей.Прочитать();

НаборЗаписей.Очистить();

НаборЗаписей.Записать();

Режимы записи и особенности независимого регистра

При вызове метода Записать() доступны три режима. Выбор влияет как на логику, так и на производительность:

Режим
Что делает
Когда применять
Риски
С замещением Удаляет старые записи с этим отбором, пишет новые По умолчанию; обновление данных Удалит записи параллельного потока
Без замещения Проверяет дубли, добавляет только новые Параллельная запись Немного медленнее
Без проверок Пишет напрямую, без проверки уникальности Пакетная загрузка с гарантированно уникальными данными Ошибку дубля выдаёт СУБД — труднее диагностировать

Для независимого регистра набор записей не требует отбора по регистратору. Для подчинённого — Отбор.Регистратор.Установить(Ссылка) обязателен: без него запись уйдёт в неправильный набор.

Хотите освоить программирование на платформе 1С с нуля? В ProfiFuture можно пройти обучение за 1,5 месяца с господдержкой — 75% стоимости компенсируется образовательной квотой. Смотрите программу 1С программист и сделайте первый шаг к новой специальности.

Часто задаваемые вопросы

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

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

Когда использовать периодический регистр, а когда — непериодический?

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

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

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

Как правильно расставить измерения для производительности?

Измерение, по которому запросы фильтруются чаще всего, ставьте первым — СУБД строит индекс в порядке измерений. Для регистра цен: если большинство запросов начинается с Номенклатуры, порядок [Номенклатура, ТипЦены]. Неверный порядок замедляет выборку при больших объёмах данных.

Что такое таблица итогов и нужна ли она?

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

В чём разница между ресурсом и реквизитом регистра сведений?

На уровне СУБД — обе структуры просто колонки таблицы. Семантически: ресурс — основное хранимое значение в разрезе измерений (Цена, Курс); реквизит — вспомогательная информация (Комментарий, Ответственный), не участвующая в уникальности записи.

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

Платформа 1С не проверяет уникальность — данные уходят напрямую в СУБД. При нарушении уникальности ошибку выдаёт сама база данных: SQL-ошибка вместо привычного сообщения 1С. Диагностировать сложнее. Используйте режим только при гарантированной уникальности входных данных.

Как правильно фильтровать данные в СрезПоследних?

Условия по измерениям передавайте в параметрах виртуальной таблицы, не в блоке ГДЕ. Неверно: СрезПоследних() ГДЕ Валюта = &Валюта. Верно: СрезПоследних(&Дата, Валюта = &Валюта). При ошибочном подходе платформа загружает всю таблицу, затем фильтрует — полное сканирование.

Когда лучше использовать менеджер записи, а когда — набор записей?

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

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

Справочник получает единственный автоматический ключ-ссылку при создании. Регистр сведений позволяет задать составной первичный ключ из нескольких измерений вручную. Справочник — для именованных объектов (товары, контрагенты); регистр сведений — для значений в разрезе нескольких параметров (цена товара по типу цен и дате).

Превратите интерес к теме в новую профессию

Оставьте заявку — поможем выбрать программу и расскажем об условиях обучения

Оставить заявку
icon