Закрытие окон, форм и зависших сеансов в 1С:Предприятии

· 9 мин

Содержание

Закрыть текущее окно в 1С можно сочетанием Ctrl+F4 или крестиком на вкладке. Все открытые окна закрываются через главное меню, пункт «Окна». Если форма не реагирует, остаётся завершить сеанс: через диспетчер задач на своём компьютере или через консоль администрирования на сервере.

Ниже способы идут от безопасных к жёстким. Сначала то, что не теряет данные, потом то, что обрывает работу. Описание относится к платформе 8.3 с интерфейсом «Такси».

Закрыть окно или вкладку: стандартные способы

В «Такси» каждая форма открывается во вкладке. Есть несколько способов её убрать.

  • ❌ Крестик на вкладке. Появляется справа от названия, когда вкладка активна или под курсором.
  • ⌨️ Ctrl+F4. Закрывает активное окно. Самый быстрый способ, рука остаётся на клавиатуре.
  • 🖱️ Средняя кнопка мыши (колёсико) по вкладке. Закрывает вкладку, не переключаясь на неё.
  • 🔙 Esc. Закрывает часть форм: диалоги выбора, окна с вопросами, формы списка в режиме подбора. В обычном документе Esc может не сработать, это нормально.
  • 🧭 Кнопка «Закрыть» внизу формы. Есть в диалогах, обработках и отчётах.

Если документ или справочник изменён и не записан, программа спросит: сохранить изменения, не сохранять или отменить закрытие. Читайте вопрос внимательно. Кнопка «Нет» выкинет всё, что вы ввели после последней записи.

Разница между «Записать» и «Записать и закрыть» в том, что вторая сразу закрывает форму. Для проведённого документа это ещё и проведение. Если нужно просто сохранить черновик и остаться, жмите «Записать».

Закрыть все вкладки, кроме нужной

Когда вкладок накопилось два десятка, закрывать их по одной долго. Щёлкните правой кнопкой по заголовку вкладки и посмотрите контекстное меню: в нём есть команды массового закрытия. Точный набор пунктов зависит от релиза платформы, поэтому если нужной команды нет, воспользуйтесь способом из следующего раздела.

Как не потерять данные при закрытии

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

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

Закрыть все окна через главное меню

Главное меню открывается кнопкой в левом верхнем углу окна (стрелка или значок в зависимости от версии платформы и настроек интерфейса). В нём есть раздел «Окна». Там собраны команды управления открытыми окнами, в том числе закрытие всех сразу.

Пошагово:

  1. Откройте главное меню в левом верхнем углу.
  2. Перейдите в пункт «Окна».
  3. Выберите команду, которая закрывает все окна.
  4. Ответьте на вопросы о несохранённых данных, если они появятся.

Рабочий стол и начальная страница при этом остаются: закрываются только формы объектов, отчёты и обработки.

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

Таблица: какой способ когда

СпособКогда использоватьРиск
Ctrl+F4 или крестикЗакрыть одно окноМинимальный, программа спросит про несохранённое
Контекстное меню вкладкиУбрать несколько вкладокМинимальный
Главное меню → «Окна»Закрыть всё разомМожно по привычке ответить «Нет» на запрос о записи
Диспетчер задачОкно не отвечаетПотеря несохранённых данных этого сеанса
Консоль кластераВисит чужой сеансОбрыв работы пользователя

Зависшее окно: что делать по порядку

Признаки зависания: заголовок окна «(Не отвечает)», курсор мыши с песочными часами дольше минуты, форма не перерисовывается. Сначала убедитесь, что это зависание, а не долгая операция. Проведение документа за период, формирование большого отчёта, обновление регистров могут занимать минуты, и в это время окно ведёт себя так же.

Шаг 1. Подождать и проверить нагрузку

Подождите две-три минуты. Если вы запустили тяжёлый отчёт, прерывать его раньше времени бессмысленно. Откройте диспетчер задач и посмотрите, растёт ли использование процессора и памяти процессом 1С. Если загрузка есть, программа работает. Если стоит на нуле, а окно мёртвое, она действительно повисла.

Шаг 2. Попробовать закрыть штатно

Нажмите Ctrl+F4, затем Alt+F4 для окна приложения. Иногда запрос на закрытие обрабатывается с задержкой. Если после Alt+F4 появился диалог с вопросом о несохранённых данных, он мог спрятаться за другим окном. Нажмите Alt+Tab и поищите его.

Шаг 3. Завершить процесс 1С на своём компьютере

  1. Нажмите Ctrl+Shift+Esc, откроется диспетчер задач.
  2. Найдите процесс с названием «1С:Предприятие». Тонкий клиент называется 1cv8c.exe, толстый клиент и конфигуратор — 1cv8.exe.
  3. Выберите его и нажмите «Снять задачу».

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

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

Шаг 4. Если процесс не закрывается

Редко, но бывает: процесс не снимается и остаётся в диспетчере. Откройте вкладку «Подробности», выберите процесс правой кнопкой и используйте «Завершить дерево процессов». Если и это не помогает, остаётся перезагрузка компьютера. До неё стоит проверить, не занят ли процесс чтением с сетевого диска, который перестал отвечать: тогда причина в сети, а не в 1С.

Администрирование сеансов: закрыть чужой или повисший сеанс на сервере

