Календарь¶
Обзор¶
Календарь управляет событиями, встречами, повесткой и рабочими днями организации.
Он работает поверх нескольких источников — встроенного календаря 1Формы, Exchange и CalDav — и объединяет их в единый пользовательский сценарий.
Бизнес-объекты¶
Календарь оперирует несколькими видами данных:
- Календарное событие/встреча.
- Агенда (выборка событий по периоду).
- Непрочитанные сообщения календаря.
- Производственный календарь (рабочие/нерабочие дни).
Основные сценарии¶
Календарь охватывает несколько ключевых сценариев — от создания и согласования встречи до загрузки сетки и синхронизации с Outlook.
1. Действия со встречей¶
Создание, изменение, удаление и действия по событию (принять, отклонить и т.п.).
1a. Постановка встречи в чужой календарь¶
Пользователь может создать встречу, находясь в чужом календаре (например, открыв календарь коллеги). Правила:
- Организатором встречи всегда становится текущий пользователь; права на организацию не проверяются.
- Владелец просматриваемого календаря автоматически добавляется в участники.
- Текущий пользователь также добавляется в участники.
- В помощнике по планированию оба участника отображаются корректно.
Функция работает внутри 1Формы и не требует специальных прав в Exchange.
2. Загрузка календарной сетки¶
Пользователь получает события за выбранный период и отображение нерабочих дней для планирования.
3. Работа со счётчиком непрочитанных¶
Счётчик автоматически пересчитывается при изменениях в сообщениях встреч.
4. Управление производственным календарём¶
Администратор обновляет рабочие и праздничные дни; изменения используются в расчётах сроков и в отображении календаря.
5. Календарное представление категории¶
В календарном представлении категории задачи и события отображаются в виде календаря с масштабом день, неделя или месяц. Каждая задача — активная ссылка на карточку. Клик по свободному слоту открывает карточку создания задачи.

