Какие виртуальные таблицы бывают у регистра расчётов

1. Физическая таблица регистра расчётов

  • РегистрРасчета.<ИмяРегистра>
    — содержит все записи–движения регистра (с полями Период, Регистратор, измерения и ресурсы).
    — Используется редко в запросах, т. к. требует ручной агрегации.

2. ДанныеГрафика

  • Когда доступна
    Только в регистрах расчётов, где в метаданных указан внешний регистр сведений с «графиком» (параметры: «График», «ЗначениеГрафика», «ДатаГрафика»).

  • Назначение
    Автоматически рассчитывает для каждого числового ресурса регистра:

    • <Ресурс>БазовыйПериод — длина базового периода (из регистра сведений);

    • <Ресурс>ПериодДействия — продолжительность «штатного» периода;

    • <Ресурс>ПериодРегистрации — разница между временем регистрации и базовым периодом;

    • <Ресурс>ФактическийПериодДействия — „реальный“ отработанный период.

**Пример использования

<br/>**ВЫБРАТЬ
Сотрудник,
НачислениеКоличествоПериодДействия КАК НормаЧасов,
НачислениеКоличествоФактическийПериодДействия КАК ОтработаноЧасов
ИЗ
РегистрРасчета.Начисления.ДанныеГрафика()
ГДЕ
Период МЕЖДУ &Начало И &Конец;

3. ФактическийПериодДействия

  • Когда доступна
    В любом регистре расчётов с поддержкой периодов действия (даже без привязки к регистру сведений-графику).

  • Назначение
    Возвращает интервалы времени, в течение которых реально действовали виды расчёта:

Поле Описание
ПериодДействияНачало Дата/время начала действия
--- ---
ПериодДействияКонец Дата/время окончания действия
--- ---
<Ресурс>ФактическийПериод Значение ресурса за указанный интервал
--- ---

**Пример

<br/>**ВЫБРАТЬ
ПериодДействияНачало,
ПериодДействияКонец,
УдержаниеСумма
ИЗ
РегистрРасчета.Удержания.ФактическийПериодДействия()
## **4\. База&lt;ИмяРегистра&gt;**

Когда доступна
Если ваш регистр расчётов входит в План видов расчётов и при этом опирается на один или несколько «базовых» планов расчётов. Тогда платформа автоматически создаёт для каждого такого базового регистра виртуальную таблицу:

<br/>РегистрРасчета.&lt;Имя&gt;.База&lt;ИмяБазовогоРегистра&gt;
  • Их количество равно числу базовых регистров в настройках планов расчётов.

  • Назначение
    Позволяет получить «базовые» значения ресурсов из других регистров, необходимые для расчёта текущего.

  • Параметры
    Обычно два массива:

    • ИзмеренияОсновногоРегистра — названия измерений текущего регистра;

    • ИзмеренияБазовогоРегистра — соответствующие имена измерений базового регистра.

**Пример

<br/>**ВЫБРАТЬ
ОсновныеНачисления.БазаОсновныеНачисления.Сумма КАК БазаПоОсновным,
ОсновныеНачисления.БазаДопНачисления.Сумма КАК БазаПоДопДоп
ИЗ
РегистрРасчета.ДополнительныеНачисления
.БазаОсновныеНачисления(
ИзмеренияОсновногоРегистра = Новый МассивЗначений("Сотрудник","Период"),
ИзмеренияБазовогоРегистра = Новый МассивЗначений("Сотрудник","Период")
)
.БазаДопНачисления(
ИзмеренияОсновногоРегистра = Новый МассивЗначений("Сотрудник","Период"),
ИзмеренияБазовогоРегистра = Новый МассивЗначений("Сотрудник","Период")
)

5. Итоговая таблица доступных виртуальных объектов

Виртуальная таблица Когда доступна Что возвращает
РегистрРасчета.<Имя> Всегда Все «сырые» записи регистра
--- --- ---
.ДанныеГрафика() Регистры с поддержкой внешнего графика Расчётные поля по периодам действия
--- --- ---
.ФактическийПериодДействия() Любые регистры расчётов с периодом действия Интервалы действия + ресурс за каждый интервал
--- --- ---
.База<ИмяБазового> При настройках планов расчётов с базовыми планами Значения ресурсов из «базовых» регистров
--- --- ---

Рекомендации

  1. Проверяйте в Конструкторе запроса, какие виртуальные таблицы доступны к конкретному регистру.

  2. Используйте ДанныеГрафика для учёта сложных «графиков» работы и начислений.

  3. Обращайтесь к базам расчётов через .База…, если нуждаетесь в «первичных» значениях для построения зависимых расчётов.

  4. Не забывайте указывать параметры (периоды и массивы измерений), иначе результат может быть избыточным или пустым.

Понимание и умелое применение этих виртуальных таблиц позволит вам точно и эффективно формировать любые отчёты и обработки на основе расчётных регистров 1С.