Не даёт редактировать в 1С 8.3: находим и снимаем блокировку
Содержание
Под «запретом редактирования» в 1С прячутся четыре разные ситуации, и лечатся они по-разному. Если внизу формы написано про дату — снимите её в разделе Администрирование → Настройки пользователей и прав → Даты запрета изменения данных. Если программа пишет «объект заблокирован другим пользователем» — нужно закрыть чужой сеанс. Если поля карточки серые — помогает команда Ещё → Разрешить редактирование реквизитов или выдача прав. Если документ не меняется после проведения — сначала отмените проведение.
Дальше — как за минуту понять, какой именно случай у вас, и что нажимать в каждом. Пути указаны для управляемого интерфейса «Такси» (платформа 8.3) и типовых конфигураций БП 3.0, ЗУП 3.1, УТ 11.
С чего начать: определяем причину блокировки
Прочитайте текст на экране — он почти всегда называет причину. Запрет редактирования бывает четырёх видов, и симптомы у них разные.
- 📅 Дата запрета изменения. Сообщение вида «Дата запрета изменения данных… не позволяет записать». Период уже закрыт для правок.
- 🔒 Объект занят другим сеансом. «Не удалось заблокировать объект» или «запись уже редактируется другим пользователем». Кто-то открыл тот же документ.
- 🚫 Нет прав. Форма открывается, но вся серая, кнопка
Записатьнеактивна. Роль не даёт изменять этот объект. - 📝 Реквизиты закрыты после использования. Часть полей карточки (ИНН, вид номенклатуры, валюта) заблокирована, потому что элемент уже фигурирует в документах.
Отдельно стоит запрет начала сеансов — его ставят администраторы перед обновлением. Тогда база вообще не пускает новых пользователей с сообщением про блокировку соединений.
Определив свой случай, переходите к нужному разделу ниже.
Снимаем дату запрета изменения данных
Самый частый смысл запроса. В типовых конфигурациях на БСП дату запрета изменения задают в одном месте.
- Откройте
Администрирование → Настройки пользователей и прав → Даты запрета изменения данных. - Если флажок
Даты запрета изменения данныхвключён — снимите его целиком или нажмитеНастроить. - В настройке уберите дату (очистите поле) либо сдвиньте её на более ранний день, чтобы ваш период снова открылся.
- Запишите и закройте. Попробуйте изменить документ ещё раз.
Запрет может быть задан по-разному: общий для всех, по разделам учёта, по организациям и по пользователям. Если общий флажок снят, а править всё равно нельзя, посмотрите персональную строку для своего пользователя — именно она перекрывает общую настройку.
Дата может быть указана не только фиксированным числом, но и относительно текущей даты — например, «конец прошлого месяца» или «конец прошлого года». Тогда граница сдвигается сама по мере того, как идёт время, и документ, который вчера ещё редактировался, сегодня уже закрыт. Если править перестало «внезапно», без видимых изменений настроек, проверьте именно способ указания даты: относительный он или абсолютный.
Когда запрет задан по разделам, одна и та же база может не давать трогать, скажем, банк и кассу, но спокойно пускать в зарплату. Смотрите, по какому разделу проходит ваш документ — снимать запрет нужно именно для него.
Дата запрета защищает закрытые периоды от случайных правок задним числом. Прежде чем снимать её, убедитесь, что отчётность за период ещё не сдана, иначе данные в учёте и в сданном отчёте разойдутся.
Менять дату запрета может только пользователь с соответствующим правом (обычно это администратор или профиль с правом на изменение дат запрета). Если раздел настроек у вас не отображается — прав не хватает, обратитесь к администратору базы.
Объект заблокирован другим пользователем
Сообщение «Не удалось заблокировать объект» означает, что ту же запись прямо сейчас редактирует другой сеанс. Платформа не даёт двоим менять один объект одновременно — это защита от потери данных, а не ошибка.
Что делать по шагам:
- Откройте список активных пользователей. Надёжный путь —
Главное меню → Все функции → Стандартные → Активные пользователи. В типовых конфигурациях он также бывает в разделе администрирования или обслуживания. - Найдите, кто работает с нужным документом, и попросите коллегу закрыть форму (нажать
ЗакрытьилиЗаписать и закрыть). - После этого повторите своё действие — блокировка снимется сама.
Часто виноват не живой пользователь, а собственный зависший сеанс: вы открыли документ, программа аварийно закрылась, а сеанс остался висеть. В списке активных пользователей он будет с вашим именем. Такой сеанс нужно завершить (в файловой базе — закрыть все окна 1С, в клиент-серверной — снять сеанс из консоли, см. раздел про сервер).
Иногда блокировка исчезает сама через несколько секунд: когда два сеанса претендуют на один объект, второй ждёт освобождения ограниченное время, и лишь затем выдаёт ошибку. Поэтому первый разумный шаг при разовом сообщении — просто подождать несколько секунд и повторить запись: возможно, коллега как раз закрывает документ.
Если блокировки «срываются» по всей базе и у многих пользователей — это уже признак проблем с режимом управляемых блокировок или нехватки ресурсов сервера. Разовую ситуацию решайте закрытием сеанса, систематическую — передавайте администратору.
Серые поля карточки: разрешаем редактирование реквизитов
Отдельный случай — когда элемент справочника (номенклатура, контрагент, организация) открывается, но часть реквизитов недоступна для правки. Так платформа бережёт целостность данных: если по номенклатуре уже есть документы, смена единицы измерения или вида задним числом может исказить учёт.
Чтобы снять защиту конкретного элемента:
- Откройте карточку элемента.
- В командной панели нажмите
Ещё. - Выберите команду
Разрешить редактирование реквизитов. - Подтвердите предупреждение — закрытые поля станут доступны.
Для проведённого документа логика другая: пока он проведён, ключевые поля защищены. Нажмите Отменить проведение (команда в панели или через Ещё), внесите правки, затем проведите документ заново.
Меняя реквизиты уже использованного элемента или перепроводя старый документ, вы можете затронуть сформированные движения и остатки. Делайте это осознанно и проверяйте результат в отчётах по этому объекту.
Монопольный доступ и Конфигуратор: когда это реально нужно
Распространённое заблуждение — что для снятия запрета нужно зайти в Конфигуратор «монопольно». Для обычного редактирования документов и справочников это не требуется и не поможет.
Монопольный (эксклюзивный) доступ нужен только для операций, которые меняют структуру или целостность базы:
- обновление конфигурации с изменением структуры данных (реструктуризация);
- загрузка информационной базы из файла
.dt; Тестирование и исправлениебазы;- некоторые операции администрирования.
Если при таком действии в базе есть активные пользователи, Конфигуратор сообщит о блокирующих сеансах и предложит их закрыть — вот тогда и нужен монопольный режим.
Бывает и обратное: кто-то установил запрет начала сеансов перед плановым обновлением, а снять забыл. Тогда база пишет про блокировку соединений и не пускает новых пользователей. Снимается это в Конфигураторе: Администрирование → Блокировка соединений с информационной базой — уберите установленную блокировку. В клиент-серверном варианте то же делается через консоль кластера.
Клиент-серверная база: снимаем блокировки через консоль
Если база развёрнута на сервере 1С с СУБД (MS SQL, PostgreSQL), зависшие сеансы и блокировки администрируют на уровне кластера, а не из пользовательского режима.
Через консоль администрирования серверов 1С. Откройте оснастку кластера, перейдите к нужной информационной базе, раздел Сеансы. Здесь виден каждый сеанс: пользователь, компьютер, время. Чтобы снять зависший — выделите строку и удалите сеанс через контекстное меню.
Через командную строку rac. Удобно, когда консоль не установлена:
rac cluster list
rac session list --cluster=<идентификатор-кластера>
rac session terminate --cluster=<идентификатор-кластера> --session=<идентификатор-сеанса>
Сначала узнаёте идентификатор кластера, затем список сеансов, затем завершаете нужный по его идентификатору. Полный перечень параметров — в rac help; не придумывайте ключи наугад.
Завершение сеанса обрывает работу пользователя: несохранённые данные в этом сеансе потеряются. Снимайте только явно зависшие сеансы (без активности) и по возможности предупредите владельца.
Если оснастка консоли не открывается после обновления платформы, помогает перерегистрация её библиотеки — выполните в консоли с правами администратора regsvr32 radmin.dll из каталога bin установленной платформы.
Файловая база: зависшие блокировки и чистка кэша
В файловом варианте (1Cv8.1CD в сетевой папке) блокировки держат сами подключённые клиенты. Если база «думает», что занята, хотя никто не работает, почти всегда виноват не закрытый до конца процесс.
Порядок действий:
- Убедитесь, что все пользователи вышли из базы.
- На каждом компьютере откройте
Диспетчер задачи завершите оставшиеся процессы1cv8.exe(и1cv8c.exeдля тонкого клиента). - Снова откройте базу — блокировка, как правило, снимается.
Если после этого база запускается с ошибками или «тормозит» на старте — почистите локальный кэш. Кэш хранится в профиле пользователя:
%LOCALAPPDATA%\1C\1cv8\%APPDATA%\1C\1cv8\
Внутри — подпапки с длинными именами (по одной на базу). Их содержимое можно удалить: при следующем запуске кэш соберётся заново.
Удаляйте только папки кэша в профиле пользователя. Файл базы 1Cv8.1CD и каталог журнала регистрации не трогайте — это и есть ваши данные.
Чистку кэша и завершение процессов делайте, когда в базе точно никого нет: оборванный на полпути сеанс другого пользователя приведёт к потере его несохранённой работы.
Права доступа: если изменение запрещено ролью
Когда форма открывается только для чтения у конкретного человека (а у других всё меняется) — дело в правах. Роль пользователя не содержит права Изменение на этот объект, либо действует ограничение на уровне записей (RLS).
Настраивается это администратором в Администрирование → Настройки пользователей и прав → Пользователи: у нужного пользователя проверьте состав групп доступа и назначенный профиль. Чтобы расширить права, добавьте пользователя в группу с подходящим профилем (например, с полными правами или профилем нужного участка) либо скорректируйте сам профиль.
Ограничение на уровне записей (RLS) коварнее: право Изменение у роли вроде бы есть, но настройка видимости пускает пользователя только к своим организациям или складам. Тогда чужой документ открывается для чтения, хотя формально право на изменение присутствует. Проверяется это в составе групп доступа: какие организации, подразделения или склады разрешены профилю. Расширять доступ нужно именно там, а не раздачей новой роли.
Если же права урезаны намеренно (бухгалтер не должен менять чужой участок) — это не ошибка, а настройка. Тогда правьте документ под учётной записью, у которой такое право есть, а не раздавайте всем полный доступ.
Полные права стоит давать точечно. Массовая выдача «чтобы не мешало» со временем превращается в базу, где каждый может переписать чужие документы — и концов потом не найти.
Частые вопросы
Почему 1С не даёт изменить документ прошлого года?
Как понять, кто именно заблокировал объект?
Все функции → Стандартные → Активные пользователи). В клиент-серверной базе точнее видно в консоли кластера или командой rac session list — там указаны пользователь и компьютер каждого сеанса.Можно ли снять блокировку, не завершая чужой сеанс?
Удаление кэша не повредит данные?
%LOCALAPPDATA%\1C\1cv8, %APPDATA%\1C\1cv8). Сам файл базы и журнал регистрации при этом не трогаются.