Бывает наоборот: у пользователя всё закрыто, но база считает, что он ещё в системе. Это видно по занятой лицензии, по невозможности начать обновление или перенос базы. Чтобы работать с такими сеансами, нужен доступ к серверу 1С или к консоли администрирования.

Консоль администрирования серверов 1С

  1. Запустите консоль и подключитесь к кластеру. Потребуется учётная запись администратора кластера, если она задана.
  2. Раскройте нужную информационную базу и перейдите в раздел «Сеансы».
  3. В списке найдите сеанс по имени пользователя, приложению и времени последней активности.
  4. Выберите его и нажмите кнопку удаления сеанса (обычно красный крестик в панели).

В списке сеансов есть колонка с названием приложения: «1CV8C» для тонкого клиента , «1CV8» для толстого, «WebClient» для веб-клиента, «Designer» для конфигуратора, «BackgroundJob» для фоновых заданий. Фоновые задания трогайте осторожно: обрыв регламентного задания посреди обработки может оставить данные в промежуточном состоянии.

Прежде чем отключать сеанс, позвоните пользователю или проверьте по времени активности, что человек действительно не работает. Отключённый сеанс теряет всё несохранённое, и это нельзя отменить.

Утилита rac

Те же действия выполняются из командной строки. Утилита rac входит в состав серверной части платформы. Список сеансов и завершение выглядят так:

rac cluster list
rac session list --cluster=<идентификатор кластера>
rac session terminate --cluster=<идентификатор кластера> --session=<идентификатор сеанса>

Идентификаторы — длинные строки вида GUID, которые выводят первые две команды. Полный перечень параметров смотрите в справке rac help. Для автоматизации (закрыть все сеансы перед обновлением) утилиту вызывают из скрипта, но первое время гоняйте его на тестовой базе.

Если нужно завершить работу всех пользователей

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

Чем отличается закрытие в тонком, толстом и веб-клиенте

Поведение зависит от того, какой клиент запущен.

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

С веб-клиентом есть нюанс. Если пользователь просто закрыл вкладку браузера, сеанс на сервере остаётся до тех пор, пока не пройдёт установленное время простоя. Лицензия в это время занята. Если нужно освободить её быстро, завершайте сеанс из консоли.

В тонком клиенте и в браузере горячие клавиши могут перехватываться самим браузером. Например, Ctrl+W закроет вкладку браузера целиком, а не окно внутри 1С. Внутри веб-клиента надёжнее пользоваться крестиком на вкладке 1С.

Память и кэш: когда после закрытия окон всё равно тормозит

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

Если после перезапуска те же тормоза, виноват может быть клиентский кэш. Он хранится в профиле пользователя Windows в каталогах %LOCALAPPDATA%\1C\1cv8 и %APPDATA%\1C\1cv8. Там лежат кэш метаданных, настройки окон и списки баз. Подкаталоги с именами в виде GUID содержат кэш конкретных баз.

Чистка выполняется так:

  1. Закройте все окна 1С и убедитесь в диспетчере задач, что процессов нет.
  2. Закройте и остальных пользователей на этом же компьютере (например, на терминальном сервере) или очищайте только свой профиль.
  3. Удалите подкаталоги с GUID в указанных папках либо запустите клиент с параметром /ClearCache.

Пример строки запуска:

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /ClearCache

Путь к программе у вас может отличаться, смотрите свойства ярлыка. Список баз (файл ibases.v8i) не трогайте, иначе придётся добавлять базы заново.

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

Частые ошибки

  • Закрывают окно крестиком главного окна Windows и удивляются, что пропали все вкладки. Это закрытие всего приложения.
  • Нажимают «Нет» на вопрос о несохранённых изменениях вместо «Да» или «Отмена».
  • Снимают процесс 1С в диспетчере задач, когда он просто выполняет тяжёлую операцию. Через минуту отчёт всё равно бы сформировался.
  • Завершают сеанс администратора, не проверив, что это не регламентное задание обмена.
  • Чистят кэш при запущенном клиенте: часть файлов занята, очистка проходит наполовину.
Окно зависло: порядок действий
Выполнено: 0 / 5

Частые вопросы

Какой клавишей закрыть окно в 1С?
Ctrl+F4 закрывает активное окно внутри программы. Alt+F4 закрывает всё приложение целиком.
Почему 1С не закрывается после нажатия на крестик?
Либо программа ждёт ответа на вопрос о несохранённых данных (диалог мог оказаться за другими окнами), либо выполняется длинная операция. Проверьте через Alt+Tab и загрузку процессора.
Как закрыть сразу все вкладки?
Через главное меню, пункт «Окна». Для выборочного закрытия используйте контекстное меню заголовка вкладки.
Освобождается ли лицензия, если закрыть вкладку браузера с веб-клиентом?
Не сразу. Сеанс остаётся на сервере до истечения тайм-аута неактивности. Быстрее освободить лицензию через завершение сеанса в консоли администрирования.
Можно ли завершить сеанс другого пользователя без доступа к серверу?
Нет. Для этого нужна консоль администрирования или rac с правами на кластер. Без них остаётся попросить пользователя выйти самостоятельно или обратиться к администратору.
Потеряются ли данные, если снять задачу в диспетчере?
Потеряется то, что не записано. Уже проведённые и записанные документы остаются в базе.