Удаление и связи
Классы (в вузе и колледже — группы), предметы, учителя (преподаватели), кабинеты (аудитории) и типы занятий удаляются только через окно проверки связей. Приложение само пересчитывает, где запись участвует. Если связи есть, кнопки «Удалить» в окне не будет совсем: удалить запись вместе со всем, что на ней висит, нельзя ни при каких условиях. Ниже разобрано, как прочитать такое окно и что сделать, чтобы удаление стало возможным.
Где находится
Боковое меню → «Справочники» → «Классы», «Предметы», «Учителя», «Кабинеты» или «Типы занятий» → меню строки (три точки в конце строки) → «Удалить запись». Деления удаляются на вкладке «Деления» внутри «Классов», корпуса — на вкладке «Корпуса» внутри «Кабинетов».
Проверить, можно ли удалить запись

- Откройте нужный справочник, например «Справочники» → «Предметы».
- Откройте меню строки и выберите «Удалить запись». Заголовок окна будет «Удалить предмет?» (для класса — «Удалить класс?», для учителя — «Удалить учителя?»).
- Дождитесь, пока окно посчитает связи, и прочитайте цветную плашку вверху.
- Посмотрите на низ окна. Кнопки «Отмена» и «Удалить» означают, что удаление разрешено, а одинокая кнопка «Закрыть» — что удалить сейчас нельзя.
- Зелёная плашка «Предмет можно удалить» означает, что связей нет. Её текст: «Уроков, нагрузок, замен и инцидентов, которые блокируют удаление, не найдено.».
- Жёлтая плашка «Удаление заблокировано» означает, что запись занята. Её текст: «Предмет используется в расписании, нагрузках, заменах или инцидентах. Уберите связи перед удалением.». В других справочниках плашка называет свою запись: «Класс используется…», «Учитель используется…» и так далее.
- Над кнопками «Отмена» и «Удалить» стоит предупреждение «Обратите внимание, что восстановить данные после удаления будет невозможно.».
Прочитать счётчики связей
Удаление разрешено, только когда все четыре счётчика равны нулю: любая единица блокирует запись целиком.
| Счётчик | Что считает | Особенности |
|---|---|---|
| «Нагрузки» | Строки нагрузки, которые ссылаются на запись, по всем расписаниям приложения | Считается отдельно от уроков: удаление строки нагрузки не обнуляет «Уроки» |
| «Уроки» | Уроки, расставленные в сетке | Считается отдельно от нагрузок: пока в сетке стоит хотя бы один урок, запись занята, даже если нагрузку вы уже убрали |
| «Инциденты» | Инциденты, заведённые на конкретные даты | У предмета и типа занятия всегда 0: инциденты заводятся на класс, учителя и кабинет |
| «Замены» | Замены, заведённые на конкретные даты | Ненулевое значение блокирует удаление, но в блок «Где используется» замены не попадают |
Кабинеты, указанные в карточках класса, предмета и учителя, ни на один счётчик не влияют. Это предпочтения для подбора кабинета, а не связь. Поэтому кабинет может удалиться без единого предупреждения, даже если он перечислен в десятке карточек. После удаления загляните в них и подберите замену.
Найти, где запись используется

Ниже счётчиков идёт блок «Где используется». Он появляется, если у записи есть хотя бы одна нагрузка или хотя бы один урок. В блоке перечислены расписания: слева название, справа строка вида «Нагрузки: 12 · Уроки: 30». Расписание без своего имени показано по номеру, например «Расписание #12».
- Под названием расписания стоит серая плашка с его периодом и числом уроков за этот период. По ней видно, куда попали уроки. У расписания, которое держит запись только нагрузкой, такой плашки не будет, а в строке справа встанет «Уроки: 0».
- Связи ищутся по всем расписаниям приложения, а не только по тому, которое открыто у вас сейчас. В списке может оказаться расписание прошлого полугодия.
- Если запись держат только «Инциденты» и «Замены», блока «Где используется» в окне не будет: эти связи привязаны к датам, а не к расписанию.
Убрать связи и удалить запись
- Откройте расписание из блока «Где используется» и перейдите в раздел «Нагрузка», чтобы убрать строки нагрузки с этой записью.
- Снимите уроки в разделе «Сетка уроков» того же расписания.
- Снимите инциденты в разделе «Календарь» на вкладке «Инциденты», а замены на конкретные даты — там же, в календарной неделе.
- Повторите шаги для каждого расписания из списка. Затем снова откройте «Удалить запись» в справочнике: когда плашка станет зелёной, нажмите «Удалить».
Удалить несколько записей сразу

