Производственный календарь, графики работы и календарь дат в 1С 8.3: куда смотреть и как править
Содержание
Главный календарь в 1С 8.3 — справочник «Производственные календари». В ЗУП 3.1 он открывается из раздела Настройка, в Бухгалтерии 3.0 — из раздела Справочники, группа «Предприятие». В любой конфигурации его можно открыть через Главное меню → Все функции → Справочники → Производственные календари.
Рядом живут ещё два «календаря», которые часто путают с производственным: графики работы сотрудников и обычный календарь для выбора даты. Ниже — где найти каждый, чем они отличаются и как их настроить, чтобы не сбился расчёт зарплаты, отпусков и сроков.
Где календарь находится в типовых конфигурациях
Пути в Бухгалтерии 3.0, ЗУП 3.1 и Управлении торговлей 11 разные, но сам справочник один и тот же: он входит в библиотеку стандартных подсистем, на которой построены все современные типовые решения.
| Конфигурация | Производственный календарь | Графики работы |
|---|---|---|
| ЗУП 3.1 | Настройка → Производственные календари | Настройка → Графики работы сотрудников |
| Бухгалтерия 3.0 | Справочники → Предприятие → Производственный календарь | Зарплата и кадры → Справочники и настройки → Графики работы |
| УТ 11, КА 2, ERP | через Все функции или поиск по разделу НСИ и администрирование | справочник «Графики работы» через Все функции |
Если пункта нет на панели раздела, его могли скрыть настройкой. Нажмите шестерёнку в правом верхнем углу панели раздела, выберите «Настройка навигации» и верните команду в список видимых.
Как включить «Все функции»
Команда «Все функции» показывает все объекты конфигурации, даже те, что не выведены в меню. По умолчанию она скрыта.
- Откройте
Главное меню(кнопка с тремя полосками слева вверху). - Перейдите в
Сервис → Параметры. - Поставьте флажок «Отображать команду “Все функции”» и нажмите «Применить».
- Снова откройте
Главное меню → Все функции, раскройте ветку «Справочники».
Дальше ищите «Производственные календари» и «Графики работы». Если прав на справочник нет, строка будет видна, но откроется с ошибкой доступа — это вопрос к администратору базы.
Обычный календарь для выбора даты
Тот календарь, что выпадает в полях дат, вызывается кнопкой справа от поля или клавишей F4, когда курсор стоит в поле. Отдельно открыть его можно из главного меню платформы: Главное меню → Сервис → Календарь. Это просто сетка месяцев без выходных и праздников из учёта — для подсчёта рабочих дней она не подходит.
Какие бывают календари в 1С 8.3 и чем они отличаются
Ошибка «я поправил календарь, а табель не изменился» почти всегда возникает из-за того, что правили не тот объект.
- 📅 Производственный календарь — какой день по закону рабочий, выходной, праздничный или предпраздничный. Один на страну, плюс региональные.
- 🕘 График работы сотрудников — сколько часов работает конкретный сотрудник в конкретный день. Строится на основе производственного календаря.
- 👤 Индивидуальный график — документ в ЗУП, который меняет норму одному человеку на месяц, не трогая общий график.
- 🗓 Календарь выбора даты — элемент интерфейса, к учёту не относится.
- 📝 Список задач бухгалтера в разделе
ГлавноеБухгалтерии 3.0 — напоминания о сроках отчётов и платежей. Сроки там берутся из сервиса, а не из производственного календаря.
| Объект | Что хранит | На что влияет |
|---|---|---|
| Производственный календарь | Вид каждого дня года | Нормы времени, сроки в рабочих днях, графики |
| График работы | Часы по дням | Табель, оклад по часам, отпуска, больничные |
| Индивидуальный график | Часы одного сотрудника на период | Расчёт этого сотрудника за месяц |
Производственный календарь отвечает на вопрос «какой это день», график — «сколько в этот день работают». Если праздник стоит правильно, а у сотрудника в табеле 8 часов, виноват график.
Как заполнить, добавить и отредактировать календарь
Заполнение из сервиса
Обычно календарь заполняется сам. Данные приходят вместе с обновлением классификаторов через интернет
-поддержку: Администрирование → Интернет-поддержка и сервисы. Если поддержка подключена и включено автоматическое обновление
, новый год появляется после того, как Правительство утвердит переносы выходных.
Проверить просто: откройте календарь «Российская Федерация», переключите год стрелками над сеткой. Пустой следующий год в октябре–ноябре — нормально. Пустой текущий год — повод обновить классификаторы вручную.
Ручная правка дня
Бывает, что постановление о переносе вышло, а обновление ещё не пришло. Тогда день правят руками.
- Откройте производственный календарь и выберите год.
- Выделите нужную дату в сетке.
- Через контекстное меню (правая кнопка мыши) задайте вид дня: рабочий, суббота, воскресенье, предпраздничный или праздник.
- Для переноса используйте команду переноса дня: укажите дату, с которой день переносится. Программа поменяет виды двух дней местами.
- Запишите календарь.
После правки календаря графики работы сами не меняются. Откройте каждый затронутый график, нажмите «Заполнить» и запишите его заново. В ЗУП 3.1 программа обычно сама предупреждает, что графики нуждаются в обновлении, и предлагает это сделать.
Если за месяц уже начислена зарплата, перезаполнение графика изменит норму времени. Пересчитайте начисления и проверьте табель, иначе оклад по часам и средний заработок разойдутся с уже выплаченным.
Региональный календарь
Для регионов со своими праздниками (например, Татарстан или Башкортостан) создают отдельный календарь. Нажмите «Создать» в списке производственных календарей и укажите базовый календарь «Российская Федерация». Тогда общие праздники придут из базового, а региональные дни вы отметите сами. Затем выберите этот календарь в графике работы обособленного подразделения.
Новый график работы
В ЗУП 3.1 при создании графика задают способ заполнения: по неделям (пятидневка, шестидневка) или по циклам произвольной длины для сменщиков, например «сутки через трое». Флажок учёта праздников делает праздничные дни выходными, а предпраздничные — короче на час, как требует ст. 95 ТК РФ.
Как искать календарь в нетиповой или доработанной конфигурации
В самописных базах и сильно изменённых типовых меню бывает другим. Порядок поиска такой:
- 🔍 Поиск по меню — строка поиска в шапке программы. Введите «календар» без окончания: найдутся и «календари», и «календарь».
- 📂
Все функции → СправочникииВсе функции → Регистры сведений. Данные производственного календаря в конфигурациях на БСП лежат в регистре «Данные производственного календаря». - 🛠 В Конфигураторе: дерево метаданных, поле поиска над ним. Ищите справочники «ПроизводственныеКалендари» и «Календари». Второе — это внутреннее имя графиков работы в БСП, в интерфейсе оно показывается как «Графики работы».
Если ничего не нашлось, в конфигурации календаря может не быть вообще — его не обязательно включают в отраслевые и самописные решения. Тогда даты и нормы считает собственный механизм разработчика, и спрашивать надо у него.
Типичные сбои с календарями и как их исправить
Ещё одна частая ошибка — удаление «лишнего» календаря. Пометка на удаление календаря, на который ссылаются графики, ломает их заполнение. Сначала замените ссылку в графиках, потом удаляйте.
Связь с Google Календарём и Outlook
В Бухгалтерии 3.0 и ЗУП 3.1 встроенной синхронизации с внешними календарями нет. Синхронизацию встреч и задач с Google и Exchange дают решения, где есть работа с событиями: 1С:Документооборот и CRM-решения. Там это настраивается в параметрах учётной записи пользователя.
Для типовой бухгалтерии работают два подхода:
- 📤 Выгрузка в файл
.ics. Формат iCalendar понимают Google, Outlook и Яндекс Календарь. Файл импортируют один раз — например, список праздников или сроков отчётности. - 🔌 Обмен через API. Обработка по расписанию отправляет события в календарь через
HTTPСоединение. Для Google нужна авторизация OAuth 2.0, поэтому это работа программиста, а не настройка.
Пример простой обработки, которая выгружает праздники года в .ics. Код для конфигураций на БСП, выполняется на сервере:
Функция ВыгрузитьПраздникиВICS(Календарь, Год, ИмяФайла) Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Данные.Дата КАК Дата
|ИЗ
| РегистрСведений.ДанныеПроизводственногоКалендаря КАК Данные
|ГДЕ
| Данные.ПроизводственныйКалендарь = &Календарь
| И Данные.Год = &Год
| И Данные.ВидДня = ЗНАЧЕНИЕ(Перечисление.ВидыДнейПроизводственногоКалендаря.Праздник)
|УПОРЯДОЧИТЬ ПО
| Дата";
Запрос.УстановитьПараметр("Календарь", Календарь);
Запрос.УстановитьПараметр("Год", Год);
Выборка = Запрос.Выполнить().Выбрать();
Текст = Новый ТекстовыйДокумент;
Текст.ДобавитьСтроку("BEGIN:VCALENDAR");
Текст.ДобавитьСтроку("VERSION:2.0");
Текст.ДобавитьСтроку("PRODID:-//1C export//RU");
Пока Выборка.Следующий() Цикл
Начало = Формат(Выборка.Дата, "ДФ=yyyyMMdd");
Конец = Формат(Выборка.Дата + 86400, "ДФ=yyyyMMdd");
Текст.ДобавитьСтроку("BEGIN:VEVENT");
Текст.ДобавитьСтроку("UID:" + Начало + "-holiday@1c");
Текст.ДобавитьСтроку("DTSTART;VALUE=DATE:" + Начало);
Текст.ДобавитьСтроку("DTEND;VALUE=DATE:" + Конец);
Текст.ДобавитьСтроку("SUMMARY:Нерабочий праздничный день");
Текст.ДобавитьСтроку("END:VEVENT");
КонецЦикла;
Текст.ДобавитьСтроку("END:VCALENDAR");
Текст.Записать(ИмяФайла, КодировкаТекста.UTF8);
Возврат Выборка.Количество();
КонецФункции
Выборка.Дата + 86400 — следующий день: событие на весь день в iCalendar заканчивается датой после него. Перед запуском откройте в Конфигураторе регистр и перечисление и сверьте имена: в старых релизах БСП набор видов дней был короче.
Дорабатывайте не саму типовую конфигурацию, а внешнюю обработку или расширение. Тогда обновления пройдут без ручного сравнения и объединения.
Автоматизация работы с календарями
Автообновление
Включите автоматическое обновление классификаторов в разделе Администрирование → Интернет-поддержка и сервисы. В файловой базе регламентные задания выполняются, пока в базе работает хотя бы один пользователь. В клиент-серверной — по расписанию на сервере, независимо от пользователей.
Расчёт дат по рабочим дням в коде
В БСП есть общий модуль КалендарныеГрафики. Функция ДатаПоКалендарю отсчитывает от даты нужное число рабочих дней по графику. Ей пользуются механизмы сроков в типовых конфигурациях, и её же стоит вызывать в своих доработках вместо ручного перебора дат. Точный список параметров посмотрите в описании функции в Конфигураторе — он менялся от версии к версии.
Сколько рабочих дней в месяце, проще получить запросом к тому же регистру:
"ВЫБРАТЬ
| КОЛИЧЕСТВО(Данные.Дата) КАК РабочихДней
|ИЗ
| РегистрСведений.ДанныеПроизводственногоКалендаря КАК Данные
|ГДЕ
| Данные.ПроизводственныйКалендарь = &Календарь
| И Данные.Дата МЕЖДУ &НачалоМесяца И &КонецМесяца
| И Данные.ВидДня В (
| ЗНАЧЕНИЕ(Перечисление.ВидыДнейПроизводственногоКалендаря.Рабочий),
| ЗНАЧЕНИЕ(Перечисление.ВидыДнейПроизводственногоКалендаря.Предпраздничный))"
Предпраздничный день остаётся рабочим, просто на час короче. Поэтому он входит в счёт рабочих дней, а при подсчёте часов его считают как 7 вместо 8 при пятидневке на 40 часов.
Ежегодная проверка
Каждый декабрь стоит пройти короткий список. Он занимает несколько минут и снимает проблемы с январской зарплатой.
Частые вопросы
Можно ли вести несколько производственных календарей в одной базе?
Влияет ли производственный календарь на сроки сдачи отчётности?
Почему следующий год в календаре пустой?
Как вернуть календарь к данным из сервиса после ручной правки?
Где посмотреть норму часов за месяц для сотрудника?
Источники
- Трудовой кодекс РФ, ст. 112 «Нерабочие праздничные дни»
- Трудовой кодекс РФ, ст. 95 «Продолжительность работы накануне нерабочих праздничных и выходных дней»