Какие виртуальные таблицы бывают у регистра сведений
Виртуальная таблица | Описание и назначение |
---|---|
РегистрСведений.СведенияОСтавкахНалогов | Основная таблица — содержит все записи регистра: поля Период, Регистратор, все Измерения и Атрибуты. |
--- | --- |
РегистрСведений.СведенияОСтавкахНалогов.СрезДанных | Срез данных — для заданного Периода (параметр Период) возвращает по каждой комбинации измерений единственную запись (последнюю по времени регистрации). |
--- | --- |
РегистрСведений.СведенияОСтавкахНалогов.СрезДанныхПоРегистратору | Срез по регистратору — для списка значений Регистратор возвращает только те записи, которые зарегистрированы указанными документами. |
--- | --- |
РегистрСведений.СведенияОСтавкахНалогов.СрезДанныхПоИзмерению | Срез по одному измерению — позволяет получить по заданному измерению (например, по справочнику «Налог») все записи вне зависимости от прочих измерений. |
--- | --- |
Далее — детальное описание каждой:
1. Основная таблица (РегистрСведений.ИмяРегистра)
-
**Поля
**-
Период (тип Дата) — момент или начало периода действия записи.
-
Регистратор (ссылка на документ) — кто и когда зарегистрировал запись.
-
Измерения — справочники или перечисления, по которым регистр строит «ось» данных.
-
Атрибуты — значения, связанные с конкретным срезом измерений (числовые, строковые, булевы).
-
-
Когда использовать
– При выборке всех записей регистра, например для детального аудита или миграции.
– Когда нужно увидеть историю изменений (все триггеры).
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
Период,
Регистратор,
Налог КАК Измерение,
Ставка КАК Атрибут
ИЗ
РегистрСведений.СведенияОСтавкахНалогов";
2. СрезДанных (.СрезДанных)
-
Что делает
По заданным Измерениям и Периоду выбирает единственную запись — ту, у которой максимальный Регистратор ≤ Период. -
Параметры
– Период (обязательно)
– Для каждого измерения — либо фильтр (справочник), либо Не определено (возвращаются все). -
Результат
– Только поля Измерений и Атрибутов (без регистратора и периода).
– Группируется по измерениям.
Запрос.Текст =
"ВЫБРАТЬ
Налог,
Ставка
ИЗ
РегистрСведений.СведенияОСтавкахНалогов.СрезДанных(Период = &Период)
ГДЕ
Налог В (&СписокНалогов)";
3. СрезДанныхПоРегистратору (.СрезДанныхПоРегистратору)
-
Назначение
Когда важно получить записи именно из конкретного документа (регистратора), а не последнее значение по периоду. -
Параметры
– Регистратор — одиночная ссылка или список документов. -
Результат
– Возвращает все измерения и атрибуты тех строк, где поле Регистратор совпадает с указанным.
Запрос.Текст =
"ВЫБРАТЬ
Налог,
Ставка
ИЗ
РегистрСведений.СведенияОСтавкахНалогов.СрезДанныхПоРегистратору(Регистратор = &Документ)";
4. СрезДанныхПоИзмерению (.СрезДанныхПоИзмерению)
-
Когда применять
Если нужно получить для одного измерения (например, для конкретного налога) всю связанную информацию за всё время, без учёта других измерений. -
Параметр
– Название измерения и значение, передаётся в виде «Измерение = &Значение». -
Результат
– Таблица со столбцами: Период, Регистратор, Атрибуты (все прочие), но только для указанного измерения.
Запрос.Текст =
"ВЫБРАТЬ
Период,
Регистратор,
Ставка
ИЗ
РегистрСведений.СведенияОСтавкахНалогов.СрезДанныхПоИзмерению(Налог = &Налог)";
Дополнительные замечания
-
Параметры виртуальных таблиц можно комбинировать:
– Вместо отдельного запроса «по регистратору» можно взять .СрезДанных с фильтром по регистратору и периоду. -
Отличие от регистров накопления
– В накопительных и регламентных регистрах есть ещё виртуальные таблицы ТекущиеДанные и Обороты, но в регистре сведений они отсутствуют. -
Производительность
– Всегда старайтесь указывать все параметры (особенно Период и значимые измерения) — иначе платформа вернёт все записи и на больших объёмах может сильно «тормозить».
Понимание этих четырёх ключевых виртуальных таблиц позволяет гибко и эффективно извлекать любые «срезы» данных из ваших регистров сведений и строить надёжные отчёты и обработки.