К статье
Практический материал

Быстрый старт · 11 мин

1С: что такое период и как с ним работать

Разбираем, что такое период в 1С: дата документа, периодичность регистров, период в отчётах и запросах. Практические примеры, ошибки и проверка результата.

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

В широком смысле период в 1С — это привязка данных ко времени. Каждый документ имеет дату, каждая запись регистра — момент времени, каждый отчёт строится за выбранный интервал. Понимание того, как 1С хранит и использует эти временные метки, позволяет правильно формировать отчётность, корректно переносить остатки и не ломать последовательность проведения документов.

Ниже разобраны основные значения термина: дата документа, период регистра сведений и накопления, периодичность регистров, стандартные периоды в отчётах и запросах, а также типовые ошибки и способы их проверки.

Что означает термин «период» в разных контекстах 1С

Слово «период» в платформе 1С:Предприятие используется минимум в четырёх смыслах, и их важно различать. Первое — дата документа: каждый документ имеет дату и время, которые определяют его положение в хронологии учёта. Второе — поле «Период» в записях регистров: оно показывает, к какому моменту времени относится запись. Третье — периодичность регистра: настройка, определяющая, с какой точностью хранятся итоги (в пределах месяца, квартала, года и т.д.). Четвёртое — произвольный интервал дат, который пользователь задаёт при построении отчёта или выборке данных.

Дополнительно существуют «стандартные периоды» — предопределённые интервалы вроде «Этот месяц», «Прошлый квартал», «Год». Они используются в отчётах на СКД и в динамических списках, чтобы пользователь мог быстро выбрать типовой диапазон без ручного ввода дат.

Дата документа как период учёта

Дата документа — главный временной атрибут. При проведении документа его движения по регистрам записываются с моментом времени, равным дате документа. Именно поэтому документ, созданный «задним числом», формирует проводки в прошлом периоде, что влияет на итоги и отчётность за этот месяц.

Важно понимать разницу между датой документа и датой его фактического ввода в базу. Пользователь может внести приходную накладную сегодня, но поставить дату прошлого месяца — и 1С отразит операцию в прошлом периоде. Это штатное поведение, но оно требует контроля: если период уже закрыт (установлена дата запрета изменения данных), платформа не даст провести такой документ без специальных прав.

Ещё один нюанс — время внутри даты. Два документа с одинаковой датой, но разным временем проводятся в своей последовательности, и это влияет на расчёт остатков: например, списание товара «в минус» может возникнуть, если расход проведён раньше прихода по времени в пределах одного дня.

Поле «Период» в регистрах сведений и накопления

В регистрах накопления и бухгалтерии поле «Период» заполняется автоматически при проведении документа-регистратора и равно его дате. Итоги по регистру накопления платформа хранит с заданной периодичностью — обычно по месяцам. Это значит, что запрос «остатки на конец месяца» выполняется быстро, а запрос остатков на произвольную дату требует дополнительного расчёта от ближайшей сохранённой границы.

В регистрах сведений периодичность настраивается при создании объекта: регистр может быть непериодическим или периодическим (в пределах секунды, дня, месяца, квартала, года). Классический пример периодического регистра сведений — «Курсы валют»: каждая запись хранит курс на конкретную дату, а функция получения значения «на дату» возвращает последнюю запись, не превышающую указанный момент.

Режим «Периодичность» влияет и на уникальность записей: в регистре, периодическом в пределах дня, не может быть двух записей с одинаковым набором измерений на одну и ту же дату. Это частая причина ошибки «Запись с такими ключевыми полями существует» при загрузке данных.

Документ не попадает в отчётДата документа вне периода отчёта

Сравните дату документа с границами периода отчёта

Остатки «съехали» после ввода задним числомИзменены движения в прошлом периоде

Проверьте необходимость пересчёта итогов и восстановления последовательностей

Ошибка дублирования записи в регистре сведенийНарушена уникальность периода

Проверьте периодичность регистра и даты загружаемых записей

Период в отчётах и стандартные периоды

Практически каждый отчёт в 1С начинается с выбора периода: пользователь задаёт дату начала и дату окончания. В типовых конфигурациях рядом доступна кнопка выбора стандартного периода — «Сегодня», «Эта неделя», «Этот месяц», «Этот квартал», «Этот год», «Прошлый месяц» и другие варианты. Стандартный период вычисляется относительно текущей даты, поэтому один и тот же вариант «Этот месяц» в разные дни даёт разные границы.

Обратите внимание на границы интервала: период «с 01.03 по 31.03» включает весь последний день до 23:59:59. Если в отчёте вручную указана конечная дата без времени, платформа обычно трактует её как конец дня, но в запросах разработчику нужно контролировать это явно — иначе документы, проведённые в последний день после полуночи, могут выпасть из выборки.

Период в отчётах на СКД

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

Период в запросах и встроенном языке

Для разработчиков период чаще всего задаётся через параметры запроса и виртуальные таблицы. Например, у регистра накопления вида «Остатки» есть виртуальная таблица «ОстаткиИОбороты», принимающая начало и конец периода. Для периодических регистров сведений используются виртуальные таблицы «СрезПервых» и «СрезПоследних» — они возвращают первую или последнюю запись на указанную дату.

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

