Администрирование · 11 мин
1С: действие недоступно, так как файл занят для редактирования
Разбираем ошибку «Действие недоступно, так как файл занят для редактирования» в 1С: причины блокировки, поиск зависшего сеанса и безопасное снятие блокировки.
Ошибка «Действие недоступно, так как файл занят для редактирования» появляется в 1С, когда программа пытается открыть или изменить объект, который уже удерживается другим сеансом, процессом или пользователем. Чаще всего это сообщение возникает при работе с файлами, присоединёнными к документам и справочникам, при обмене данными, при обновлении конфигурации или при попытке открыть информационную базу файлового типа.
Механика проста: 1С ставит блокировку, чтобы два пользователя не изменили один и тот же объект одновременно и не потеряли данные. Проблема в том, что блокировка иногда «зависает» — сеанс пользователя аварийно завершился, компьютер перезагрузили, а признак занятости остался. В результате никто файл не редактирует, но система считает иначе.
Разблокировать объект можно без потери данных, если действовать последовательно: сначала выяснить, кто или что держит файл, затем корректно завершить зависший сеанс, и только в крайнем случае прибегать к принудительным методам. Ниже разобраны типовые причины, способы диагностики и безопасные сценарии снятия блокировки.
Почему 1С считает файл занятым
Блокировка возникает в нескольких типовых ситуациях. Первая — реальная конкуренция: коллега действительно открыл присоединённый файл на редактирование и забыл его закрыть. Вторая — зависший сеанс: программа у пользователя «упала» или компьютер ушёл в перезагрузку, а сеанс на сервере остался активным и продолжает удерживать объект.
Третья причина — внешние процессы. Антивирус сканирует каталог с базой, программа резервного копирования читает файлы, проводник Windows держит открытый документ. Для файловых баз характерна ещё одна ситуация: остаточный файл 1Cv8.1CL или временные файлы в каталоге базы после аварийного завершения.
Отдельный случай — фоновые и регламентные задания. Обмен данными, синхронизация с сайтом или загрузка курсов валют могут удерживать объект, пока задание не завершится. Если задание «повисло», блокировка держится бесконечно долго.
Кто-то или что-то реально удерживает объект — ищите активный сеанс или задание
Проверьте его клиентский процесс, кэш и открытые внешние программы
Ищите зависший сеанс в консоли кластера или остаточные файлы блокировок
Проверьте регламентные и фоновые задания, дождитесь или завершите их
Как найти, кто держит файл
Первый шаг — определить источник блокировки. В клиент-серверном варианте откройте консоль кластера серверов 1С и посмотрите список активных сеансов: там видно пользователя, компьютер и время начала сеанса. Сеанс, который висит с давнего времени при отсутствии пользователя на рабочем месте, — главный подозреваемый.
В файловом варианте откройте в программе раздел «Администрирование» — «Активные пользователи» (в типовых конфигурациях). Здесь видно, кто сейчас подключён к базе. Если список пуст, а ошибка остаётся, блокировку держит не сеанс 1С, а внешний процесс — тогда проверяйте антивирус, программы резервного копирования и открытые окна проводника.
Для присоединённых файлов (документы Word, Excel, PDF, прикреплённые к объектам) полезно проверить сам объект: откройте карточку файла — часто там указано, кем он занят. Типовые конфигурации показывают пользователя, который редактирует файл, прямо в форме.
- 1Откройте список активных сеансов (консоль кластера или «Активные пользователи»)
- 2Найдите сеансы с устаревшим временем подключения или «мёртвых» пользователей
- 3Проверьте регламентные и фоновые задания — нет ли зависших
- 4Убедитесь, что файл не открыт во внешней программе (Word, Excel, проводник)
- 5Проверьте, не сканирует ли каталог базы антивирус или система резервного копирования
Безопасные способы снять блокировку
Оптимальный вариант — попросить пользователя, указанного в сообщении о блокировке, закрыть файл или объект. Если пользователь недоступен, а его сеанс завис, завершите сеанс через консоль кластера: выделите сеанс и выберите «Удалить». Пользователь при этом получит сообщение о завершении, а блокировки сеанса будут сняты.
В файловой базе попросите всех выйти из программы, затем проверьте, что ни у кого не остался процесс 1cv8.exe в диспетчере задач. После полного выхода всех пользователей блокировки сеансов снимаются автоматически. Если ошибка сохраняется — проверьте каталог базы на наличие служебных файлов блокировки.
Если блокировку держит регламентное задание, дождитесь его завершения либо отключите задание в консоли заданий, а затем завершите соответствующий фоновый сеанс. После этого повторите действие, которое вызывало ошибку.
Работа с присоединёнными файлами
Когда занят присоединённый файл, откройте его карточку и проверьте поле «Редактирует». Если указанный пользователь файл не открывал или уже закрыл его, воспользуйтесь командой «Освободить» или «Закончить редактирование» — в типовых конфигурациях она доступна пользователю с правами администратора. Это снимает признак занятости без вмешательства в структуру базы.
Что делать при зависшем сеансе на сервере
Зависший сеанс — самая частая причина «вечной» блокировки в клиент-серверном варианте. Признаки: сеанс в консоли кластера существует давно, время последнего обращения устарело, пользователь при этом давно не работает или его компьютер выключен.
Откройте консоль кластера, перейдите в раздел «Сеансы», найдите проблемный сеанс по имени пользователя или компьютеру и удалите его. Блокировки, установленные этим сеансом, будут сняты в течение короткого времени. Если сеансов много и зависают они регулярно, настройте в свойствах кластера параметры завершения неактивных сеансов — это снизит количество подобных ситуаций.
Проверьте также раздел «Соединения» в консоли: иногда процесс рабочего сервера держит соединение, не имеющее активного сеанса. Такие «осиротевшие» соединения тоже можно завершить, но делайте это аккуратно и только для явно мёртвых подключений.
Как выбрать действие
Профилактика: как снизить число блокировок
Большинство проблем с занятыми файлами предотвращается настройкой и дисциплиной. Настройте в кластере автоматическое завершение сеансов, неактивных длительное время, — тогда забытые открытые окна не будут держать объекты сутками.
Исключите каталоги информационных баз и временные каталоги 1С из сканирования антивирусом в реальном времени, если это согласуется с политикой безопасности. Проверьте расписание резервного копирования: копирование не должно пересекаться с активной работой пользователей и регламентными заданиями.
Обучите пользователей простому правилу: открыл файл на редактирование — закончил работу и закрыл. Для присоединённых файлов в типовых конфигурациях полезно напомнить про команды «Закончить редактирование» вместо простого закрытия окна программы.
Когда обращаться к администратору или специалисту
Самостоятельно безопасно: попросить пользователя закрыть объект, завершить явно зависший сеанс, освободить присоединённый файл штатной командой, проверить внешние программы. Эти действия не меняют структуру данных и обратимы.
К специалисту стоит обращаться, если блокировки возникают массово и регулярно, если ошибка сопровождается другими сбоями (обрывы соединений, ошибки СУБД), если требуется вмешательство в файлы базы или настройки кластера, а также если после снятия блокировки объект открывается с ошибками — это может указывать на повреждение данных, требующее тестирования и исправления.
Как проверить результат
Действие выполняется без сообщения о занятости
Ошибка появляется снова — источник блокировки не устранён
Нет зависших сеансов с устаревшим временем
«Мёртвые» сеансы появляются регулярно — нужна настройка кластера
Файл или документ открывается и сохраняется корректно
Ошибки при открытии — возможно повреждение, нужна проверка базы
Завершая: ошибка о занятом файле в 1С — это защитный механизм, а не поломка. В большинстве случаев достаточно найти и корректно завершить удерживающий сеанс или задание. Принудительные методы оставьте на крайний случай и всегда с резервной копией.
Что важно запомнить
Блокировка означает, что объект удерживает сеанс, задание или внешняя программа. Сначала найдите источник через список сеансов или активных пользователей, затем завершите его корректно. Удаление служебных файлов базы — только при полностью остановленной работе и с резервной копией.
Частые вопросы
Можно ли просто подождать, пока блокировка снимется сама?
Да, если блокировку держит реально работающий пользователь или выполняющееся задание — после завершения она снимется автоматически. Но если сеанс завис, ожидание бесполезно: такая блокировка не исчезнет, пока сеанс не будет завершён принудительно или по тайм-ауту кластера.
Файл занят, но пользователь, указанный в сообщении, говорит, что ничего не открывал. Что делать?
Скорее всего, его сеанс завис после аварийного закрытия программы или перезагрузки компьютера. Проверьте список активных сеансов: если его сеанс там есть при выключенном компьютере пользователя — завершите сеанс через консоль кластера, и блокировка снимется.
Опасно ли удалять файл 1Cv8.1CL в каталоге файловой базы?
Опасно, если в базе кто-то работает — это служебный файл блокировки, и его удаление при активных сеансах может привести к рассогласованию данных. Допустимо удалять его только когда все пользователи вышли, все процессы 1С завершены и сделана резервная копия.
Почему ошибка появляется каждый день примерно в одно и то же время?
Регулярность указывает на расписание: в это время выполняется регламентное задание, обмен данными или резервное копирование, которое удерживает объект. Найдите задание по расписанию и либо перенесите его на нерабочее время, либо разберитесь, почему оно выполняется слишком долго.
Антивирус действительно может блокировать файлы 1С?
Да, при сканировании в реальном времени антивирус открывает файлы базы, и 1С может воспринимать это как занятость, особенно для файловых баз. Решение — добавить каталоги баз и временные каталоги 1С в исключения антивируса, если это согласуется с политикой безопасности организации.
Что делать, если после снятия блокировки файл открывается с ошибкой?
Это признак возможного повреждения данных, возникшего при аварийном завершении. Не продолжайте работать с объектом: запустите тестирование и исправление информационной базы (предварительно сделав копию) или привлеките специалиста, если база клиент-серверная и большая.