Администрирование · 12 мин
1С: как посмотреть хранилище общих настроек
Как посмотреть хранилище общих настроек 1С: стандартные функции, код на встроенном языке, обработки, очистка настроек пользователей и решение ошибок.
Хранилище общих настроек в 1С:Предприятие — это служебный механизм, в котором платформа и прикладные решения сохраняют пользовательские настройки: параметры отчётов, варианты печатных форм, настройки форм, значения по умолчанию и другие данные, не привязанные к конкретным документам. Физически эти сведения хранятся внутри информационной базы, а доступ к ним осуществляется через менеджер ХранилищеОбщихНастроек встроенного языка.
Посмотреть содержимое хранилища напрямую «глазами» через интерфейс конфигурации обычно нельзя — типовые решения не содержат формы просмотра этого механизма. Поэтому администраторы и разработчики используют несколько подходов: стандартную обработку «Управление настройками пользователей», внешние обработки, написанные на встроенном языке, а также код через консоль кода или отладчик.
Ниже разобраны все рабочие способы: от простого просмотра и копирования настроек между пользователями до выборочной очистки устаревших данных. Отдельно описаны риски: неаккуратная очистка хранилища может привести к потере настроек отчётов и форм у всех пользователей базы.
Что такое хранилище общих настроек и где оно находится
В платформе 1С:Предприятие предусмотрено несколько системных хранилищ настроек: хранилище общих настроек, хранилище пользовательских настроек отчётов, хранилище настроек данных форм, хранилище вариантов отчётов и хранилище настроек внешнего вида. Каждое из них решает свою задачу, но устроены они схожим образом.
Хранилище общих настроек предназначено для произвольных данных, которые прикладной код сохраняет в разрезе пользователей: последние выбранные значения, параметры обменов, настройки по умолчанию. Данные идентифицируются ключом объекта, ключом настроек и именем пользователя. Физически записи хранятся в служебных таблицах информационной базы — прямой доступ к ним через SQL или чтение файла базы не предусмотрен и не поддерживается.
В файловом варианте базы настройки лежат внутри файла 1Cv8.1CD, в клиент-серверном — в таблицах СУБД. В обоих случаях корректный способ работы с ними — только штатные средства платформы. Прямая правка таблиц в обход платформы приводит к повреждению базы и потере поддержки.
Просмотр настроек через стандартные средства конфигурации
В типовых конфигурациях на Библиотеке стандартных подсистем (Управление торговлей, ERP, Бухгалтерия предприятия и др.) есть штатный механизм работы с пользовательскими настройками. Обычно он доступен в разделе администрирования: «Администрирование» → «Пользователи и права» → обработки копирования и очистки настроек (например, «Копирование настроек пользователей» или пункт «Настройки пользователей» в карточке пользователя).
Эта обработка показывает список пользователей и сохранённых для них настроек — внешний вид форм, варианты отчётов, прочие настройки. Через неё можно посмотреть состав настроек конкретного пользователя, скопировать их другому сотруднику или удалить выбранные позиции. Это самый безопасный способ, поскольку он работает через документированные механизмы платформы.
- 1Откройте раздел «Администрирование» → «Настройка прав и пользователей» (или «Пользователи и права»).
- 2Откройте карточку нужного пользователя или обработку копирования настроек.
- 3Перейдите по ссылке «Настройки» / «Копирование настроек» — откроется список сохранённых настроек с группировкой по типам.
- 4Выберите нужные позиции для просмотра, копирования или удаления.
- 5Проверьте результат: попросите пользователя перезапустить сеанс и убедиться, что настройки применились.
Учтите, что стандартная обработка показывает не всё содержимое хранилища общих настроек, а в первую очередь настройки форм и отчётов. Произвольные данные, которые прикладной код сохраняет через ХранилищеОбщихНастроек.Сохранить(), в ней могут не отображаться — для их просмотра нужен программный доступ.
Просмотр хранилища через встроенный язык
Полный доступ к содержимому хранилища даёт встроенный язык. Основные методы менеджера:
ХранилищеОбщихНастроек.Загрузить(КлючОбъекта, КлючНастроек)— возвращает сохранённое значение;ХранилищеОбщихНастроек.ПолучитьСписок(КлючОбъекта)— возвращает список ключей настроек по объекту;ХранилищеОбщихНастроек.Сохранить(...)— записывает значение;ХранилищеОбщихНастроек.Удалить(КлючОбъекта, КлючНастроек, ИмяПользователя)— удаляет запись.
Чтобы посмотреть конкретное значение, достаточно выполнить код в консоли кода (внешняя обработка «Консоль кода») или во временной обработке:
Значение = ХранилищеОбщихНастроек.Загрузить("ОбщиеНастройки", "НастройкиОбмена", "ИвановИИ");
Сообщить(Значение);
// Получить список ключей настроек по объекту для пользователя
СписокКлючей = ХранилищеОбщихНастроек.ПолучитьСписок("ОбщиеНастройки", "ИвановИИ");
Для Каждого Ключ Из СписокКлючей Цикл
Сообщить(Ключ.Значение);
КонецЦикла;Если имя пользователя не указать, методы применяются к текущему пользователю сеанса. Для чтения настроек других пользователей требуются административные права в базе. Имя пользователя для хранилища — это имя пользователя информационной базы (ПользователиИнформационнойБазы), а не наименование элемента справочника «Пользователи» — в типовых конфигурациях эти сущности связаны, но имена могут отличаться.
Внешние обработки для просмотра и очистки настроек
Для регулярного администрирования удобно использовать специализированные внешние обработки, которые выводят всё содержимое системных хранилищ в виде дерева: пользователь → тип хранилища → ключ объекта → ключ настроек. Такие обработки позволяют посмотреть значение, удалить отдельную запись или очистить все настройки выбранного пользователя.
Типовая логика собственной обработки проста: перебор пользователей информационной базы, для каждого — вызов методов получения списков ключей по известным ключам объектов, либо чтение через Выборка-механизмы стандартных хранилищ. Существенное ограничение: универсального метода «вернуть все ключи объектов» у хранилища общих настроек нет, поэтому полный перебор возможен только по известным ключам объектов или через стандартные хранилища настроек форм и отчётов, где перечни фиксированы.
Перед запуском любой обработки очистки проверьте её на копии базы. Особенно осторожно работайте с настройками, которые сохраняют механизмы обмена данными и регламентные задания: их удаление может сбросить параметры синхронизации, и настройку придётся выполнять заново.
Очистка хранилища и типичные сценарии администрирования
На практике обращаться к хранилищу общих настроек чаще всего приходится в трёх ситуациях: у пользователя «сломалась» форма или отчёт (ошибка формата потока, «Ошибка загрузки настроек»), нужно перенести настройки новому сотруднику, либо требуется сбросить настройки уволенного пользователя перед удалением его учётной записи.
Для сброса настроек конкретного пользователя проще всего использовать стандартную обработку очистки в разделе администрирования — она удаляет настройки форм, отчётов и прочие данные выборочно. Программно отдельную запись удаляют так:
ХранилищеОбщихНастроек.Удалить("ОбщиеНастройки", "НастройкиОбмена", "ИвановИИ");
После очистки настроек пользователю нужно завершить сеанс и войти заново: платформа кэширует часть настроек в сеансе, и изменения могут не примениться до перезапуска. Если проблема была в «битой» настройке формы, после перезахода форма откроется со значениями по умолчанию.
Как проверить результат
Возвращается ожидаемое значение или Неопределено, если настройки нет
Ошибка формата потока — настройка повреждена, её нужно удалить
Возвращается список значений с ключами настроек
Пустой список при заведомо сохранённых настройках — проверьте имя пользователя ИБ
Форма открывается с настройками по умолчанию, ошибок нет
Ошибка повторяется — проблема не в настройках, а в коде или данных
Ограничения и границы самостоятельной работы
Работа с хранилищем общих настроек безопасна в режиме чтения: методы Загрузить и ПолучитьСписок ничего не изменяют в базе. Риск появляется только при вызове Сохранить и Удалить — здесь действует правило: любые изменения выполняются после резервного копирования и желательно в тестовой копии.
Для выполнения кода с указанием чужого имени пользователя нужны права администратора информационной базы. Обычный пользователь может читать и изменять только собственные настройки. В клиент-серверном варианте код целесообразно выполнять на сервере — через серверную консоль кода или фоновое задание, чтобы не зависеть от прав клиентского сеанса.
Как выбрать действие
Если настройки сохраняет отраслевое или сильно доработанное решение и назначение ключей неизвестно, не удаляйте записи «наугад». Сначала выясните в документации конфигурации или у её разработчика, какие данные хранятся под конкретным ключом объекта, — иначе можно сбросить критичные параметры обменов или учётных механизмов.
Что важно запомнить
Хранилище общих настроек просматривается через менеджер ХранилищеОбщихНастроек (Загрузить, ПолучитьСписок) или штатную обработку настроек пользователей в типовых конфигурациях. Чтение безопасно, удаление — только после резервной копии. Имя пользователя для методов хранилища — это имя пользователя информационной базы.
Частые вопросы
Где физически хранятся общие настройки 1С?
Внутри информационной базы: в файловом варианте — в служебных таблицах файла 1Cv8.1CD, в клиент-серверном — в таблицах СУБД. Прямой доступ к этим таблицам не поддерживается, работа ведётся только через менеджер ХранилищеОбщихНастроек встроенного языка или стандартные обработки.
Можно ли посмотреть настройки другого пользователя?
Да, если у вас есть административные права в информационной базе. В методах Загрузить, ПолучитьСписок и Удалить третьим параметром передаётся имя пользователя информационной базы. Без административных прав доступны только собственные настройки.
Что делать при ошибке «Ошибка формата потока» при открытии формы?
Чаще всего причина — повреждённая настройка формы в системном хранилище. Удалите настройки этого объекта для проблемного пользователя через стандартную обработку очистки настроек или методом Удалить, затем попросите пользователя перезайти в базу. Форма откроется с настройками по умолчанию.
Чем хранилище общих настроек отличается от хранилища настроек данных форм?
Хранилище настроек данных форм платформа использует автоматически для сохранения состояния форм (размеры, видимость колонок, порядок). Хранилище общих настроек — универсальное: в него прикладной код сохраняет произвольные значения через метод Сохранить. У каждого хранилища свой менеджер встроенного языка.
Восстановятся ли настройки после удаления?
Нет, удаление необратимо. Восстановить настройки можно только из резервной копии базы целиком. Поэтому перед массовой очисткой всегда делайте выгрузку информационной базы (файл dt) или копию файла базы.
Как перенести настройки от одного пользователя другому?
В типовых конфигурациях на БСП используйте обработку копирования настроек в разделе администрирования: выберите пользователя-источника, отметьте нужные настройки и укажите получателей. Программно значение можно прочитать методом Загрузить с именем одного пользователя и записать методом Сохранить с именем другого.