Период в 1С 8.3: от кнопки с тремя точками до запроса в коде
Содержание
Чтобы выбрать период в 1С 8.3, нажмите кнопку ... рядом с полем «Период» в отчёте или обработке. Откроется окно выбора: щёлкните год, квартал или месяц — даты «с» и «по» заполнятся сами. В журнале документов то же окно вызывается командой Ещё → Установить период.
Частое заблуждение — что период надо вбивать вручную, день за днём, и обязательно ставить последнюю дату на день позже, «чтобы захватить конец». Не надо. Стандартное окно выбора периода в 1С 8 само берёт дату окончания до конца дня, 23:59:59. Лишний день в отчёте только исказит обороты.
Окно выбора периода: как оно устроено
Платформа 1С 8.3 показывает одинаковое окно в любой конфигурации — Бухгалтерии, ЗУП, Управлении торговлей. Отличаются только места, откуда его открывают.
В окне есть:
- 📅 переключатель года со стрелками влево и вправо;
- 🗓️ кнопки кварталов и месяцев выбранного года;
- ✏️ два поля дат — начало и окончание периода;
- 📋 режим списка стандартных периодов: «Этот месяц», «Прошлый квартал», «С начала этого года» и подобные.
Как выбрать период за месяц:
- Нажмите
...у поля периода. - Стрелками выберите год.
- Щёлкните нужный месяц — например, март.
- Проверьте поля: 01.03 — 31.03 выбранного года.
- Нажмите «Выбрать» или дважды щёлкните по месяцу.
Квартал и год выбираются так же — одним щелчком по соответствующей кнопке. Произвольный интервал, например с 15.01 по 10.02, задают прямо в полях дат.
Как выбрать период за квартал или полугодие:
- 📌 квартал — щелчок по кнопке квартала, например «2 квартал» даст 01.04 — 30.06;
- 📌 полугодие — отдельной кнопки нет, задайте даты 01.01 — 30.06 в полях начала и окончания;
- 📌 9 месяцев — даты 01.01 — 30.09.
Проверяйте год в окне перед выбором месяца. В январе легко щёлкнуть декабрь текущего года вместо прошлого и получить пустой отчёт: данных за будущий декабрь ещё нет.
Если нужен период «от начала года до конца текущего месяца», не набирайте даты. Выберите в списке стандартных периодов вариант «С начала этого года» — он сам сдвигается каждый месяц.
Чем стандартный период отличается от двух дат
Даты «с» и «по» — фиксированные значения. Вариант из списка («Этот месяц», «Прошлый месяц») — относительный: 1С пересчитывает его от текущей или рабочей даты при каждом открытии. Для отчётов, которые вы смотрите регулярно, относительный вариант удобнее.
В 1С 8.2 окно выглядело иначе, но логика та же: выбрать стандартный интервал или задать две даты. Дальше речь про интерфейс «Такси» платформы 8.3.
Ввод дат с клавиатуры: быстрее, чем мышью
Мышью выбирать удобно, если период стандартный. Для произвольных дат клавиатура быстрее: не нужно листать календарь.
Что работает в любом поле даты 1С 8.3:
| Действие | Как сделать |
|---|---|
| Ввести дату без точек | Наберите 010326 — маска сама расставит точки: 01.03.26 |
| Открыть календарь или окно выбора | F4 в поле или кнопка ... |
| Перейти к следующему полю | Tab |
| Сдвинуть дату на день вперёд или назад | Клавиши + и - в поле даты |
| Отменить выбор в открытом окне | Esc |
Двузначный год 1С достраивает до четырёхзначного. Набрали 26 — получите 2026.
Клавиши + и - меняют ту часть даты, на которой стоит курсор. Поставили курсор на месяц — сдвинется месяц, а не день. Проверяйте поле глазами перед формированием отчёта.
Рабочая дата
Рабочая дата — это дата, которую 1С подставляет в новые документы и от которой считает относительные периоды. По умолчанию она равна дате компьютера.
Её меняют в главном меню: Сервис → Параметры. Снимите флажок использования текущей даты компьютера и укажите нужную.
Пример. В апреле бухгалтер закрывает март. Он ставит рабочую дату 31.03 — и все новые документы создаются мартом, а вариант «Этот месяц» в отчётах показывает март.
После закрытия периода верните рабочую дату к текущей. Иначе новые апрельские документы молча уйдут в март.
Период в отчётах: что выбирать и где
В отчётах период задают в шапке формы: поля «Период с … по …» или одно поле «Период» с кнопкой .... После изменения нажмите «Сформировать» — без этого таблица покажет старые данные.
Периодичность внутри отчёта
Период отвечает на вопрос «за какое время». Периодичность — на вопрос «с какой разбивкой». Это разные настройки, и их часто путают.
- 📊 Период: 01.01 — 31.12.
- 📈 Периодичность: «Месяц».
- ✅ Итог: двенадцать строк с оборотами по месяцам вместо одной суммы за год.
В Бухгалтерии 3.0 разбивку по периодам дают, например, «Анализ счета» и «Карточка счета» — ищите в настройках отчёта поле «Периодичность» или «Детализация по периодам».
Отчёты на дату, а не за период
Часть отчётов спрашивает одну дату: остатки товаров, задолженность, баланс на конец. Здесь важен момент времени.
| Что нужно | Какую дату ставить |
|---|---|
| Остаток на начало марта | Начало периода 01.03 — колонка «Начальный остаток» |
| Остаток на конец квартала | Последний день квартала: 31.03, 30.06, 30.09, 31.12 |
| Долг контрагента «на сегодня» | Текущая дата |
Если отчёт выводит колонки «Начальный остаток» и «Конечный остаток», он сам считает их от границ выбранного периода. Отдельно дату остатка указывать не нужно.
Журналы документов и списки
В списках документов период ограничивает, какие документы видны. Где это задают:
- Откройте список, например «Реализация (акты, накладные)».
- Нажмите
Ещё → Установить период. - Выберите месяц, квартал или интервал.
- Нажмите «Выбрать».
Чтобы снова показать все документы, откройте то же окно и очистите обе даты.
Документ «пропал» из списка — первым делом проверьте период списка, потом отбор по организации. Период, установленный однажды, список запоминает и показывает при следующем открытии.
Дата самого документа — отдельная история. Её меняют в шапке документа, в поле «от». После смены даты документ надо перепровести: движения по регистрам пересчитаются на новую дату.
Период в Бухгалтерии и ЗУП: свои особенности
Окно выбора общее, но конфигурации добавляют свои правила.
1С:Бухгалтерия 3.0
- 🔒 Дата запрета изменения. Закрытый период защищают в
Администрирование → Проведение документов, флажок «Даты запрета изменения». Документ с датой раньше запрета не проведётся. - 🧮 Закрытие месяца . В обработке закрытия месяца период выбирают стрелками по месяцам в шапке. Закрывайте месяцы строго по порядку: январь, потом февраль.
- 📑 Регламентированные отчёты. Период — квартал, полугодие, 9 месяцев или год — выбирают при создании отчёта. Поменять его в готовом отчёте нельзя: создают новый.
1С:ЗУП 3.1
В ЗУП главный период — месяц начисления. Это поле формата «месяц.год», а не дата. Оно есть в документах «Начисление зарплаты и взносов», «Ведомость», «Отражение зарплаты в бухучёте».
Важно различать:
| Поле | Что значит |
|---|---|
| Месяц начисления | За какой месяц считается зарплата |
| Дата документа | Когда документ оформлен; может быть уже следующим месяцем |
| Период в отчёте | Интервал, за который собираются данные |
Пример. Зарплату за март начисляют 03.04. Месяц начисления — март, дата документа — 03.04. В отчёте «Расчётный листок» за март начисления попадут, за апрель — нет.
Свои периоды под рукой: сохранение настроек
Если вы каждую неделю формируете один и тот же отчёт за прошлый месяц, не выбирайте период заново.
Порядок такой:
- Откройте отчёт и задайте период стандартным вариантом, например «Прошлый месяц».
- Настройте остальное: организацию, отборы, группировки.
- Через
Ещёсохраните вариант отчёта под понятным именем: «Продажи за прошлый месяц». - В следующий раз выберите этот вариант — период пересчитается сам.
Фиксированные даты в сохранённом варианте не сдвигаются. Через полгода такой отчёт покажет старый месяц, и это легко не заметить.
Сравнение периодов и динамика
Сравнить два периода в 1С можно тремя путями. Выбор зависит от того, что именно нужно увидеть.
| Способ | Когда подходит | Ограничения |
|---|---|---|
| Один отчёт с периодичностью «Месяц» или «Квартал» | Динамика внутри года | Колонки идут подряд, разницу считаете сами |
| Два отчёта за разные периоды | Март этого года против марта прошлого | Нужно держать два окна или выгружать |
| Выгрузка в Excel | Сравнение с формулами и графиками | Данные перестают обновляться |
Мини-кейс: выручка март к марту
Задача — сравнить выручку за март текущего и прошлого года.
- Сформируйте «Анализ счета» по счёту 90.01 за март текущего года.
- Сохраните результат через кнопку сохранения в файл, формат XLSX.
- Поменяйте период на март прошлого года и сформируйте снова.
- Сведите обе таблицы в Excel.
Допустим, выручка в марте прошлого года — 1 200 000 руб., в этом — 1 380 000 руб. Прирост: 180 000 руб., или 15%.
Для динамики за год быстрее одна таблица: период 01.01 — 31.12, периодичность «Месяц». Сразу видно, в каком месяце провал.
Программная работа с периодами (для разработчиков)
В платформе есть тип СтандартныйПериод и системное перечисление ВариантСтандартногоПериода. Это тот же механизм, что в окне выбора.
Открыть окно выбора периода из своей формы
&НаКлиенте
Процедура ВыбратьПериод(Команда)
Диалог = Новый ДиалогРедактированияСтандартногоПериода;
Диалог.Период = Период;
Оповещение = Новый ОписаниеОповещения("ПослеВыбораПериода", ЭтотОбъект);
Диалог.Показать(Оповещение);
КонецПроцедуры
&НаКлиенте
Процедура ПослеВыбораПериода(ВыбранныйПериод, ДополнительныеПараметры) Экспорт
Если ВыбранныйПериод <> Неопределено Тогда
Период = ВыбранныйПериод;
КонецЕсли;
КонецПроцедуры
Здесь Период — реквизит формы типа «Стандартный период». Если пользователь закрыл окно крестиком, в обработчик придёт Неопределено, и старое значение останется.
Проще всего вообще не писать код: реквизит типа «Стандартный период», выведенный на форму, сам даёт кнопку выбора.
Относительный период в коде
ПериодОтчета = Новый СтандартныйПериод;
ПериодОтчета.Вариант = ВариантСтандартногоПериода.ПрошлыйМесяц;
НачалоОтчета = ПериодОтчета.ДатаНачала;
КонецОтчета = ПериодОтчета.ДатаОкончания;
Границы периода в запросе
Главная ловушка — дата окончания без времени. Дата 31.03 в базе — это 31.03 00:00:00. Документы за 31 марта с временем 14:20 в выборку не попадут.
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Реализация.Ссылка,
| Реализация.Дата
|ИЗ
| Документ.РеализацияТоваровУслуг КАК Реализация
|ГДЕ
| Реализация.Дата МЕЖДУ &НачалоПериода И &КонецПериода";
Запрос.УстановитьПараметр("НачалоПериода", НачалоДня(ДатаС));
Запрос.УстановитьПараметр("КонецПериода", КонецДня(ДатаПо));
Для остатков на конец дня включительно используйте границу:
Запрос.УстановитьПараметр("Граница", Новый Граница(КонецДня(ДатаОстатка), ВидГраницы.Включая));
В системе компоновки данных параметр «Период» делают типа «Стандартный период», а для «НачалоПериода» и «КонецПериода» задают выражения &Период.ДатаНачала и &Период.ДатаОкончания. Пользователь видит одно поле с кнопкой ... вместо двух дат.
Когда период выбран, а данные не те
Ниже — ситуации, после которых бухгалтеры пишут в поддержку «отчёт врёт». Выберите свой симптом.
Сервис → Параметры и включите использование текущей даты компьютера.Ещё → Установить период и очистите даты, проверьте отборы.