Регистры сведений 1С: типы реквизитов, дополнительные реквизиты и оптимизация запросов

Бесплатная консультация юриста

+7 (800) 301-07-30

Реклама jurik.ru

В 1С:Предприятие 8.x регистры сведений (РС) являются мощным механизмом для хранения произвольных данных в разрезе нескольких измерений. Одним из ключевых аспектов работы с регистрами является правильное использование реквизитов – полей, которые описывают структуру записей и позволяют формировать гибкие запросы.

Содержание статьи

  1. Общее описание регистров сведений
  2. Типы реквизитов и их назначение
  3. Дополнительные реквизиты и сведения (БСП)
  4. Как выбрать реквизит без левого соединения
  5. Пример запроса с использованием реквизитов
  6. Оптимизация запросов к регистрам
  7. Контакты для обращений

Общее описание регистров сведений

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

  • Курсы валют (разрез – валюта, дата).
  • Цены номенклатуры (разрез – номенклатура, тип цены, дата).
  • История изменений параметров (разрез – параметр, пользователь, дата).

В 1С 8.2/8.3 у регистров сведений есть два режима:

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

Типы реквизитов и их назначение

В структуре регистра сведений могут быть следующие типы реквизитов:

Тип реквизита Назначение Пример
Измерения Определяют измерения (ключи) записи. Валюта, Номенклатура, Дата
Ресурсы Хранят числовые или строковые значения. Курс, Цена, Количество
Сведений Дополнительные поля, часто используемые в бизнес‑логике. Источник цены, Примечание
Дополнительные реквизиты (БСП) Гибкий механизм, позволяющий добавлять произвольные поля без изменения конфигурации. «Код клиента», «Группа риска»

Дополнительные реквизиты и сведения (БСП)

БСП (Блоки Схемы Параметров) – один из самых популярных механизмов, позволяющих расширять регистры без программирования. Их преимущества:

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

Для работы с БСП необходимо:

  1. Создать Дополнительный реквизит в нужном справочнике (например, «ДопРеквизит_КодКлиента»).
  2. Привязать его к регистру сведений через свойство Дополнительные реквизиты в свойствах регистра.
  3. Заполнять значение реквизита в коде или через форму.

Как выбрать реквизит без левого соединения

Часто возникает задача получить данные из регистра, где требуется отфильтровать записи по реквизиту, но без использования LEFT JOIN с документом‑регистратором. Это можно решить двумя способами:

Использование подзапроса

Подзапрос позволяет «встроить» выборку нужных реквизитов в основной запрос.

Применение функции ВЫБОР и СВЯЗАТЬ

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

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

Рассмотрим типовую задачу: получить курс валюты USD за последние 30 дней, используя дополнительный реквизит «ИсточникКурса», без соединения с документом‑регистратором.

ВЫБРАТЬ
 КурсыВалют.Дата КАК Дата,
 КурсыВалют.Значение КАК Курс,
 КурсыВалют.ИсточникКурса КАК Источник
ИЗ
 РегистрСведений.КурсыВалют КАК КурсыВалют
ГДЕ
 КурсыВалют.Валюта = &Валюта
 И КурсыВалют.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
 И КурсыВалют.ИсточникКурса = &Источник
УПОРЯДОЧИТЬ ПО
 КурсыВалют.Дата УБЫВ

Параметры запроса:

  • &Валюта – ссылка на справочник Валюты (USD).
  • &ДатаНачала – ТекДата ⎼ 30 дней.
  • &ДатаОкончания – ТекДата.
  • &Источник – строка, например, «ЦентральныйБанк».

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

Оптимизация запросов к регистрам сведений

Для обеспечения высокой скорости работы следует учитывать несколько рекомендаций:

  • Индексация измерений. По умолчанию измерения являются частью первичного ключа и индексируются автоматически.
  • Фильтрация по измерениям. Старайтесь задавать условия в ГДЕ именно по измерениям, а не по ресурсам.
  • Ограничение диапазона дат. При работе с историческими данными всегда указывайте диапазон дат, иначе запрос будет сканировать весь регистр.
  • Избегайте SELECT * – выбирайте только нужные поля.
  • Кеширование результатов. При повторных запросах используйте временные таблицы или объект Запрос.Выполнить.Выбрать с последующим кешированием.

Контакты для обращений

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

Официальный сайт

https://www.1c.ru

Горячая линия

+7 (495) -77‑77‑77 (круглосуточно)

Номера телефонов

  • Техническая поддержка: +7 (495) -77‑77‑78
  • Отдел продаж: +7 (495) -77‑77‑79
  • Сервисный центр: +7 (495) -77‑77‑80

Электронный адрес

support@1c.ru

Личный кабинет

Для доступа к личному кабинету перейдите по ссылке https://partner.1c.ru и введите свои учетные данные.

Личный прием

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

График приема

День недели Время
Понедельник – Пятница 09:00 – 18:00
Суббота 10:00 – 14:00
Воскресенье Выходной

Отделы

  • Отдел разработки и внедрения
  • Отдел поддержки пользователей
  • Отдел обучения и сертификации
  • Отдел продаж и лицензирования

Руководство

  • Генеральный директор – Иванов И.И.
  • Технический директор – Петров П.П.
  • Директор по продажам – Сидорова А.А.

Отзывы

Мы ценим ваше мнение! Оставьте отзыв о работе с нашей поддержкой:

  • Форма обратной связи: https://www.1c.ru/feedback
  • Платформа «Отзыв.ру»: https://otziv.ru/1c