Куда 1С 8.3 сохраняет пользовательские настройки и варианты отчётов

· 9 мин

Содержание

Пользовательские настройки отчётов в 1С 8.3 хранятся не в файлах на компьютере, а внутри самой информационной базы: в файловом варианте — в 1Cv8.1CD, в клиент-серверном — в служебных таблицах СУБД (_RepSettings, _RepVarSettings и соседних). Поэтому настройки «приезжают» за пользователем на любой компьютер, где он входит в ту же базу под своим именем.

На компьютере пользователя остаются только кэш и список баз. Удаление папок профиля %APPDATA%\1C\1cv8 не стирает ни сохранённые варианты, ни отборы, ни группировки отчётов. Это правило одинаково для тонкого, толстого и веб-клиента, для управляемых и обычных форм.

Какие хранилища настроек отчётов есть в 1С 8.3

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

Хранилище (имя в языке 1С)Что в нём лежитТаблица в СУБД
ХранилищеВариантовОтчетовВарианты отчётов: структура, поля, группировки, оформление_RepVarSettings
ХранилищеПользовательскихНастроекОтчетовЛичные настройки пользователя внутри варианта: период, отборы, быстрые настройки_RepSettings
ХранилищеНастроекДанныхФормЗначения реквизитов форм, которые запоминаются между сеансами_FrmDtSettings
ХранилищеСистемныхНастроекПоложение и размер окон, настройки списков, внешний вид_SystemSettings
ХранилищеОбщихНастроекПрочие настройки, которые пишет код конфигурации_CommonSettings

Разница между вариантом и пользовательской настройкой важна на практике:

  • 📊 Вариант отчёта — это «каркас»: какие колонки, какие группировки, какое оформление. Вариант может быть общим для всех.
  • 👤 Пользовательская настройка — это личное поверх варианта: выбранный период, организация в отборе, включённые флажки. Она своя у каждого пользователя.

Если бухгалтер жалуется, что «у коллеги отчёт выглядит иначе», обычно у них один вариант, но разные пользовательские настройки.

Типовые конфигурации на БСП

В БП 3.0, ЗУП 3.1, УТ 11 и других конфигурациях на Библиотеке стандартных подсистем стандартное хранилище вариантов заменено своим. Варианты отчётов там хранит справочник «Варианты отчётов». Это видно в Конфигураторе: откройте свойства корня конфигурации и найдите группу свойств с хранилищами настроек. Если в поле хранилища вариантов указано хранилище из конфигурации, а не пусто, — значит, используется не платформенная таблица, а объект конфигурации.

Пустое поле хранилища в свойствах конфигурации означает, что работает стандартное хранилище платформы и данные лежат в служебной таблице из таблицы выше.

Где хранятся настройки отчётов в файловой базе и в обычном приложении

В файловом варианте вся база — один файл 1Cv8.1CD в каталоге, который указан в списке баз. Служебные таблицы настроек находятся внутри него, рядом с документами и справочниками. Отдельных файлов настроек отчётов в каталоге базы нет.

Что лежит рядом с базой и на компьютере пользователя:

  • 📁 1Cv8.1CD — сама база, в том числе все настройки отчётов.
  • 📁 1Cv8.1CL, 1Cv8tmp.1CD и подобные — служебные и временные файлы, настройки в них не хранятся.
  • 🗂 %APPDATA%\1C\1cv8\ и %LOCALAPPDATA%\1C\1cv8\ — кэш конфигурации и служебные данные клиента. Каждая база получает подпапку с именем-идентификатором.
  • 📄 %APPDATA%\1C\1CEStart\ibases.v8i — список баз в окне запуска. Отчётов он не касается.

Обычное приложение

Конфигурации на обычных формах (УПП, БП 2.0, КА 1.1) тоже работают на платформе 8.x, и стандартные хранилища у них в базе. Но многие отчёты там написаны без системы компоновки данных и сохраняют настройки своим кодом. В таких конфигурациях настройки отчётов часто ведёт отдельный справочник сохранённых настроек: пользователь нажимает команду сохранения значений, и запись появляется в этом справочнике.

