14. Механизмы сложных периодических расчетов
#25

Готовишься к экзамену?

Полнофункциональный тренажер @bot_1cnik_bot с полноценным обучением, режимом экзамена и подробной статистикой.

Перейти в бота

В механизме сложных периодических расчетов 1С у записи регистра расчета есть свойства «ПериодДействия», «ПериодДействияНачало» и «ПериодДействияКонец». Как формируется значение свойства «ПериодДействия» относительно «ПериодДействияНачало»?

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

Пояснение

Полезно различать «интервал действия» и «период действия как ключ периода». 1) «ПериодДействияНачало» и «ПериодДействияКонец» задают реальный интервал, когда запись «действует» (например, отпуск с 15.03 по 28.03 или оклад с 10.05 по 31.05). Эти значения нужны, чтобы понимать пересечения интервалов, вытеснения и фактический период действия. 2) «ПериодДействия» - это не начало интервала в буквальном смысле, а «привязка к расчетному периоду», которая хранится как начало периода по периодичности регистра (месяц/день и т. п.). Платформа приводит это значение к границе периода, чтобы удобно группировать и отбирать записи по расчетным периодам и обеспечить корректную работу механизма расчетов. Пример (периодичность регистра - МЕСЯЦ): - «ПериодДействияНачало» = 15.03.2025 13:45 - «ПериодДействияКонец» = 28.03.2025 23:59 - Тогда «ПериодДействия» будет = 01.03.2025 00:00 (начало месяца), то есть не совпадет с «ПериодДействияНачало». Пример (периодичность регистра - ДЕНЬ): - «ПериодДействияНачало» = 15.03.2025 13:45 - «ПериодДействия» будет = 15.03.2025 00:00 (начало дня). Практический совет: если нужно найти записи «за месяц», обычно фильтруют по «ПериодДействия». Если нужно проверить точные пересечения интервалов (например, вытеснения/наложения), всегда смотрят «ПериодДействияНачало/Конец» (или соответствующие фактические интервалы, если они формируются механизмом).