Сброс кэша в Бухгалтерии государственного учреждения 2.0: папки, /ClearCache и сервер

· 9 мин

Содержание

Чтобы поменять кэш в 1С БГУ 2.0, закройте программу и удалите папки с длинными именами вида 1a2b3c4d-... из %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. При следующем запуске 1С заново скачает метаданные базы и соберёт свежий кэш. Если искать папки не хочется, добавьте к базе параметр запуска /ClearCache — эффект тот же.

Обычно к этому приходят, когда Бухгалтерия государственного учреждения после обновления показывает старые формы, пишет Ошибка формата потока или долго открывается. Битый кэш — одна из самых частых и самых безобидных причин таких сбоев. Данные учреждения при очистке не страдают: в кэше лежат только служебные копии.

Что хранит кэш 1С в БГУ 2.0 и когда его пора менять

БГУ 2.0 работает на платформе 1С:Предприятие 8.3. Кэш — это механизм платформы, а не конфигурации. Поэтому порядок действий одинаков для БГУ, ЗКГУ, Бухгалтерии предприятия и любой другой базы на 8.3.

При первом входе в базу платформа сохраняет на компьютер пользователя:

  • 📦 описание метаданных конфигурации — справочники, документы, регистры;
  • 🖼 формы, макеты печатных форм, картинки интерфейса;
  • 🧩 скомпилированные клиентские модули;
  • ⚙️ служебные данные о сеансе и подключении.

Дальше 1С не тянет всё это из базы при каждом запуске, а берёт локальную копию. Так быстрее, особенно когда база на сервере или в облаке.

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

Признаки, что кэш пора сбросить:

  • 🔁 после обновления БГУ не появились новые реквизиты, отчёты или изменённые печатные формы;
  • ❌ при входе или открытии формы появляется Ошибка формата потока;
  • 🐢 запуск базы на одном компьютере идёт заметно дольше, чем у коллег;
  • 🪟 формы открываются «криво»: пропали кнопки, поля съехали, команды не срабатывают;
  • 🔀 у одного пользователя ошибка есть, а у другого в той же базе — нет.

Последний признак самый показательный. Если сбой привязан к конкретному компьютеру или учётной записи Windows, почти наверняка виноват локальный кэш, а не сама база.

Где найти папку с кэшем 1С на компьютере

Платформа 8.3 хранит кэш в профиле пользователя Windows, в двух местах:

КаталогЧто там лежит
%APPDATA%\1C\1cv8кэш метаданных баз, файлы настроек запуска *.pfl
%LOCALAPPDATA%\1C\1cv8основная часть кэша баз, кэш внешних компонент ExtCompT

Чтобы открыть папку, нажмите Win + R, вставьте путь, например %APPDATA%\1C\1cv8, и нажмите Enter. Переменная сама подставит профиль текущего пользователя, искать C:\Users\Имя\AppData вручную не нужно.

Внутри вы увидите папки с именами вида 0f3c7e21-5a9b-4c6d-8e12-7b4a9d3f1c60. Каждая такая папка — кэш одной информационной базы.

Как понять, какая папка относится к вашей БГУ

Если в списке баз их несколько, а чистить нужно только БГУ, сопоставьте идентификатор:

  1. Откройте %APPDATA%\1C\1CEStart\ibases.v8i в Блокноте.
  2. Найдите блок с названием вашей базы в квадратных скобках, например [БГУ 2.0 учреждение].
  3. В этом блоке есть строка ID=.... Это и есть имя папки кэша.
  4. Найдите папку с таким именем в обоих каталогах.
[БГУ 2.0 учреждение]
Connect=Srvr="srv1c";Ref="bgu_main";
ID=0f3c7e21-5a9b-4c6d-8e12-7b4a9d3f1c60

Файл ibases.v8i — это список баз в окне запуска. Его не удаляйте и не правьте без копии, иначе список баз пропадёт.

Linux и терминальный сервер

На Linux кэш лежит в домашнем каталоге пользователя: ~/.1cv8/1C/1cv8. Логика та же — папки с GUID-именами.

На терминальном сервере у каждого пользователя свой профиль, а значит, свой кэш. Чистить его нужно в профиле того, у кого сбой: C:\Users\<логин>\AppData\Roaming\1C\1cv8 и C:\Users\<логин>\AppData\Local\1C\1cv8.

Ручная очистка кэша 1С БГУ: удаление папок

Ручной способ надёжнее всего: вы видите, что именно удаляете.

  1. Закройте все окна 1С, включая Конфигуратор. Проверьте в Диспетчере задач, что не осталось процессов 1cv8.exe и 1cv8c.exe.
  2. Откройте %LOCALAPPDATA%\1C\1cv8.
  3. Удалите папку с ID вашей базы. Если баз немного или сбой во всех сразу — удалите все папки с GUID-именами.
  4. Повторите то же в %APPDATA%\1C\1cv8.
  5. Запустите БГУ. Первый вход займёт больше времени: платформа скачивает метаданные заново.

Не удаляйте всю папку 1C целиком. В ней лежат список баз, шаблоны обновлений и настройки запуска. Удалять нужно только папки с GUID-именами внутри 1cv8.

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

Пользовательские настройки при этом не теряются. Настройки отчётов, списков и форм в 8.3 хранятся в самой информационной базе, а не в кэше. После очистки отчёты откроются с вашими вариантами.

Сброс кэша без поиска папок: /ClearCache и bat-файл

Не всем удобно лазить по скрытым каталогам. Для этого есть два способа попроще.

Параметр запуска /ClearCache

Платформа умеет сама очистить кэш при входе в базу:

  1. В окне запуска 1С выделите базу БГУ.
  2. Нажмите Изменить.
  3. Пройдите мастер кнопкой Далее до последней страницы.
  4. В поле Дополнительные параметры запуска впишите /ClearCache.
  5. Нажмите Готово и запустите базу.

После того как проблема ушла, уберите параметр из настроек базы. Иначе 1С будет заново скачивать кэш при каждом входе, и запуск станет медленным навсегда.

Удобный вариант — создать в списке вторую базу с тем же адресом и параметром /ClearCache, назвав её, например, «БГУ — сброс кэша». Пользователь сам запустит её, когда понадобится.

bat-файл для очистки всех кэшей

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

@echo off
rem Закройте 1С перед запуском
for /d %%i in ("%APPDATA%\1C\1cv8\*-*") do rd /s /q "%%i"
for /d %%i in ("%LOCALAPPDATA%\1C\1cv8\*-*") do rd /s /q "%%i"
echo Кэш 1С очищен
pause

Маска *-* выбирает только папки с дефисами в имени, то есть GUID-папки баз. Служебные ExtCompT и tmplts она не трогает.

Сохраните текст в файл clear_1c_cache.bat в кодировке ANSI (cp1251), иначе русская строка в окне превратится в «кракозябры». Запускать — от имени того пользователя, у которого сбой, а не от администратора: у администратора свой профиль и свой %APPDATA%.

Сравнение способов:

СпособКогда подходитЧто учесть
Удаление папки одной базысбой только в БГУнужно найти ID в ibases.v8i
Удаление всех GUID-папоксбой во многих базахпервый вход во все базы будет дольше
/ClearCacheпользователь не видит скрытых папокубрать параметр после проверки
bat-файлприходится чистить регулярно, много компьютеровзакрыть 1С перед запуском

Кэш внешних компонент, шаблонов обновлений и серверный кэш

Кроме кэша метаданных, у 1С есть ещё три хранилища, которые иногда тоже нужно почистить.

Внешние компоненты

БГУ использует внешние компоненты для работы с криптографией, сканерами штрихкодов, торговым оборудованием и обменом с внешними системами. Платформа распаковывает их в %LOCALAPPDATA%\1C\1cv8\ExtCompT.