Отсюда практический вывод: в обычном приложении сначала посмотрите, как отчёт сохраняет настройки. Если в форме отчёта есть команды сохранения и восстановления значений со списком сохранённых наборов, данные почти наверняка лежат в справочнике конфигурации. Найти его можно в Конфигураторе поиском по слову «настройки» в дереве метаданных.

Хранение настроек в отдельных файлах на диске — это особенность 1С 7.7, а не 8.3. Если инструкция советует искать настройки отчёта в папке пользователя, она про старую версию.

Хранение настроек отчётов в клиент-серверной базе и SQL

В клиент-серверном варианте база живёт в СУБД (MS SQL Server, PostgreSQL). Настройки — это строки в служебных таблицах, имена которых начинаются с подчёркивания:

  • _RepVarSettings — варианты отчётов из стандартного хранилища;
  • _RepSettings — пользовательские настройки отчётов;
  • _FrmDtSettings, _SystemSettings, _CommonSettings — остальные хранилища.

В каждой строке есть имя пользователя, ключ объекта (какой отчёт), ключ настройки и сами данные. Данные хранятся в упакованном двоичном виде. Прочитать их в SQL как текст не получится.

Проверить, что таблицы есть и заполнены, можно запросом только на чтение. Пример для MS SQL Server:

-- только просмотр, без изменений
SELECT COUNT(*) AS rep_settings FROM dbo._RepSettings;
SELECT COUNT(*) AS rep_variants FROM dbo._RepVarSettings;

Если нужно точно связать таблицы СУБД с объектами базы, используйте встроенную функцию ПолучитьСтруктуруХраненияБазыДанных(): она возвращает соответствие имён метаданных и имён таблиц. Для справочника «Варианты отчётов» в конфигурациях на БСП это будет таблица вида _Reference<номер>, номер свой в каждой базе.

Не изменяйте и не удаляйте строки в таблицах базы 1С через SQL. Фирма 1С такие правки не поддерживает, а база после них может перестать открываться или потерять целостность. Всё, что нужно сделать с настройками, делается средствами 1С.

Настройки и имя пользователя

Стандартные хранилища платформы привязывают настройку к имени пользователя информационной базы. Отсюда два следствия:

  1. 👥 Если несколько человек работают под одним пользователем, они перезаписывают настройки друг друга.
  2. ✏️ После переименования пользователя проверьте, сохранились ли его настройки отчётов. В конфигурациях на БСП переименование лучше делать в режиме Предприятия через карточку пользователя, а не в Конфигураторе.

Тонкий клиент и веб-клиент: что остаётся на компьютере

С точки зрения хранения настроек тонкий клиент, толстый клиент и веб-клиент ничем не отличаются. Пользователь меняет отчёт, платформа отправляет настройки на сервер, сервер пишет их в базу. Браузер в веб-клиенте сохраняет только служебные данные сеанса.

Что из этого следует:

  • 🌐 Пользователь, который работает то через браузер, то через тонкий клиент, видит одни и те же настройки отчётов.
  • 🧹 Очистка кэша браузера или запуск с параметром /ClearCache не сбрасывают настройки отчётов. Этот параметр очищает только локальный кэш конфигурации.
  • 💻 Новый компьютер не требует переноса настроек: достаточно войти в ту же базу под тем же пользователем.
  • ☁️ В облачных базах (1С:Фреш и аналоги) настройки так же лежат в базе на стороне сервиса.

Если на одном компьютере отчёт выглядит «правильно», а на другом нет, хотя пользователь тот же, проверьте, та ли это база. Частая причина — в списке баз два пункта с похожими названиями, один из которых указывает на копию.

Как перенести настройки отчётов на другой компьютер или в другую базу

Перенос на другой компьютер внутри одной базы не нужен, это уже понятно. Перенос между пользователями и между базами — другое дело.

Между пользователями одной базы