- Выделите нужные строки чекбоксами, как описано в разделе «Выбрать несколько записей» страницы Таблицы, поиск и фильтры.
- В панели внизу экрана нажмите иконку корзины с подсказкой «Удалить» — откроется окно проверки для всей выборки сразу.
- Разверните блок «Какие классы заблокированы» (у предметов — «Какие предметы заблокированы» и так далее). По каждой записи там показаны её связи и список расписаний.
- Нажмите «Закрыть», снимите чекбоксы с заблокированных строк и повторите удаление для оставшихся.
- Дословный текст в окне зависит от справочника. У классов, учителей, кабинетов и типов занятий это «Выбрано записей: 3», а если что-то заблокировано, ещё и «Не удастся удалить записей: 1». У предметов формулировка склоняется: «Выбрано 3 предмета.» и «Не удастся удалить 1 предмет.».
- Массовое удаление есть не везде. У корпусов нет ни чекбоксов, ни панели выбора, на вкладке «Деления» его тоже нет. В обоих местах записи удаляются по одной через меню строки.
Удалить деление или корпус
Деление удаляется на вкладке «Деления» внутри «Классов» пунктом «Удалить» в меню строки. Корпус — на вкладке «Корпуса» внутри «Кабинетов» пунктом «Удалить запись». Оба подтверждения выглядят как короткое меню с кнопкой «Да, удалить». Окна со счётчиками здесь нет.
- Подтверждение «Удалить деление?» поясняет: «Группы деления будут удалены. Если они используются в нагрузках, уроках или заменах, удаление будет отклонено.». Если группы заняты, появится предупреждение «Деление нельзя удалить, пока его группы используются в расписаниях, нагрузках или заменах», и строка останется на месте.
- Такая же проверка срабатывает при редактировании деления. Уменьшаете количество групп, а лишние уже заняты — приложение откажет предупреждением «Деление нельзя изменить: удаляемые группы используются в расписаниях, нагрузках или заменах».
- Подтверждение «Удалить корпус?» предупреждает: «Кабинеты, привязанные к корпусу, останутся без корпуса.». Сами кабинеты не удаляются, у них очищается поле «Корпус».
Если что-то выглядит не так
- В окне удаления вообще нет кнопки «Удалить» — только «Закрыть».
- Почему: Кнопка не отключается, а скрывается. Приложение нашло хотя бы одну связь, и плашка вверху показывает «Удаление заблокировано».
- Что делать: Не ищите кнопку. Читайте счётчики «Нагрузки», «Уроки», «Инциденты», «Замены» и блок «Где используется», снимайте связи там и возвращайтесь в справочник.
- Кнопка «Удалить» была, вы её нажали, а запись осталась в таблице, и сверху появилось предупреждение «Предмет нельзя удалить, пока он используется в расписании, нагрузках, заменах или инцидентах».
- Почему: Перед фактическим удалением связи проверяются ещё раз. Если кто-то из коллег успел поставить урок, пока окно было открыто, удаление отклоняется.
- Что делать: Окно остаётся открытым с обновлёнными счётчиками. Посмотрите, какое расписание добавилось в блок «Где используется», и уберите новую связь.
- Из десяти отмеченных записей заблокирована одна, но кнопки «Удалить» нет ни для одной.
- Почему: Массовое удаление работает по принципу «всё или ничего». Строка «Не удастся удалить записей: 1» означает, что не будет удалена вся выборка.
- Что делать: Нажмите «Закрыть», снимите чекбоксы с записей из блока «Какие … заблокированы» и повторите удаление для оставшихся.
- Вместо счётчиков показано «Не удалось проверить зависимости» и кнопка «Повторить».
- Почему: Данные о связях не загрузились, поэтому приложение не может гарантировать безопасность удаления.
- Что делать: Нажмите «Повторить». Пока проверка не прошла, кнопки «Удалить» не будет — это защита, а не ошибка.
- Корпус удалился сразу после «Да, удалить», без окна со счётчиками.
- Почему: Корпуса — единственный справочник без проверки связей: они не участвуют в нагрузке и уроках напрямую.
- Что делать: Перед удалением убедитесь, что готовы потерять привязку кабинетов к корпусу. У них очистится поле «Корпус», а заданное время перемещения между корпусами перестанет учитываться.
Дальше
- Нагрузка — где убрать строки нагрузки, которые держат запись.
- Сетка уроков — где снять уроки того же расписания.
- Инциденты — где закрыть инциденты и замены на конкретные даты.
- Корпуса — что ещё завязано на корпус, кроме поля «Корпус» у кабинета.