Администрирование · 13 мин
Где 1С хранит настройки форм и как ими управлять
Разбираем, где 1С хранит настройки форм: файлы pfl в профиле пользователя, хранилище настроек в базе, перенос, очистка и решение типовых проблем.
Пользовательские настройки форм в 1С — это положение окон, ширина колонок табличных частей, настройки динамических списков, варианты отчётов и прочие параметры интерфейса, которые платформа запоминает за пользователем. Когда форма «слетает», открывается с ошибкой или настройки нужно перенести другому сотруднику, первым делом встаёт вопрос: где именно они физически хранятся.
Ответ зависит от режима работы. В файловой базе настройки лежат в каталоге профиля пользователя операционной системы в виде отдельных файлов. В клиент-серверном варианте значительная часть настроек сохраняется внутри самой информационной базы — в системном хранилище настроек, а локальные файлы используются как кэш. Понимание этой двойственности — ключ к решению большинства проблем с «исчезнувшими» или «сломанными» формами.
Ниже разобраны конкретные пути хранения, структура файлов, способы очистки и переноса настроек, а также типовые ситуации: ошибка формата потока, конфликт настроек после обновления, необходимость скопировать оформление списка всем пользователям.
Какие настройки форм сохраняет платформа
Платформа 1С:Предприятие автоматически запоминает за каждым пользователем геометрию и состояние форм: размеры и положение окон, ширину и порядок колонок таблиц, видимость элементов, развёрнутость групп, активные вкладки. Отдельно сохраняются настройки динамических списков — отборы, сортировки, группировки и условное оформление, которые пользователь меняет через «Ещё → Настроить список».
Третья категория — настройки отчётов на СКД: варианты отчётов, пользовательские отборы и параметры. Они хранятся отдельно от настроек форм как таковых и управляются через хранилище пользовательских настроек отчётов. Путать эти категории не стоит: очистка настроек форм не затронет сохранённые варианты отчётов и наоборот.
Важно понимать, что настройки привязаны к связке «пользователь + объект метаданных + ключ объекта». Поэтому один и тот же документ, открытый из разных разделов с разными ключами, может иметь разные сохранённые состояния.
Где лежат файлы настроек в файловом режиме
В файловом варианте работы локальные настройки пользователя размещаются в профиле операционной системы. Основной каталог — %APPDATA%\1C\1cv8 (обычно это C:\Users\ИмяПользователя\AppData\Roaming\1C\1cv8). Внутри него для каждой базы создаётся подкаталог с уникальным идентификатором, а уже в нём — файлы с расширением .pfl.
Файл pfl — это бинарный файл параметров, в котором платформа сохраняет настройки форм, списков и другие пользовательские данные. Редактировать его вручную бессмысленно: формат закрытый, и повреждение файла приведёт к ошибке «Ошибка формата потока» при открытии формы. Корректные операции с pfl — только удаление или перемещение.
Рядом может находиться каталог %LOCALAPPDATA%\1C\1cv8 — там платформа держит кэш метаданных и служебные данные. Кэш не является хранилищем настроек, но его повреждение иногда имитирует проблемы с формами, поэтому при диагностике оба каталога проверяют вместе.
%APPDATA%\1C\1cv8\ — профильные настройки, файлы *.pfl
%LOCALAPPDATA%\1C\1cv8\ — кэш метаданных и служебные данныеГде хранятся настройки в клиент-серверном режиме
В клиент-серверном варианте основная масса настроек сохраняется внутри информационной базы — в таблицах системного хранилища настроек на стороне СУБД. Локальные файлы pfl на компьютере пользователя при этом продолжают существовать и выполняют роль кэша и хранилища части интерфейсных параметров (например, геометрии окон, привязанной к конкретному рабочему месту).
Такое разделение объясняет типовую ситуацию: пользователь заходит в базу с другого компьютера и видит свои отборы и варианты отчётов, но окна открываются с размерами по умолчанию. Настройки из хранилища базы «приехали» вместе с учётной записью, а локальная геометрия осталась на старом ПК.
Программный доступ к серверным настройкам выполняется через объекты ХранилищеСистемныхНастроек и ХранилищеПользовательскихНастроекОтчетов. С их помощью можно получить список сохранённых настроек, загрузить, сохранить или удалить конкретную запись — это основной способ массового администрирования настроек в серверной базе.
Как найти и сбросить настройки конкретной формы
Самый частый практический сценарий — форма перестала открываться или открывается с ошибкой после обновления конфигурации. Причина почти всегда в сохранённых настройках, которые ссылаются на реквизиты или элементы, изменённые в новой версии. Лечится сбросом настроек конкретной формы.
В типовых конфигурациях есть штатный путь: раздел «Администрирование → Обслуживание → Корректировка данных» (в ряде конфигураций — «Настройки пользователей и прав»), где доступна очистка персональных настроек. Там же можно удалить настройки сразу всех форм выбранного пользователя. Если типовых инструментов нет, используют обработку очистки настроек или удаление файлов pfl вручную.
- 1Закройте сеанс пользователя с проблемной формой (или всю базу в файловом режиме).
- 2Откройте каталог %APPDATA%\1C\1cv8 и найдите подкаталог нужной базы по её идентификатору.
- 3Переименуйте или переместите файлы *.pfl в резервную папку — не удаляйте сразу, чтобы можно было вернуть.
- 4Запустите базу и откройте форму: она должна открыться с настройками по умолчанию.
- 5Если проблема осталась — очистите кэш в %LOCALAPPDATA%\1C\1cv8 и повторите проверку.
Для точечного сброса настроек динамического списка есть способ без доступа к файлам: откройте список, перейдите в «Ещё → Настроить список» и нажмите «Установить стандартные настройки». Аналогично для отчёта — «Ещё → Выбрать вариант отчёта → Стандартный» или сброс текущего варианта.
Перенос настроек другому пользователю
Типовая задача — новый сотрудник должен получить те же настройки списков и отчётов, что и его предшественник. В клиент-серверном режиме это делается программно: настройки загружаются из хранилища от имени исходного пользователя и сохраняются с указанием нового имени пользователя. В типовых конфигурациях на БСП для этого есть функция копирования настроек в разделе «Администрирование → Настройки пользователей и прав».
В файловом режиме допустим механический перенос: скопировать файлы pfl из профиля одного пользователя в профиль другого на том же или другом компьютере. Ограничение — переносятся только локальные настройки, а пути и идентификаторы базы должны совпадать, иначе платформа проигнорирует скопированные файлы.
Если нужно раздать настройки централизованно и не дать пользователям их менять, правильный путь — не раздача файлов, а настройка отборов и оформления на уровне конфигурации (в модуле формы или в настройках динамического списка запроса). Тогда нужное представление будет у всех по умолчанию.
Способы переноса настроек
Подходит для клиент-серверных баз и типовых конфигураций; переносит настройки отчётов и списков между пользователями штатно, без доступа к файлам. Ограничение — только в конфигурациях на БСП.
Работает в файловом режиме и для локальных настроек геометрии форм. Ограничение — привязка к каталогу базы и профилю ОС, перенос между разными базами не сработает.
Универсальный способ для разработчика: полный контроль над тем, какие ключи настроек переносятся. Требует написания обработки и прав на выполнение.
Типовые проблемы и их диагностика
Ошибка «Ошибка формата потока» при открытии формы или запуске базы — классический признак повреждённого файла настроек или кэша. Лечится последовательно: сначала удаление pfl, затем очистка кэша, в тяжёлых случаях — пересоздание записи базы в списке информационных баз.
Ситуация «настройки слетают после каждого обновления» обычно означает, что разработчик изменил структуру формы (переименовал реквизиты, изменил состав колонок), и старые сериализованные настройки стали несовместимы. Разовая очистка решает проблему, но если она повторяется каждый релиз — стоит просить разработчиков сохранять совместимость ключей настроек или отключать автосохранение для проблемных форм.
Обратный симптом — настройки вообще не сохраняются между сеансами. Причины: у пользователя нет права «Сохранение данных пользователя» в ролях, база открыта в режиме, где хранилище настроек недоступно, или конфигурация переопределила хранилище настроек на собственное, в котором ошибка. Проверку начинают с прав доступа.
Как проверить результат
Форма открывается без ошибок, колонки и отборы стандартные
Ошибка формата потока повторяется — чистить кэш и проверять обновление конфигурации
После перезапуска базы отборы и ширина колонок на месте
Настройки сбрасываются — проверять право сохранения данных пользователя
У нового пользователя списки и отчёты выглядят как у источника
Настройки не применились — проверить совпадение ключей объектов и имён пользователей
Программная работа с хранилищем настроек
Для администратора и разработчика платформа предоставляет объектную модель доступа к настройкам. Метод ХранилищеСистемныхНастроек.ПолучитьСписок() возвращает перечень сохранённых ключей, методы Загрузить и Сохранить — читают и пишут значения, Удалить — очищает запись по ключу объекта, имени настройки и пользователю.
Типовой сценарий — обработка массовой очистки: перебор пользователей информационной базы, получение списка их настроек и удаление записей по маске ключа (например, всё, что относится к конкретному отчёту или документу). Такая обработка — безопасная альтернатива ручному удалению файлов, потому что работает только с выбранными ключами.
При разработке собственных форм можно управлять поведением сохранения: свойства формы «АвтоматическоеСохранениеДанныхВНастройках» и «СохранениеДанныхВНастройках» определяют, будет ли платформа запоминать состояние формы и какие реквизиты включать в сохранение. Отключение автосохранения — рабочий способ избавиться от конфликтов настроек при частых изменениях формы.
// Удаление всех настроек конкретного пользователя по ключу объекта
Пользователь = "ИвановИИ";
КлючОбъекта = "Отчет.Продажи.ФормаОтчета";
ХранилищеСистемныхНастроек.Удалить(КлючОбъекта, Неопределено, Пользователь);Ограничения и безопасные границы
Всё, что описано выше, относится к штатным механизмам платформы и не требует вмешательства в структуру базы данных. Прямая правка таблиц СУБД, где лежит хранилище настроек, — недопустимая практика: это нарушает целостность данных и лишает поддержки. Любые массовые операции выполняйте через объектную модель или типовые обработки.
Перед массовой очисткой или переносом настроек делайте выгрузку информационной базы (dt) или хотя бы копию каталога настроек. Настройки не содержат учётных данных, но их потеря означает десятки часов работы пользователей по повторной настройке отчётов и списков.
Что важно запомнить
Настройки форм 1С живут в двух местах: локально в %APPDATA%\1C\1cv8 (файлы pfl) и в системном хранилище настроек внутри базы. Сброс проблемной формы — удаление pfl или очистка через штатные механизмы; перенос — через копирование настроек в БСП или программно. Перед массовыми операциями всегда делайте резервную копию.
Частые вопросы
Почему настройки форм есть на одном компьютере, а на другом нет?
Геометрия окон и часть интерфейсных параметров хранятся локально в профиле ОС конкретного компьютера (файлы pfl). Настройки отчётов и списков в клиент-серверном режиме хранятся в базе и доступны с любого рабочего места. Если нужно перенести и локальную часть — скопируйте pfl в профиль на новом ПК.
Можно ли восстановить удалённые настройки?
Только из резервной копии: либо из копии каталога pfl (для локальных настроек), либо из выгрузки базы dt (для настроек в хранилище). Самой платформы механизма «корзины» для настроек нет, поэтому удаление всегда выполняйте через переименование/перемещение, а не безвозвратное удаление.
Что делать при ошибке «Ошибка формата потока» при открытии формы?
Закройте базу, переместите файлы pfl из каталога базы в %APPDATA%\1C\1cv8 в резервную папку и запустите снова. Если ошибка сохраняется — очистите кэш в %LOCALAPPDATA%\1C\1cv8. В большинстве случаев первого шага достаточно.
Как сбросить настройки списка, не трогая файлы?
Откройте список, перейдите в меню «Ещё → Настроить список» и нажмите «Установить стандартные настройки». Для отчёта — выберите стандартный вариант через «Ещё → Выбрать вариант отчёта». Это сбрасывает только текущий объект, не затрагивая остальные настройки.
Почему настройки не сохраняются между сеансами у одного пользователя?
Чаще всего у пользователя нет права «Сохранение данных пользователя» в назначенных ролях. Проверьте роли в конфигураторе или через административный раздел. Реже причина — переопределённое хранилище настроек в конфигурации с ошибкой в коде сохранения.
Можно ли запретить пользователям менять настройки списков?
Штатного запрета на изменение настроек списка нет, но можно задать нужные отборы и оформление на уровне конфигурации (в запросе динамического списка или модуле формы) — тогда стандартное представление будет единым для всех, а пользовательские изменения останутся локальными и не повлияют на остальных.