1с имеются активные сеансы работы с программой которые не могут быть завершены принудительно
Кому подойдет информация: Администратор 1С, Системный администратор, Бухгалтер
Подойдет для конфигураций: Все типовые конфигурации 1С новых редакций
В данной публикации будет рассмотрено, как завершить работу пользователей в базах новых редакций, работающих в режиме управляемого приложения. Зачастую это необходимо, чтобы можно было выполнить операции, требующие монопольного режима базы (например, удаление помеченных на удаление объектов, выполнение тестирования и исправления базы). Тогда в базе остается активным только один пользователь, выполняющий такие операции.
Вообще необходимо стараться избегать необходимости завершать работу пользователей базы принудительно, а завершать работу пользователей стандартным закрытием сеансов работы. Т.к. каждое такое "выкидывание" пользователей из базы является по своей сути аварийным завершением работы с базой. И именно в такие аварийные завершения работы могут возникать или накапливаться ошибки (но не обязательно каждый раз) в пользовательских файлах, которые могут потом выражаться в нетиповом поведении 1С у отдельных пользователей, потребуется очистка кэша базы на отдельном рабочем месте. Но, когда других вариантов не остается, то приходится удалять активные сеансы работы пользователей принудительно.
Будет рассмотрено три момента: в файловой базе, а так же два варианта с использованием возможностей базы в режиме 1С:Предприятие и с помощью утилиты администрирования баз данных для серверного варианта базы. Понять, какой тип базы у Вас - файловый или серверный можно по ссылке.
Конечно, формально можно признать, что есть один универсальный способ для завершения работы всех пользователей для любого типа базы - перезагрузить сервер или компьютер, на котором расположена файловая база. Но и этот вариант следует стараться избегать, т.к. это так же будет являться аварийным завершением работы пользователей.
Внимание: описанные ниже действия доступны для пользователей с полным набором прав! |
1. Блокировка работы пользователей в файловой базе
Завершить работу пользователей в файловой базе не возможно из-за того, что платформенные механизмы 1С 8 это не позволяют сделать. Но возможно выполнить блокировку базы, установив таким образом монопольный доступ. При блокировке работа других пользователей прерывается до момента, пока блокировка не будет снята.
Для этого необходимо перейти в разделе "Администрирование" ("НСИ и администрирование" - в зависимости от конфигурации может быть такое название) по ссылке "Обслуживание", далее по ссылке "Блокировка работы пользователей". Блокировка базы устанавливается текущим пользователем. После нажатия на кнопку "Установить блокировку" сеансы других пользователей будут прерваны до момента снятия блокировки.
2. Завершение работы пользователей серверной базы в режиме 1С: Предприятие
Переходим в раздел "НСИ и администрирование" или "Администрирование" в зависимости от конфигурации базы 1С 8, далее переход по ссылке "Обслуживание".
Далее, как продемонстрировано на, объединенном изображении переход по ссылке "Активные пользователи" откроет одноименную форму списка работающих пользователей базы 1С. Выделяем несколько строк или отдельные и с помощью кнопки "Завершить сеанс" работа пользователей будет завершена.
3. Завершение работы пользователей серверной базы с помощью "Администрирования серверов 1С Предприятия"
Возможна такая ситуация, что доступ в базу оказался не возможен, например, из-за того, что закончились свободные лицензии. Поэтому завершить работу пользователей базы 1С 8 не получиться вышеописанным способом. Так же, если используется старая редакция конфигурации базы, то вышеописанные способы окажутся попросту невозможными в силу отсутствия функционала. Но это все же возможно сделать с помощью дополнительной возможности.
Этот вариант уже предполагает завершение работы пользователей не в режиме Предприятие или Конфигуратор, а с помощью дополнительной утилитой "Администрирование серверов 1С Предприятия". Поэтому важно, чтобы у пользователя уже не 1С, а операционной системы на компьютере или сервере было достаточно прав для работы с данной утилитой.
Находим базу в ветке "Кластер" - "Локальный кластер" - "Информационные базы" по имени базы и "Сеансы". Имя базы можно найти в "Справка" - "О программе", "Имя базы" или в списке запуска баз, внизу формы списка. Выделяются строки с отдельными сеансами работы или несколько подряд. Правой кнопкой мыши вызывается контекстное меню, в котором необходимо выбрать пункт "Удалить".
Согласится с предупреждением о том, что удаление сеанса может привести к потере не сохраненных изменений в справочниках и документах. Мера вынужденная, поэтому нажимается кнопка "ОК".
Успешным результатом будет исчезновение строк удаляемых сеансов пользователей из списка.
Может возникнуть ситуация, что в списке пользователей окажется пользователь "DefUser" - это значит, что в базе отрабатывает регламентное (фоновое) задание. Необходимо дождаться, когда фоновое здание закончит выполнение и пользователь DefUser сам автоматически отключиться. Иначе, если в настройке фонового задания установлена настройка запускать повторно при аварийном завершении, то пользователь после удаления его сеанса работы практически мгновенно тут же появится. И, если исходная цель была в получении монопольного доступа, то это сделать не получится из-за мгновенно снова запускающегося после завершения работы сеанса фонового задания. Необходимо дождаться самостоятельного завершения.
Рис. 1 Ошибка Существуют активные сеансы в 1С
Узнали злодея? Ага! Значит, Вы точно попали по адресу. Сейчас мы во всем разберемся!
Итак, существует несколько возможных причин возникновения ошибки «Существуют активные сеансы работы с базой данных…». Наиболее частой и очевидной причиной является несовпадение версий 1С на разных ПК. Пусть есть два компьютера, которые соединены между собой по сети. На первом компьютере – информационная база и сама система 1С, а второй компьютер имеет к ним доступ. При этом на первом компьютере подключение осуществляется при помощи версии 1С, например 8.3.8.2088. Если второй ПК пытается подключиться к системе 1С, но их версии не совпадают, возникнет ошибка «Существуют активные сеансы». В этом случае решение очевидно – необходимо добиться совпадения версий.
Следующая вероятная причина – это отсутствие подключения к базе по сети (если работает один компьютер).
Способы устранения ошибки «Существуют активные сеансы» в 1С
Для устранения ошибки «Существуют активные сеансы…» в 1С можно прибегнуть к нескольким методам. Их подробное описание будет представлено ниже, но перво-наперво стоит отметить, что способы устранения ошибки «Существуют активные сеансы» в 1С работают по отдельности, в зависимости от причины возникновения, так что желательно после пробы каждого перезапускать систему и компьютер.
Способы устранения ошибки «Существуют активные сеансы работы…»:
- Если на компьютерах подключение по сети осуществляется к одной и той же информационной базе 1С 8, но версии не совпадают, то следует выполнить следующее:
- открываем ИБ на первом компьютере;
- в открывшейся системе 1С необходимо кликнуть на иконку «I», которая находится справа вверху;
- будет открыто окно информации, в котором указано, какая именно у Вас версия платформы 1С:Предприятие;
- на втором компьютере откроем папку, в которой установлена система 1С – в ней расположены все версии платформы 1С:Предприятие, в том числе и предыдущие;
- проверяем, есть ли в папке такая же версия, как показало информационное окно на первом компьютере;
- если есть, то необходимо открыть соответствующую версию, если же нет – установить её.
На скриншоте ниже показано, где можно найти версию в папке и в информационном окне:
Довольно часто встречаемая ошибка, имеющая, тем не менее, самые различные причины и методы решения, является ошибка 1С: Существуют активные сеансы с базой. Не совпадает версия временного файла. Данная ошибка не дает зайти в базу как в режиме Конфигуратор, так и в режиме Предприятие.
Опишем самую типичную ситуацию, приводящую к появлению этой ошибки:
Имеется два компьютера, соединенных по сети. На одном из них имеется база 1С, доступная и второму компьютеру. Первый компьютер подключается к базе с помощью платформы 1С версии 8.3.8.2088. Если в это время попробовать подключиться к базе со второго компьютера с помощью платформы 1С версии, отличной от 8.3.8.2088, то мы получим ошибку 1С Существуют активные сеансы работы с данной базой. Такой случай - очевидная причина ошибки.
Однако, помимо этой ситуации, к удивлению, есть множество других причин, способных вызвать аналогичную ошибку. Порой, её можно обнаружить даже при отсутствии сетевого подключения к базе (когда с базой работает один компьютер). Именно поэтому мы создали список действий, выполнение которых позволит Вам преодолеть данную ошибку. Выполнять его полностью необязательно, после каждого пункта рекомендуем проверить наличие ошибки.
Внимание: перед проведением мер рекомендуется завершить все сеансы 1С, а также перезагрузить основной компьютер для гарантированного отключения всех процессов 1С.
Сэкономьте своё время и обратитесь за помощью к нашим специалистам:
Разные версии платформ на компьютерах
Главной причиной этой ошибки считается различие версий платформ на компьютерах. С помощью картинки-инструкции ниже проверьте, на всех ли компьютера установлена общая для всех версия платформы.
Сделать это нужно в следующем порядке: открыть базу на основном компьютере (на рисунке ПК №1), нажмите в программе 1С значок с буквой i, находящийся в правом верхнем углу. У вас откроется информационное окно, где Вы сможете узнать номер релиза платформы 1С. На других компьютерах открыть папку, в которую установлена 1С (по умолчанию C:\Program Files (x86)\1cv8). В папке хранятся все установленные релизы 1С. Сверьте, имеется ли релиз с таким же номером, как у основного компьютера. Если он отсутствует, вам необходимо установить его на этот компьютер. Сверить версии платформ нужно на всех компьютерах, работающих в 1С.
Разные релизы в параметрах запуска 1С Предприятие
Если вы убедились, что на всех компьютерах присутствует версия платформы, которая запускается на основном компьютере (см. п. 1), но ошибка все равно появляется, возможно, что в параметрах запуска 1С на других компьютерах установлен релиз платформы, отличный от того, который запускается на втором компьютере. Грубо говоря, факт наличия нужного релиза на компьютере не гарантирует, что именно он используется при открытии базы. Проверить это можно двумя способами:
Если вы убедились, что на всех компьютерах присутствует версия платформы, которая запускается на основном компьютере (см. п. 1), но ошибка все равно появляется, возможно, что в параметрах запуска 1С на других компьютерах установлен релиз платформы, отличный от того, который запускается на втором компьютере. Грубо говоря, факт наличия нужного релиза на компьютере не гарантирует, что именно он используется при открытии базы. Проверить это можно двумя способами:
1. Открывать базу на разных компьютерах по очереди. После открытия базы нажимать на i в правом верхнем углу и смотреть номер релиза, как показано в правой части картинки п. 1.
2. Проверить настройки 1С Предприятие. Для этого нажмите на ярлык 1С: Предприятие, выберите базу и нажмите "Изменить". В появившимся окне нажмите "Далее", и попадете на окно, показанное на рисунке ниже. Проверьте, что записано в поле "Версия 1С: Предприятие". Если оно не заполнено, то при запуске будет использоваться самая актуальная имеющаяся на компьютере версия 1С. Для подстраховки рекомендуем прописать там версию платформы, необходимую для запуска.
Например, на основном компьютере база запускается с релизом платформы № 8.3.2. На втором компьютере имеются релизы № 8.3.1, № 8.3.2 и № 8.3.3. Если поле "Версия 1С: Предприятие" оставить незаполненным, то запускаться автоматически будет 8.3.3. Именно поэтому рекомендуем заполнить поле вручную, записав туда нужный релиз платформы (8.3.2 в примере). Помните, что перед этим нужно убедиться, что нужный релиз установлен на компьютере (см. п. 1).
Очистка кэша базы
Очистите кэш у базы и всех пользователей.
Для очистки кэша базы откройте папку с базой (её путь можно узнать, выбрав базу 1С в списке баз; путь будет написан в нижней части окна) и удалите в ней все файлы, кроме 1Cv8.1CD.
Кэш пользователя (выполняется для каждого компьютера):
Откройте 1С со списком баз и нажмите "Настройка" (как показано на рисунке ниже). В появишвемся окне вы увидете путь к папке, где хранится различная информация по 1С. Перейдите в папку по этому пути, и теперь поднимитесь на уровень выше, в папку 1cv8 (из которой вы перешли в tmplts). Здесь хранится кэш пользователя. Удалите все папки с названием типа "5ce8424a-158c-47a1-96dc-27f28b1a8d7a", то есть содержащие хаотичные символьные сочетания. Должны остаться папки ExtCompT и tmplts, а также несколько файлов. Кэш пользователя нужно очищать на каждом используемом компьютере.
Антивирус Касперского
Нередко антивирус Касперского (в частности, 10 версия) является причиной данной ошибки. Если Вы испробовали все варианты выше, и вам не удалось одолеть ошибку, попробуйте полностью удалить антивирус с компьютера, на котором появляется ошибка в 1С.
Сэкономьте своё время и обратитесь за помощью к нашим специалистам:
После перехода с платформы 8.2 на платформу 8.3 многие программисты и системные администраторы недоумевают, видя в консоли огромное количество зависших сеансов пользователей. Но не так страшен черт, как его малюют. Давайте попробуем разобраться.
Итак, картина выглядит примерно следующим образом:
Как мы видим, у сеансов отсутствует активное соединение и рабочий процесс. На каждого пользователя может быть запущено сразу несколько сеансов, но только один из них активный. Сеансы висят сутками и многих это пугает. Администраторы начинают принудительно их завершать. Но, на самом деле, страшного в этом ничего нет. Не многие двигают полосу прокрутки в списке сеансов вправо, где можно найти интересную колонку под названием «Спящий».
Так что же такое «спящий сеанс»?
Для повышения устойчивости работы клиентских приложений, в версии 8.3.5 реализовано удержание сеанса при оставлении программы без работы. Теперь, при длительной не активности или при засыпании клиентского компьютера, сеанс не завершается, а переходит в «спящий режим». При появлении активности, сеанс возобновляется.
Сеанс переходит в спящий режим в двух случаях:
- При нештатном разрыве соединения, назначенного сеансу (для толстого клиента, внешнего соединения, тонкого клиента при прямом соединении с сервером). При физическом отключении сети сервер обнаруживает разрыв соединения с клиентским приложением в течение 2-3 минуты.
- По истечении интервала времени, в течение которого клиентское приложение, использующее сеанс, не проявляется активности (для веб-клиента и тонкого клиента при подключении через веб-сервер). Если компьютер клиента не находится в режиме энергосбережения, и клиентское приложение бездействует (не выполняет никаких действий пользователя), то оно периодически вызывает сервер «1С:Предприятия» с интервалом 5-10 минут для поддержания активности сеанса. Поэтому не рекомендуется устанавливать время засыпания сеанса меньше 10 минут.
Любая активность приводит к пробуждению сеанса.
Спящий сеанс завершается в следующих случаях:
- По истечении интервала времени, который определяет время жизни спящего сеанса.
- Если блокировки, установленные спящим сеансом, конфликтуют с блокировками, которые пытаются установить активные сеансы.
Настройки времени засыпания сеанса и времени завершения спящего сеанса доступны в настройках ИБ (в конфигураторе меню: Администрирование - параметры информационной базы) .
По умолчанию время засыпания пассивного сеанса равно 20 минут, время завершения спящего сеанса - 24 часа.
Читайте также: