Сброс кэша клиента 1С:УНФ: три способа и серверный вариант
Содержание
Закройте все окна 1С, откройте %LOCALAPPDATA%\1C\1cv8 и %APPDATA%\1C\1cv8, удалите в них папки с именами-идентификаторами (длинные строки из цифр и букв). Это и есть очистка кэша пользователя. Самый быстрый вариант без проводника: запустить 1С с параметром /ClearCache.
Типичная ситуация: после обновления УНФ менеджер открывает базу, а в форме заказа покупателя нет нового реквизита. Соседний сотрудник его видит. Либо в списке документов «зависла» старая колонка, либо форма открывается с ошибкой, хотя конфигурация в порядке. В таких случаях сначала сбрасывают кэш на рабочем месте, и только потом лезут в базу.
Что именно хранится в кэше и когда его сбрасывать
Кэш 1С — это локальные копии того, что платформа не хочет каждый раз запрашивать заново: описание форм и интерфейса, результаты обращений к конфигурации, настройки окон. Он лежит на компьютере пользователя, а не в информационной базе. Поэтому очистка кэша данные УНФ не трогает: документы, остатки и справочники остаются на месте.
Сбрасывайте кэш, если:
- 🔄 после обновления конфигурации или расширения у части сотрудников форма выглядит по-старому;
- ⚠️ при открытии формы вылетают ошибки вида «Ошибка при вызове метода контекста» или «Не удалось загрузить форму», а у других пользователей всё работает;
- 🐢 пользователь жалуется, что 1С стала открывать формы заметно медленнее, чем раньше;
- 🧩 вы подключили или отключили расширение, а интерфейс не изменился;
- 💾 базу перенесли на другой сервер или изменили адрес публикации, а клиент «помнит» старое.
Если тормозит у всех сразу, кэш клиента, скорее всего, ни при чём. Смотрите сервер, блокировки и размер журнала регистрации.
Где лежат файлы кэша 1С на компьютере
Платформа создаёт для каждой базы папку с именем-идентификатором. Таких папок бывает десятки, по одной на каждую базу, к которой подключался пользователь, плюс версии.
| Система | Путь | Что внутри |
|---|---|---|
| Windows, локальные данные | %LOCALAPPDATA%\1C\1cv8 | кэш форм и конфигурации, папки-идентификаторы |
| Windows, роуминг | %APPDATA%\1C\1cv8 | настройки пользователя, тоже папки-идентификаторы |
| Linux | ~/.1cv8/1C/1cv8 | аналог локальных данных |
Как попасть в папку: нажмите Win+R, вставьте путь целиком (например, %LOCALAPPDATA%\1C\1cv8) и нажмите Enter. Проводник сам раскроет переменную.
Файл 1cv8.pfl и список баз ibases.v8i лежат рядом, но кэшем не являются. Список баз хранится в %APPDATA%\1C\1CEStart и отвечает за то, какие базы вы видите в окне запуска. Удалите его, и придётся добавлять базы заново.
Способ 1. Удалить папки кэша вручную
Подходит, когда нужно разово почистить один компьютер и под рукой нет администратора.
Порядок действий
- Закройте все сеансы 1С, включая запущенные конфигуратор и «Пуск 1С».
- Откройте диспетчер задач и убедитесь, что процессов
1cv8.exeи1cv8c.exeнет. Зависший процесс блокирует файлы. - Перейдите в
%LOCALAPPDATA%\1C\1cv8. - Выделите все папки с длинными именами вида
3f2a...и удалите их. Файлы с расширением.pflлучше не трогать. - Повторите то же в
%APPDATA%\1C\1cv8. - Запустите УНФ. Первый вход будет чуть дольше обычного, платформа пересоздаёт кэш.
Если не хотите разбираться, какая папка к какой базе относится, удаляйте все. Платформа восстановит нужные.
Не уверены, что чистите то, что нужно? Переименуйте папку 1cv8 в 1cv8_old вместо удаления. Если станет хуже, вернёте обратно.
Способ 2. Запуск УНФ с параметром очистки
Этот способ не требует искать папки. Платформа сама сбросит кэш при старте.
Через свойства ярлыка
- Найдите ярлык УНФ, откройте «Свойства».
- В поле «Объект» после закрывающей кавычки пути добавьте пробел и
/ClearCache. - Запустите ярлык один раз. Кэш будет сброшен.
- Верните поле «Объект» к прежнему виду, иначе кэш будет сбрасываться при каждом запуске, а это замедляет вход.
Пример строки (путь у вас свой):
"C:\Program Files\1cv8\8.3.25.1445\bin\1cv8.exe" ENTERPRISE /S"сервер\УНФ" /ClearCache
Через окно запуска
Выберите базу, нажмите «Изменить». На последней странице мастера, в дополнительных параметрах запуска, впишите /ClearCache. После первого входа параметр удалите.
Номер версии платформы в примере условный. Берите путь из своего ярлыка и ничего в нём не меняйте, кроме добавленного параметра.
Для тонкого и веб-клиента
Тонкий клиент сбрасывается так же. С веб-клиентом иначе: кэш форм хранит браузер. Откройте настройки браузера, раздел очистки истории, выберите «Кэшированные изображения и файлы» за всё время. Для одной вкладки помогает обновление страницы
с Ctrl+F5.
Способ 3. Автоматическая очистка скриптом
Если сотрудников много или кэш приходится чистить регулярно (например, после каждого обновления), пишут bat-файл и кладут его на рабочий стол либо запускают через групповую политику при входе в систему.
@echo off
taskkill /F /IM 1cv8.exe >nul 2>&1
taskkill /F /IM 1cv8c.exe >nul 2>&1
timeout /t 2 >nul
for /d %%D in ("%LOCALAPPDATA%\1C\1cv8\*") do rd /s /q "%%D"
for /d %%D in ("%APPDATA%\1C\1cv8\*") do rd /s /q "%%D"
echo Кэш 1С очищен
pause
Что делает скрипт:
- завершает процессы 1С, чтобы файлы не были заняты;
- удаляет только вложенные папки, сам каталог
1cv8остаётся; - файлы в корне каталога (включая
.pfl) не затрагиваются, потому что циклfor /dобходит только папки.
taskkill /F закроет 1С без сохранения. Предупредите пользователей: несохранённые документы пропадут. Для безопасного режима уберите две строки с taskkill и просите закрыть программу вручную.
Сохраните файл в кодировке OEM 866 или уберите русский текст из echo. Иначе в консоли появятся «кракозябры», хотя работа скрипта это не нарушит.
Какой способ выбрать
| Способ | Когда подходит | Риски |
|---|---|---|
| Ручное удаление папок | один компьютер, разовая проблема | можно удалить лишнее, если не смотреть на имена |
Параметр /ClearCache | пользователь сам не ищет папки, нужен один сброс | забытый параметр в ярлыке замедляет каждый вход |
| bat-скрипт | много рабочих мест, регулярная чистка | taskkill закрывает 1С без сохранения |
| Очистка браузера | веб-клиент | сбросится кэш и других сайтов, если выбрать «всё» |
Кэш при клиент-серверной работе УНФ
В клиент-серверном варианте часть кэша живёт на сервере 1С:Предприятия. Здесь действуют два уровня.
Что сбрасывать на рабочем месте
Всё то же самое, что описано выше. Клиентский кэш есть у каждого пользователя, независимо от того, файловая база или серверная. Ошибки отображения форм почти всегда лечатся именно им.
Что сбрасывать на сервере
Серверный кэш создают рабочие процессы rphost. Их данные лежат в каталоге кластера. Администратор может:
- 🔁 перезапустить рабочие процессы через консоль администрирования серверов 1С: узел «Рабочие процессы» в нужном кластере, затем завершение процесса, после чего кластер запустит новый;
- 🖥️ перезапустить службу «Агент сервера 1С:Предприятия» в оснастке служб Windows;
- 📁 удалить содержимое служебных папок кластера при остановленной службе. Это крайняя мера, и лучше делать её по согласованию с тем, кто отвечает за сервер.
Перезапуск службы отключит всех пользователей. Делайте это вне рабочего времени или предупредите сотрудников заранее.
Чаще всего хватает перезапуска рабочего процесса: он сбрасывает внутренние кэши, но не рвёт сеансы остальных баз кластера так жёстко.
Быстрая диагностика: что чистить в вашем случае
%LOCALAPPDATA%\1C\1cv8 и войдите снова.Перед очисткой: короткий чек-лист
Терминальный сервер и тонкий клиент по сети
Если сотрудники работают через удалённый рабочий стол, кэш лежит в профиле каждого пользователя на терминальном сервере. Правила те же, но есть нюансы.
- 👥 Чистить нужно под учётной записью того, у кого ошибка. Удаление папок в своём профиле его проблему не решит.
- 💽 Если профили перемещаемые, кэш из
%APPDATA%едет вместе с профилем при каждом входе. Раздутый профиль замедляет вход в систему, и тогда его чистят в первую очередь. - 🧹 Для терминальных серверов часто настраивают запуск bat-скрипта при выходе пользователя. Следите, чтобы он не удалял кэш у тех, кто ещё работает в другом сеансе.
Отдельно про веб-публикацию. Если УНФ открывается в браузере, то после обновления конфигурации на сервере бывает нужен жёсткий сброс страницы (Ctrl+F5), а затем повторный вход. Серверная часть при этом уже новая, а браузер держит старые скрипты.
Как проверить, что очистка сработала
После первого запуска посмотрите на три вещи:
- Папки в
%LOCALAPPDATA%\1C\1cv8создались заново, причём с новыми временными метками. - Проблемная форма открывается, реквизит или кнопка на месте.
- Первый вход занял на 10-30 секунд дольше обычного. Это нормально: платформа пересобирает описание форм.
Если ошибка осталась, двигайтесь дальше по цепочке: проверьте, под каким пользователем она воспроизводится, затем включите журнал регистрации и найдите запись об ошибке в момент открытия формы. Типичный следующий шаг: проверить расширения. Отключите их по одному в режиме «Конфигуратор» (меню «Конфигурация» → «Расширения конфигурации») на копии базы и посмотрите, при каком из них форма ломается.
Тестируйте на копии базы. Расширение, которое вы отключите в рабочей базе, может потянуть за собой данные, которые к нему привязаны.
Ошибки, которые портят результат
Сброс кэша простой, но на нём спотыкаются по одним и тем же причинам.
- ❌ Удалили не там. Вместо папок-идентификаторов стёрли весь каталог
1Cвместе с настройками запуска. Список баз пропал, пользователь видит пустое окно. Восстанавливается только добавлением баз вручную. - ❌ Оставили
/ClearCacheв ярлыке. Кэш пересоздаётся при каждом входе, форма открывается долго, и пользователь решает, что стало хуже. - ❌ Не закрыли фоновый процесс. Папка не удаляется, проводник пишет, что файл используется. Проверьте диспетчер задач.
- ❌ Чистят кэш при проблеме на сервере. Время потрачено, ошибка осталась. Сначала выясните, у кого именно она воспроизводится.
- ❌ Ждут, что очистка исправит данные. Кэш содержит копии описаний, а не сведения из базы. Неверные остатки или проводки он не поправит.
Как реже сталкиваться с проблемой
Кэш не нужно сбрасывать по расписанию «на всякий случай». Достаточно нескольких привычек:
- После обновления УНФ просить пользователей перезапустить 1С, а не продолжать сеанс.
- При массовом выкатывании расширений ставить в инструкцию пункт «закройте программу, откройте заново».
- Для терминальных серверов настроить чистку профиля при выходе, если профили не перемещаемые.
- Не копировать папку профиля 1С между компьютерами, иначе кэш одной базы окажется у другой.