Масштабы¶
Доступно несколько масштабов отображения:
| Масштаб | Описание |
|---|---|
| Месяц | Задачи на месяц, список |
| Месяц (Карточка) | Задачи на месяц, карточки |
| Неделя | Задачи на неделю, список |
| Расписание | Задачи на неделю, карточки |
| Рабочая неделя | Задачи на неделю без выходных, список |
| День | Задачи на день, список |
Администратор может предопределить доступные масштабы и масштаб по умолчанию. Выбор пользователя сохраняется между сессиями.
Фильтрация¶
События в календаре можно отобрать по дате и роли пользователя:
| Параметр фильтра | Описание |
|---|---|
| Срок | Активные задачи со сроком, независимо от исполнителя |
| Срок (Исполнитель) | Активные задачи, где пользователь — исполнитель |
| Срок (Ответственный) | Активные задачи, где пользователь — ответственный |
| Срок (Завершённые) | Завершённые/отклонённые задачи, где пользователь — исполнитель |
| Дата завершения | Завершённые/отклонённые задачи по дате завершения |
| Встречи | Только для категорий типа «Календарь» — по диапазону дат в параметрах «С» и «По» |
| Напоминания | Напоминания по задаче |
| Подписи | Запрошенные подписи, акцептант — текущий пользователь |
| Начало работы | Задачи по дате начала работы |
| Создание | Задачи по дате создания |
Дополнительно доступны фильтры по статусу (активные / закрытые / все), по роли (исполнитель, ответственный, организатор, наблюдатель, автор) и по дополнительным параметрам категории (ДП). Все фильтры объединяются по «И»; множественный выбор внутри одного ДП — по «ИЛИ». Настройки сохраняются отдельно для каждой категории.
Поддерживаемые типы ДП для фильтрации. Список ДП формируется автоматически из параметров, настроенных администратором для категории; в фильтры попадают только те ДП, на которые у пользователя есть права просмотра.
| Тип ДП | Как работает фильтр |
|---|---|
| Список (выбор из значений) | Выпадающий список с выбором одного или нескольких значений |
| Да/Нет (чекбокс) | Чекбокс для фильтрации по значению «Да» / «Нет» |
| Текст | Поле для ввода текста (поиск по вхождению) |
| Число | Диапазон значений (от и до) |
| Дата | Выбор диапазона дат |
| Связь с другой категорией | Выпадающий список связанных объектов |
| Пользователь | Выбор пользователя из справочника |
| Lookup / выбор из списка | Выбор одного значения из выпадающего списка |
| MultiLookup | Выбор одного или нескольких значений |
Чтобы ДП появился в фильтрах календаря, помимо его создания и наличия у пользователя прав на просмотр, администратор должен включить ДП в настройку «Настройка вида календарь» в прочих настройках категории (правый клик по категории → Настройки → Прочее → Настройка вида календарь).
Количество одновременно применяемых фильтров по ДП не ограничено, однако при большом числе фильтров на категориях с десятками тысяч записей возможно увеличение времени загрузки данных.
Экспорт в CSV¶
По кнопке «В CSV» выгружаются события за месяц в соответствии с текущими фильтрами:
| Колонка | Обозначение |
|---|---|
| Start | Дата начала события или срок задачи |
| End | Дата окончания или срок задачи |
| Title | Текст задачи или название события |
| Type | CalendarEvent — событие, Task — задача |
| Organizer | Организатор события или исполнитель задачи |
| TaskId | Номер задачи (для типа Task) |
6. Персональный календарь¶
Открывается из иконки «Календарь» в панели навигации. Под индикатором — счётчик непрочитанных событий.
Внешний вид:
- Серым показываются выходные и праздники; рабочие дни на субботу/воскресенье и предпраздничные — белым (как рабочие).
- Текущая дата выделена цветом, текущее время — красная черта.
Периоды: Месяц / Неделя / Рабочая неделя / День / Список. По умолчанию — Рабочая неделя (без выходных, праздничные дни видны). Кнопка «Сегодня» возвращает к текущей дате; стрелки ←/→ — на период вперёд/назад. Из представлений Месяц / Неделя / Рабочая неделя клик по дате переключает на День.

Добавление чужих календарей. Кнопка «Добавить календарь» позволяет видеть события до 5 пользователей одновременно. Каждый получает свой цвет; чтобы убрать — крестик в бейдже.
Кнопка «События» открывает страницу с табличным представлением почтовых календарных событий за последние две недели (организатор, название, дата встречи) — это все изменения по встречам, отображающиеся в почтовом ящике пользователя. Новые события выделяются жирным; кнопка «Прочитать все» помечает прочитанными все видимые на странице. Прочтение синхронизируется с почтовым ящиком пользователя. Клик по строке открывает карточку события; кнопка обновления — рядом. Счётчик непрочитанных рядом с иконкой календаря в панели навигации.
Фильтр¶
В персональном календаре доступны фильтры по дате задачи и роли пользователя:
| Параметр | Что показывает |
|---|---|
| Срок (Исполнитель) | Активные задачи с пользователем-исполнителем по дате срока |
| Срок (Ответственный) | Активные задачи с пользователем-ответственным по дате срока |
| Срок (Завершённые) | Завершённые/отклонённые задачи по дате срока |
| Дата завершения | Завершённые/отклонённые по дате фактического завершения |
| Встречи | Встречи, в которых пользователь участвует |
| Напоминания | Напоминания по задачам |
| Подписи | Запрошенные подписи (пользователь — акцептант) — по дате срока подписи |
| Начало работы | По дате начала работы над задачей |
| Создание | По дате создания задачи |
При просмотре собственного календаря — задачи текущего пользователя; при просмотре чужого — задачи целевого пользователя, видимые текущему по правам.
Выгрузка в CSV¶
Кнопка «В CSV» скачивает события за весь месяц с учётом текущих фильтров (даже если открыт период Неделя или День). Колонки: Start, End, Title, Type (CalendarEvent/Task), Organizer, TaskId.
Отображение событий¶
Событие — активная ссылка на карточку. Длительность отражается растягиванием ячейки от даты/времени начала до конца.
Контекстное меню (ПКМ):
- Не-владелец — пункты «Принять», «Под вопросом», «Отклонить».
- Владелец — «Отменить встречу».