Чистить эту папку стоит, если после обновления конфигурации или платформы перестала работать компонента: не подключается сканер, падает операция подписания. Удалите содержимое ExtCompT при закрытой 1С — при следующем обращении компонента установится заново. Программа может спросить разрешение на установку, на это нужно ответить согласием.

Шаблоны и файлы обновлений

Скачанные обновления конфигураций по умолчанию хранятся в каталоге шаблонов %APPDATA%\1C\1cv8\tmplts. За несколько лет там набирается от единиц до десятков гигабайт.

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

Серверный кэш

Если БГУ работает в клиент-серверном варианте и ошибка воспроизводится у всех пользователей сразу, локальный кэш ни при чём. Тогда чистят сеансовые данные на сервере 1С.

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

Для клиент-серверной базы порядок такой:

  1. Предупредите пользователей и выберите время вне рабочего дня: при остановке службы оборвутся все сеансы на сервере, несохранённые документы пропадут.
  2. Остановите службу Агент сервера 1С:Предприятия 8.3.
  3. Откройте каталог кластера. По умолчанию это C:\Program Files\1cv8\srvinfo\reg_1541; точный путь виден в свойствах службы, в параметре -d строки запуска.
  4. Удалите папки, имена которых начинаются с snccntx.
  5. Запустите службу и проверьте вход в базу.

В reg_1541 больше ничего не удаляйте. Там лежат файлы реестра кластера 1CV8Clst.lst и папки с GUID-именами — это данные самих информационных баз на сервере.

Как реже сталкиваться с битым кэшем

Полностью отказаться от кэша нельзя, но частоту сбоев можно снизить:

  • 🛑 закрывайте 1С штатно, через меню, а не крестиком в Диспетчере задач и не выключением компьютера;
  • 🔌 на рабочих местах без бесперебойника отключение света — главный источник повреждённых файлов;
  • 💾 следите за свободным местом на системном диске: кэш и временные файлы пишутся на диск C;
  • 🛡 добавьте каталоги %APPDATA%\1C и %LOCALAPPDATA%\1C в исключения антивируса — проверка «на лету» может заблокировать запись кэша;
  • 🔄 после крупного обновления БГУ чистите кэш у всех пользователей сразу, не дожидаясь жалоб;
  • 🖥 следите, чтобы у всех рабочих мест версия платформы совпадала с серверной: номер клиента должен быть таким же, как у сервера.

В учреждении удобно оформить последний пункт как регламент: обновили конфигурацию — администратор рассылает bat-файл или включает /ClearCache в общем списке баз на один день.

После обновления БГУ 2.0
Выполнено: 0 / 5

Если очистка кэша не помогла

Когда сбой остался после очистки, значит, причина в другом месте. Пройдитесь по симптомам:

Диагностика: выберите симптом

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

Пропадут ли документы или справочники после очистки кэша?
Нет. Все данные учреждения хранятся в информационной базе. В кэше лежат только служебные копии форм и метаданных, которые 1С восстановит сама.
Нужно ли выгонять из базы всех пользователей, чтобы почистить свой кэш?
Нет. Локальный кэш — дело одного компьютера и одной учётной записи. Закрыть 1С достаточно только себе. Выход всех нужен лишь для серверного кэша.
Сколько места занимает кэш 1С?
Кэш одной базы БГУ обычно занимает сотни мегабайт. Если на компьютере десяток баз, папки кэша вместе с шаблонами обновлений могут занимать несколько гигабайт.
Можно ли очистить кэш в веб-клиенте?
В веб-клиенте формы кэширует браузер. Очистите кэш браузера для адреса публикации базы или откройте её в окне инкогнито, чтобы проверить, в кэше ли дело.
Почему после очистки кэша первый запуск идёт так долго?
Платформа заново загружает с сервера метаданные и формы конфигурации. Со второго входа скорость вернётся к обычной.