В конфигурациях на БСП есть обработка настроек пользователей. В БП 3.0 и ЗУП 3.1 она открывается из раздела Администрирование → Настройки пользователей и прав. Там выбирают пользователя, открывают вкладку с настройками отчётов и копируют нужные другим пользователям. Там же настройки можно очистить.

Для общего варианта есть путь проще:

  1. Откройте отчёт и настройте его.
  2. Сохраните вариант через меню Ещё командой сохранения варианта.
  3. В окне сохранения укажите, что вариант доступен всем пользователям, а не только автору.
  4. Коллеги выбирают этот вариант в списке вариантов отчёта.

Между базами

Варианты в справочнике «Варианты отчётов» не переносятся сами при загрузке данных из другой базы. Рабочих способов три:

СпособКогда подходитОграничения
Выгрузка .dt и загрузка в другую базуНужна полная копия базы со всеми настройкамиЗаменяет всю базу-приёмник целиком
Перенос через файл XML из кодаНужно перенести 1–5 вариантов конкретного отчётаНужен доступ к Конфигуратору или внешней обработке
Повторная настройка вручнуюВариантов немного, отчёт простойДолго при сложной структуре

Для отчётов на системе компоновки данных настройки сериализуются в XML штатно. Фрагмент внешней обработки, которая сохраняет текущие настройки отчёта в файл и загружает их обратно:

// Сохранение: Отчет — объект отчёта на СКД
Процедура СохранитьНастройкиВФайл(Отчет, ИмяФайла)
    Настройки = Отчет.КомпоновщикНастроек.ПолучитьНастройки();
    Запись = Новый ЗаписьXML;
    Запись.ОткрытьФайл(ИмяФайла);
    СериализаторXDTO.ЗаписатьXML(Запись, Настройки);
    Запись.Закрыть();
КонецПроцедуры

// Загрузка в отчёт другой базы
Процедура ЗагрузитьНастройкиИзФайла(Отчет, ИмяФайла)
    Чтение = Новый ЧтениеXML;
    Чтение.ОткрытьФайл(ИмяФайла);
    Настройки = СериализаторXDTO.ПрочитатьXML(Чтение);
    Чтение.Закрыть();
    Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(Настройки);
КонецПроцедуры

После загрузки сохраните вариант в базе-приёмнике обычным способом. Если в отчёте другой базы нет каких-то полей (другой релиз конфигурации), платформа отбросит неизвестные поля, остальное загрузится.

Восстановление настроек отчётов после сбоя или обновления

Поскольку настройки лежат в базе, восстанавливаются они вместе с базой. Отдельной резервной копии настроек платформа не делает.

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

Как достать настройки из резервной копии, не откатывая всю базу

Если пострадали только настройки, а документы за последние дни терять нельзя, действуйте так:

  1. Разверните резервную копию как отдельную базу. Для файлового варианта — скопируйте 1Cv8.1CD в новый каталог, для клиент-серверного — создайте новую базу на сервере и загрузите в неё .dt или восстановите копию СУБД под другим именем.
  2. Добавьте эту копию в список баз и войдите под нужным пользователем.
  3. Откройте отчёт с нужным вариантом и сохраните настройки в XML через обработку из предыдущего раздела.
  4. В рабочей базе загрузите файл в отчёт и сохраните вариант.
  5. Удалите временную копию, чтобы с ней случайно не начали работать.

Тестирование и исправление информационной базы требует монопольного доступа: всех пользователей придётся вывести из базы. Делайте это вне рабочего времени и только после резервной копии.

Как не терять настройки в будущем

  • 💾 Регулярная резервная копия всей базы — единственная настоящая защита настроек.
  • 🧾 Важные варианты отчётов для руководства сохраняйте как общие варианты с понятным именем, а не как личную настройку одного бухгалтера.
  • 🔤 Не давайте нескольким людям общий логин: настройки будут перезаписываться.
  • 📤 Перед крупным обновлением конфигурации выгрузите в XML 3–5 самых сложных вариантов отчётов.

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

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