Выбор отражается в поле «Статус» карточки встречи и в виде вертикальной полосы слева:
| Полоса | Статус |
|---|---|
| Зелёная | Свободен |
| Синяя | Занят |
| Жёлтая | Под вопросом |
| Серая | Нет на месте |
Полоса соответствует значению поля «Показывать как» в карточке события. Иконки в правом нижнем углу — повторяющаяся встреча и наличие вложений.
Просмотр календарей других пользователей¶
В профиле пользователя — вкладка «Календарь» (полный) и блок встреч на текущую неделю на вкладке «Профиль». Кнопка раскрытия на полный экран — в правом верхнем углу.
При ограничении доступа администратором события чужих сотрудников отображаются как некликабельные синие слоты «Занят» без деталей. В профиле и краткой карточке отображается только статус (Занят / Под вопросом / Нет на месте / Свободен) и время.
Оповещения о встречах¶
За 15 минут до начала события в правом верхнем углу под панелью навигации появляется баннер: время, название встречи, активная ссылка из поля «Место встречи» (открывается в новой вкладке).
| Действие | Эффект |
|---|---|
| Отложить на 5 / 10 минут / до начала | Скрыть баннер на выбранное время |
| Закрыть (крестик) | Отложить на 2 минуты |
Независимо от выбранного отложенного времени, баннер всегда показывается за 1 минуту до начала. Если встреча отменена — оповещение не показывается.
Цвет баннера — противоположный теме приложения (тёмный в светлой, светлый в тёмной).
При свёрнутом или неактивном окне — приходят уведомления рабочего стола, клик по уведомлению переключает на 1Форму.
Оповещения отключаются в персональных настройках уведомлений: пункт «Напоминания о встречах».
7. Карточка календарного события¶
Способы создания¶
Создать встречу можно из нескольких мест интерфейса:
| Способ | Поведение |
|---|---|
| Кнопка «Создать встречу» в календаре | Открывает пустую карточку |
| Кнопка «Создать» в панели навигации → «Встречу» | Открывает пустую карточку |
| Клик по свободной ячейке календаря | Подтягиваются дата и время начала/окончания (по умолчанию +30 мин). Растягивание мыши без отпускания задаёт более длинный интервал |
| Меню «Запланировать» в шапке задачи | Подписчики задачи автоматически добавляются в участники |
Поля карточки¶
Карточка события состоит из следующих полей:
| Поле | Поведение |
|---|---|
| Организатор | Не редактируется. По умолчанию — создатель события. При создании из чужого календаря: если у текущего пользователя есть право на редактирование чужого календаря в Exchange — организатором подставляется владелец этого календаря; иначе — текущий пользователь, а владелец становится участником |
| Название * | Обязательное |
| Участники | Пользователи системы и внешние email (формат pochta@mail.ru; иначе значение удаляется). Кнопка «Помощник по планированию» открывает подбор времени |
| Длительность | 5 / 10 / 15 / 30 / 45 мин, 1 / 1,5 / 2 ч. После выбора пересчитывает время окончания |
| Дата и время | При включении «Весь день» обе границы — 00:00. Если время не выбрано вручную, начало автозаполняется округлением до ближайшего часа вперёд (16:00, 16:34 или 16:55 → 17:00). При сдвиге окончания раньше начала система автоматически сдвигает начало, чтобы сохранить положительную продолжительность |
| Повторять | Никогда / Ежедневно / Еженедельно / Ежемесячно в тот же день / Ежемесячно на той же неделе / Ежегодно в тот же день / Ежегодно на той же неделе. Недоступно в Exchange-режимах «Синхронизация» и «Выключено» |
| Место встречи | Адрес или ссылка. Кнопка «Ссылка на встречу» автоматически добавляет ссылку на личную ВКС в это поле и подпись со ссылкой в «Описание». Если у комнаты установлен пароль — в описание добавляется строка «Код доступа: XXXX» (можно удалить вручную). Название площадки в поле берётся из параметра «Имя приложения» в Общих настройках приложения режима администрирования. Иконка справа копирует ссылку |
| Показывать как | Тип отсутствия: Отпуск / Встреча / Удалённая работа / Прочее. Тип определяет цвет имени пользователя в системе во время события. Список настраивается администратором |
| Связано с | Номер связанной задачи. После создания — в задачу публикуется автоматический служебный комментарий участникам от имени организатора |
| Статус (для участника) | Принять / Под вопросом / Отклонить. До выбора — «Неизвестно». Кнопки блокируются на время выполнения перехода. После того как переход выполнен, кнопка выбора текущего статуса исчезает, а кнопки остальных действий остаются доступны. Участник всегда может изменить решение — оставшиеся варианты остаются доступными |
| Описание | Текст |
| Файлы | Вложения |