bsl
Запрос = Новый Запрос("ВЫБРАТЬ Курс ИЗ РегистрСведений.КурсыВалют.СрезПоследних(&Период, Валюта = &Валюта)");
Запрос.УстановитьПараметр("Период", КонецДня(ДатаКурса));

Также в языке существуют функции работы с датами: НачалоМесяца(), КонецМесяца(), ДобавитьМесяц(), НачалоДня(), КонецДня(). Они позволяют программно вычислять границы периода вместо ручного ввода дат, что исключает ошибки с количеством дней в месяце и високосными годами.

Порядок действий: как проверить период данных
  1. 1
    Откройте документ или запись и посмотрите её дату
  2. 2
    Сравните дату с границами периода, заданного в отчёте
  3. 3
    Проверьте, не установлена ли дата запрета изменения данных (Администрирование — Даты запрета изменения)
  4. 4
    Сформируйте отчёт заново с корректным периодом
  5. 5
    Сверьте итоги с ожидаемыми значениями

Закрытие периода и дата запрета изменения

«Закрытие периода» в учётных конфигурациях — это комплекс операций в конце месяца: расчёт себестоимости, амортизации, курсовых разниц, формирование регламентных документов. До его выполнения данные месяца считаются предварительными. В типовых решениях есть обработка «Закрытие месяца», которая выполняет операции в строгой последовательности.

После завершения отчётного периода администратор обычно устанавливает дату запрета изменения данных: документы раньше этой даты нельзя создавать, изменять или проводить. Это защищает сданную отчётность от случайных правок. Если нужно внести исправление в закрытый период, дату запрета временно сдвигают, вносят изменения, перепроводят зависимые документы и закрывают период заново — такие действия должны выполняться осознанно и, как правило, бухгалтером.

Типичные ошибки
01
Ввод документов задним числом без перепроведения последующих — нарушается последовательность и искажаются остатки
02
Указание конца периода без учёта времени — документы последнего дня выпадают из выборки
03
Снятие даты запрета без возврата — закрытый период остаётся открытым для случайных правок
04
Использование непериодического регистра для исторических данных — теряется история изменений значений
05
Формирование отчёта без периода на большой базе — долгое выполнение и лишняя нагрузка

Как проверить, что период задан правильно

После настройки отчёта или загрузки данных стоит выполнить простую проверку. Во-первых, сверить границы периода, отображаемые в шапке отчёта, с ожидаемыми. Во-вторых, убедиться, что контрольный документ, который точно должен попасть в выборку, присутствует в результате. В-третьих, сравнить итоговые суммы с независимым источником — оборотно-сальдовой ведомостью или отчётом за смежный период.

Контрольные точки

Как проверить результат

Границы периода в отчёте
Норма

Совпадают с нужным интервалом, включая весь последний день

Тревожный признак

Конечная дата меньше ожидаемой или время обрезает часть дня

Контрольный документ
Норма

Присутствует в отчёте со своей датой

Тревожный признак

Документа нет, хотя его дата внутри периода

Итоги за период
Норма

Сходятся с ОСВ или смежным отчётом

Тревожный признак

Расхождения без объяснимой причины

Перед массовой загрузкой данных за прошлые периоды сделайте копию информационной базы и проверьте на ней, как загрузка повлияет на итоги: восстановить случайно перезаписанные движения без резервной копии практически невозможно.
ПЗ
Практическое замечание
Итог

Что важно запомнить

Период в 1С — это привязка данных ко времени: дата документа, поле «Период» в регистрах, периодичность хранения итогов и интервал дат в отчётах. Контролируйте границы периода, время внутри дня и дату запрета изменений — это защищает учёт от искажений.

Частые вопросы о периоде в 1С

Чем период отличается от даты документа?

Дата документа — конкретный момент времени, когда совершена операция. Период — более широкое понятие: это может быть интервал дат в отчёте, момент записи регистра или периодичность хранения итогов. Дата документа при проведении становится периодом его записей в регистрах.

Почему документ не попадает в отчёт, хотя его дата внутри периода?

Чаще всего причина в том, что документ не проведён, помечен на удаление или в отчёте заданы дополнительные отборы (по организации, складу, счёту). Реже — конечная дата периода задана без учёта времени и обрезает часть последнего дня.

Что такое периодичность регистра сведений?

Это настройка, определяющая точность хранения записей во времени: в пределах секунды, дня, месяца, квартала или года. Периодический регистр хранит историю изменений значений, непериодический — только актуальное состояние без привязки к датам.

Что делает дата запрета изменения данных?

Она блокирует создание, изменение и проведение документов раньше указанной даты. Это защищает закрытые отчётные периоды от случайных правок. Для внесения исправлений дату временно сдвигают, а после работы возвращают обратно.

Как получить значение периодического регистра сведений на нужную дату?

Используйте виртуальные таблицы «СрезПоследних» (последнее значение на дату) или «СрезПервых» (первое значение после даты) в запросе, передав момент времени параметром. Учитывайте, что срез включает записи с датой, меньшей или равной указанной.

Можно ли безопасно провести документ задним числом?

Технически — да, если период не закрыт датой запрета. Но после этого нужно перепровести последующие документы (восстановить последовательность) и пересчитать зависимые итоги, иначе остатки и отчётность будут искажены. В закрытом отчётном периоде такие действия согласуются с бухгалтером.