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

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

Где используется регистр сведений в 1С

Разбираем, где в 1С применяются регистры сведений: курсы валют, цены, штрихкоды, ФИО. Виды регистров, типовые примеры, ошибки и проверка результата.

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

Типичный признак того, что данные хранятся в регистре сведений: вы открываете в пользовательском режиме список, похожий на таблицу с колонками «Период», «Номенклатура», «Цена» — и не находите ни одного документа, который бы эту таблицу формировал проведением (если регистр независимый). Именно так устроены курсы валют, штрихкоды, адреса контрагентов, ставки НДС и десятки других наборов данных.

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

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

Регистр сведений состоит из измерений (разрезы хранения), ресурсов (сами хранимые значения) и реквизитов (дополнительные атрибуты записи). Например, в регистре «Цены номенклатуры» измерения — «Номенклатура» и «Тип цен», ресурс — «Цена». Уникальность записи определяется комбинацией измерений и, для периодических регистров, периодом.

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

Виды регистров сведений и где применяется каждый

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

Вид регистраОсобенностьТиповые примеры
Непериодический, независимыйОдно значение на комбинацию измерений, истории нетШтрихкоды номенклатуры, настройки обмена, соответствия объектов при синхронизации
Периодический, независимыйЗначение действует с даты, хранится история измененийКурсы валют, цены номенклатуры, учётная политика организации
Подчинённый регистраторуЗаписи создаются и изменяются только документомЗначения свойств объектов, данные, вводимые документом «Установка цен»
Периодический, подчинённый регистраторуИстория значений, управляемая документамиКадровые сведения сотрудников (в ряде конфигураций), ставки и коэффициенты

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

Типовые примеры: где регистры сведений встречаются в конфигурациях

Торговля и склад

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

Бухгалтерия и финансы

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

Кадры и зарплата

В «Зарплате и управлении персоналом» значительная часть кадровых данных — ФИО физических лиц, паспортные данные, составы семей, воинский учёт — хранится в периодических регистрах сведений. Благодаря этому программа корректно формирует документы задним числом: берёт фамилию сотрудницы, действовавшую на дату приказа, а не после смены фамилии.

Интеграции и обмены

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

Не подставляется ценаРегистр сведений цен

Проверьте запись на дату документа и нужный вид цен

Неверный курс валютыРегистр «Курсы валют»

Сверьте период записи и кратность валюты

Дубли при обменеРегистр соответствий объектов

Проверьте, есть ли связь объектов двух баз

Старая фамилия в отчётеРегистр «ФИО физических лиц»

Проверьте периодичность и дату записи

Как понять, что данные хранятся в регистре сведений

В пользовательском режиме списки регистров сведений обычно доступны через раздел «Настройки», «Администрирование» или специализированные команды («Цены номенклатуры», «Курсы валют»). Внешне это таблица без итогов, где часто есть колонка «Период». Если у списка нет кнопки создания документа, а запись добавляется прямо в таблицу — это почти наверняка независимый регистр сведений.

В конфигураторе найти нужный регистр проще всего через поиск по метаданным: Ctrl+Shift+F по имени реквизита формы или через «Все функции» в режиме предприятия — там регистры сведений перечислены отдельной веткой. В запросе к регистру сведений используются виртуальные таблицы СрезПоследних и СрезПервых для периодических регистров.

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

Когда проектировать собственный регистр сведений

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

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

Маршрут решения

Как выбрать вид регистра

Нужно знать значение на любую прошедшую датуДелайте регистр периодическим
Изменения должны утверждаться документомПодчините регистр регистратору
Значение одно на объект, история не нужнаИспользуйте независимый непериодический регистр
Нужны остатки или оборотыРегистр сведений не подходит — нужен регистр накопления

Типичные ошибки и ограничения

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

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

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

Проверка результата после изменений

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

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

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

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

Запись добавлена вручную
Норма

Значение видно в списке и подставляется в документы

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

Записи нет в списке или документ берёт старое значение

Периодический регистр
Норма

Срез последних на дату возвращает нужное значение

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

Возвращается значение с другой даты или пусто

Изменение структуры регистра
Норма

Обновление прошло без ошибок, данные на месте

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

Ошибки реструктуризации, потеря данных по измерению

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

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

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

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

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

Как быстро найти, в каком регистре хранится нужное значение?

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

Почему запрос к регистру возвращает много лишних строк?

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

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

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

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

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

Итог

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

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