Поведение для отсутствий¶
При создании отсутствия в поле Участники автоматически указывается сотрудник, для которого регистрируется отсутствие (можно регистрировать для других при наличии прав, например HR за заболевшего). При создании из профиля пользователя в поле Уведомить автоматически добавляется его непосредственный руководитель и прямые подчинённые.
Изменение события¶
Кто и как может менять уже созданное событие:
- Список участников может менять только организатор.
- Организатор и каждый участник имеют отдельную карточку события в своём календаре.
- Изменения организатора синхронизируются с задачами всех участников.
- Изменения участника действуют только в его карточке (не у остальных). При сдвиге времени участником организатор получает уведомление.
- При синхронизации с Exchange у участника доступна кнопка «Предложить новое время» с двумя вариантами:
- Принять под вопросом и предложить другое время — при отказе организатора статус меняется на «Под вопросом».
- Отклонить и предложить другое время — при отказе статус «Отклонено» и удаление из участников.
- Кнопка «Ссылка на встречу» в режиме редактирования отображается, если поле «Место встречи» пустое.
- Перетаскивание: перенос карточки в календаре меняет дату и время.
Отменённые встречи¶
Отображаются серыми блоками с перечёркнутым названием. Карточка открывается только для чтения; в ней доступна кнопка «Удалить из календаря» (также через ПКМ по событию). В календарях других пользователей кнопка не отображается.

