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