Вложения в карточке¶
Файлы — в блоке «Вложения». Если у пользователя нет права на редактирование и вложений нет — блок скрыт. При наведении справа: «Скачать всё одним архивом» и «Вложить файл». ПКМ по файлу — Скачать / Открыть в новой вкладке / Скопировать ссылку / Удалить. Офисные файлы открываются для просмотра в R7 / OnlyOffice.
Учёт трудозатрат¶
При назначении встречи участникам автоматически фиксируются плановые трудозатраты по времени встречи. По окончании встречи у тех, кто принял участие (статус «Принять»), фиксируются фактические трудозатраты.
8. Синхронизация с Outlook / Exchange¶
При включённой синхронизации события из 1Формы появляются в Outlook (и наоборот) в течение одной минуты. Изменения параметров встречи в одной системе отражаются в другой. Цвет встречи в Outlook соответствует значению поля «Показывать как» в карточке события.
Технические подробности синхронизации с Exchange — provider-ews.md.
Повторяющиеся события: правила синхронизации¶
Повторяющиеся встречи синхронизируются по особым правилам — изменение повтора в одной системе по-разному отражается в другой:
| Действие в системе-источнике | Эффект в системе-приёмнике |
|---|---|
| Снятие признака повтора в 1Форме | В Exchange признак повтора не снимается (событие остаётся повторяющимся) |
| Установка/изменение повтора в 1Форме | Новые созданные встречи в Exchange не синхронизируются |
| Снятие или изменение повтора в Outlook | В 1Форме соответствующие встречи отклоняются |
| Удаление ряда повторяющихся встреч в 1Форме | В Exchange они отклоняются |
| Установка повтора в Outlook | В 1Форме создаётся соответствующее повторение и связанные задачи |
При повторяющейся задаче с количеством повторов «Без ограничений» изначально создаётся фиксированное число повторов (по умолчанию 50, настраивается в общих настройках), затем встречи досоздаются ежедневно.
В ленту пользователю отправляется уведомление только при создании первого повторяющегося события — для последующих повторов сообщений не приходит.
При увольнении участника встречи (организатора или участника) встреча создаётся от имени служебного пользователя «Диспетчер задач»; в полях «Участники встречи» / «Организатор» указывается этот пользователь. Для уволенного встречи не создаются; уже созданные до увольнения остаются как есть.
Внешние пользователи¶
«Внешние» — те, кто не зарегистрирован в 1Форме, но имеет доступ к календарям Exchange.
Если встреча создаётся в Exchange:
- Организатор-внешний сотрудник → в 1Форме встреча ставится от служебного пользователя; в поле «Участники» — email внешнего; задача организатора не создаётся.
- Организатор — пользователь 1Формы с выключенной синхронизацией Exchange → организатором становится он, но задача организатора не создаётся.
- Участник-внешний сотрудник → в поле «Участники» указывается его email.
- Участник — пользователь 1Формы с выключенной синхронизацией → попадает в «Участники», но задача ему не ставится.
Если встреча создаётся в 1Форме:
- Внешний сотрудник не может быть организатором.
- Организатор с выключенной синхронизацией Exchange → встреча не создаётся в Exchange.
- Участник-внешний сотрудник → задача в 1Форме ему не ставится; при включённой синхронизации у организатора — встреча ставится только в Exchange.
- Участник 1Формы с выключенной синхронизацией → задача ставится в 1Форме; при включённой синхронизации у организатора — также ставится встреча в Exchange.
9. Помощник по планированию¶
Позволяет подобрать время встречи, удобное для всех приглашённых участников.
Как открыть: кнопка «Помощник по планированию» в карточке создания встречи (категория типа «Календарь»).
Что отображается:
- Временная сетка с занятыми и свободными слотами каждого участника.
- При наведении на занятый слот — всплывающая подсказка с названием встречи из календаря пользователя.
- Участники отображаются с учётом их источника календаря (встроенный календарь 1Формы или Exchange).
Позволяет выбрать временной слот, в котором все участники свободны, и сразу использовать его для встречи.

Бизнес-правила¶
Работа календаря подчиняется нескольким общим принципам:
- Для каждой операции используется активный и доступный пользователю источник календаря.
- Изменения событий отражаются и во внешнем источнике, и в интерфейсе 1Формы.
- Производственный календарь является единой опорной моделью для нерабочих дней.
- Ошибки источника календаря не должны оставлять интерфейс в незаметно устаревшем состоянии.
- Фильтрация календаря категории:
- Все фильтры объединяются по принципу «И»
- Множественный выбор внутри одного ДП работает по принципу «ИЛИ»
- Настройки фильтров изолированы по категориям и пользователям
- В фильтрацию по ДП попадают только те параметры, на которые у пользователя есть права просмотра
- Экспорт в CSV учитывает все активные фильтры
Связи с другими доменами¶
Календарь опирается на смежные домены:
- tasks/business.md — встречи и события как задачи.
- integrations/business.md — внешние источники календаря (Exchange, CalDav).
- notifications/business.md — оповещения и счётчики.
Диагностика синхронизации и типичные ошибки настройки — в admin.md.