Работа с настройками в 1С:Предприятие — одна из самых частых задач как для администраторов, так и для пользователей. От того, где и как хранятся параметры, зависит не только удобство работы, но и стабильность системы. Например, неправильное размещение пользовательских шаблонов может привести к их потере после обновления конфигурации, а хранение критичных параметров в неверном реестре — к сбоям при переносе базы на другой сервер.
В этой статье разберём все возможные места хранения настроек в 1С: от встроенных механизмов (константы, справочники, регистры сведений) до внешних файлов и баз данных. Особое внимание уделим разнице между настройками уровня конфигурации, базы данных и пользовательского сеанса, а также нюансам резервного копирования и синхронизации параметров между разными установками.
Если вы администрируете 1С или разрабатываете конфигурации, здесь найдёте чек-листы для аудита текущих настроек и рекомендации по оптимизации их хранения. Для пользователей — инструкции, как сохранить персональные параметры (например, формы отчётов или шаблоны печатных документов) так, чтобы они не сбрасывались при обновлениях.
1. Встроенные механизмы хранения настроек в 1С
Самый надёжный способ хранить настройки — использовать объекты метаданных, предусмотренные платформой. Их преимущество в том, что они автоматически резервируются вместе с базой, поддерживают права доступа и могут быть легко перенесены между конфигурациями.
Основные объекты для хранения параметров:
- 🔧 Константы — для глобальных параметров, которые редко изменяются (например,
НаименованиеОрганизацииилиКодВалютыПоУмолчанию). Хранятся в базе данных и доступны всем пользователям. - 📋 Справочники — подходят для настроек с иерархией или большим количеством значений (например,
ВидыДокументовилиТипыКонтрагентов). Можно добавлять реквизиты для детализации. - 📊 Регистры сведений — идеальны для параметров, которые изменяются со временем (например,
КурсыВалютилиНастройкиИнтеграции). Поддерживают версии данных и отбор по периодам. - 🖥️ Параметры сеанса — временные настройки, действующие только в текущем сеансе пользователя (например,
ТекущийСкладилиФильтрТоваров). Хранятся в оперативной памяти.
При выборе механизма ориентируйтесь на уровень изменчивости данных и требования к правам доступа. Например, если настройка должна быть доступна только администратору, лучше использовать константу с ограничением по ролям. Если параметры часто меняются и привязаны к датам — регистр сведений.
⚠️ Внимание: При обновлении конфигурации черезКонфигуратор → Поддержка → Обновить конфигурациюнекоторые объекты (например, справочники с предопределёнными элементами) могут быть перезаписаны. Всегда проверяйтеЖурнал обновленийна наличие предупреждений о конфликтах.
2. Хранение пользовательских настроек: формы, отчёты, печатные формы
Пользователи часто настраивают под себя внешний вид форм, шаблоны отчётов или параметры печатных документов. Эти данные хранятся отдельно от конфигурации и требуют особого внимания при резервном копировании или переносе на другой компьютер.
Где ищутся пользовательские настройки:
- 🖼️ Варианты отчётов — сохраняются в базе данных в таблице
_ReportVariants(для управляемых форм) или в файлах.mxl(для обычных форм). Доступны через менюОтчёты → Все отчёты → [Выбрать отчёт] → Варианты. - 📄 Шаблоны печатных форм — хранятся в справочнике
ШаблоныПечатныхФормили в файлах.mxl/.xlsxна сервере/клиенте. Путь к файлам можно увидеть в настройках конкретной печатной формы. - ⚙️ Настройки форм — параметры расположения колонок, ширины полей и т.д. сохраняются в таблице
_UserSettingsStorage(для управляемых форм) или в реестре Windows (для толстого клиента).
Чтобы перенести пользовательские настройки на другой компьютер:
- Экспортируйте варианты отчётов через
Файл → Сохранить вариант(формат.mxl). - Скопируйте файлы шаблонов из папки
%APPDATA%\1C\1Cv8\Templates\(для Windows). - Для управляемых форм используйте обработку
ВыгрузкаЗагрузкаДанныхXMLс галочкойНастройки пользователей.
Экспортировать варианты отчётов (.mxl)
Скопировать шаблоны печатных форм
Выгрузить настройки управляемых форм через XML
Проверить права доступа к папкам на новом ПК-->
⚠️ Внимание: Настройки толстого клиента (например, положение окон или горячие клавиши) хранятся в реестре Windows по пути HKEY_CURRENT_USER\Software\1C\1Cv8\8.x\Config\. При переустановке ОС или смене пользователя они сбросятся.
3. Внешние файлы и базы данных: когда и как использовать
Иногда хранить настройки прямо в 1С неудобно или невозможно. Например, если параметры должны быть доступны нескольким базам или внешним системам. В таких случаях используют:
| Метод хранения | Примеры использования | Плюсы | Минусы |
|---|---|---|---|
Текстовые файлы (.txt, .ini) |
Параметры интеграции, логин/пароль для API | Простота редактирования, нет привязки к базе | Низкая безопасность, нет версионности |
| JSON/XML файлы | Конфигурации оборудования, сложные настройки | Структурированный формат, поддержка вложенных данных | Требует парсинга в 1С |
| База данных (SQLite, MS SQL) | Кэш данных, настройки для кластера серверов | Высокая производительность, транзакции | Сложность настройки, нужны драйверы |
| Облачные хранилища (Yandex Диск, Google Drive) | Резервные копии настроек, шаблоны | Доступ из любой точки, автоматическая синхронизация | Зависимость от интернета, риски утечки данных |
Для работы с внешними файлами в 1С используйте стандартные объекты:
- 📂
ФайловаяСистема— для чтения/записи файлов (пример:ЗаписатьТекст("C:\settings.ini", МоиНастройки)). - 🔌
HTTPСервис— для взаимодействия с облачными API. - 🗃️
ADODB.Connection— для подключения к внешним БД (требует прав администратора).
Критичный нюанс: при хранении паролей или токенов API в файлах обязательно используйте шифрование. В 1С для этого есть функция ШифроватьСтроку() с алгоритмом GOST или AES.
Для резервного копирования внешних файлов настроек настройте задачу в Планировщике заданий Windows, которая будет архивировать папку с настройками раз в неделю.
4. Настройки уровня конфигурации vs. уровня базы данных
Важно понимать разницу между настройками, которые хранятся в конфигурации (в файле .cf или .cfu) и теми, что лежат в базе данных (в файле .1CD или на SQL-сервере). Эта разница критична при обновлениях и переносах.
Настройки уровня конфигурации:
- 🔄 Изменяются в
Конфигураторе(например, состав справочников или макеты печатных форм). - 📦 Хранятся в файле конфигурации (
.cf) или в таблицахconfigиconfigsaveна SQL. - 🔄 При обновлении конфигурации могут быть перезаписаны, если не использовать механизм
Объединение конфигураций.
Настройки уровня базы данных:
- 📊 Изменяются в
1С:Предприятие(например, значения констант или элементы справочников). - 🗃️ Хранятся в таблицах базы данных (например,
_Constдля констант или_Catalogдля справочников). - 🔄 Сохраняются при обновлении конфигурации, но могут потеряться при восстановлении базы из резервной копии.
Чтобы избежать потерь:
- Для критичных параметров используйте регистры сведений с версионностью.
- Перед обновлением конфигурации делайте выгрузку данных через
Все функции → Выгрузка данных. - Настройте автоматическое резервное копирование базы (например, через
Администрирование → Резервное копирование).
Что будет если не разделять настройки по уровням?
Если хранить все параметры в конфигурации, то при каждом обновлении придётся вручную переносить изменения. Если же размещать их только в базе, то при создании новой базы на основе шаблона все настройки придётся настраивать заново. Оптимальный подход — использовать конфигурацию для структуры (какие настройки есть), а базу — для значений (какие именно параметры установлены).
5. Где хранить настройки для интеграций и API
При настройке обмена данными с другими системами (например, с сайтом, CRM или банком) параметры подключения (URL, токены, логины) нужно хранить так, чтобы они:
- 🔒 Были защищены от несанкционированного доступа.
- 🔄 Легко обновлялись без изменения конфигурации.
- 📡 Были доступны всем узлам кластера (если используется распределённая система).
Лучшие практики:
- 🔐 Токены и пароли — храните в
Регистре сведенийс ограничением по ролям или в зашифрованном файле на сервере. Никогда не жестко прописывайте их в модулях! - 🌐 Адреса серверов (URL) — используйте константы с пометкой
ДляИнтеграцииили справочникСервисыОбмена. - ⚡ Параметры очередей — для фоновых задач (например,
РасписаниеОбменов) настройте отдельный справочник с полямиАктивен,Периодичность,ПоследнийЗапуск.
Пример кода для безопасного хранения токена:
// Получение токена из регистра сведений
Токен = РегистрыСведений.ТокеныAPI.ПолучитьПоследние(, "ИнтеграцияССайтом").Токен;
// Использование в запросе
Запрос = Новый HTTPЗапрос("https://api.site.ru/data");
Запрос.Заголовки.Вставить("Authorization", "Bearer " + Токен);
Ответ = Новый HTTPСоединение().Получить(Запрос);
⚠️ Внимание: При использованииHTTPСервисадля интеграций проверьте, что в настройках кластера 1С:Предприятия разрешён исходящий трафик. Для этого вАдминистрирование кластера → Главное → Настройкидолжен быть включён параметрРазрешить исходящие соединения.
6. Резервное копирование и синхронизация настроек
Потеря настроек может парализовать работу компании на несколько дней. Чтобы этого избежать, настройте систему резервного копирования и синхронизации:
Что обязательно резервировать:
- 📂 Файлы конфигурации (
.cf,.cfu) и базы данных (.1CDили SQL-дамп). - 📄 Пользовательские шаблоны и варианты отчётов (папка
%APPDATA%\1C\1Cv8\Templates\). - 🔧 Внешние файлы настроек (например,
settings.jsonв папке с базой). - 📋 Настройки кластера серверов 1С (файл
ras.clusterв папкеC:\ProgramData\1C\1cv8\).
Инструменты для резервирования:
| Инструмент | Что резервирует | Как настроить |
|---|---|---|
| Встроенное резервное копирование | Базу данных (без файлов конфигурации) | Администрирование → Резервное копирование → Настроить расписание |
| 1C:EDT | Конфигурацию и внешние обработки | Подключить систему контроля версий (Git) в Team → Share Project |
| Скрипты PowerShell | Файлы настроек и шаблоны | Написать скрипт для архивации папки %APPDATA%\1C\ |
| SQL Server Agent | Базу данных на MS SQL | Создать задачу Maintenance Plan в SQL Server Management Studio |
Для синхронизации настроек между разными базами (например, между рабочей и тестовой) используйте:
- 🔄 Универсальный обмен данными (через планы обмена).
- 📤 Выгрузку/загрузку XML (обработка
ВыгрузкаЗагрузкаДанныхXML). - 🔗 Внешние обработки для копирования конкретных параметров (например,
КопированиеКонстант.epf).
Резервная копия базы данных БЕЗ файлов конфигурации и пользовательских шаблонов бесполезна для полного восстановления. Всегда проверяйте, что в бэкап включены все критичные компоненты.
7. Типичные ошибки и как их избежать
Даже опытные администраторы 1С иногда допускают ошибки при работе с настройками. Вот самые распространённые:
Ошибка 1: Хранение паролей в открытом виде в модулях
🛑 Последствия: при декомпиляции конфигурации или утечке файлов злоумышленник получит доступ к внешним системам.
✅ Решение: используйте РегистрСведений.Пароли с шифрованием или внешний Key Vault (например, Azure Key Vault).
Ошибка 2: Изменение предопределённых элементов справочников
🛑 Последствия: при обновлении конфигурации такие элементы могут быть перезаписаны, что приведёт к ошибкам в документах.
✅ Решение: создавайте свои элементы справочников или используйте дополнительные реквизиты.
Ошибка 3: Игнорирование прав доступа к настройкам
🛑 Последствия: пользователи могут случайно или намеренно изменить критичные параметры (например, курс валюты).
✅ Решение: настройте роли в Конфигураторе → Администрирование → Пользователи и права.
Ошибка 4: Хранение временных данных в константах
🛑 Последствия: константы кэшируются, и их изменение требует перезапуска сеансов.
✅ Решение: для динамических параметров используйте РегистрСведений или ПараметрыСеанса.
Ошибка 5: Отсутствие документации по настройкам
🛑 Последствия: при уходе администратора новые сотрудники не смогут поддерживать систему.
✅ Решение: ведите реестр настроек в Confluence, Notion или прямо в 1С (справочник ДокументацияНастроек).
Перед массовым обновлением настроек (например, изменением курсов валют) всегда делайте тестовую выгрузку данных в песочницу. Это поможет избежать ошибок в рабочей базе.
FAQ: Частые вопросы по хранению настроек в 1С
🔹 Как перенести настройки из одной базы в другую без потерь?
Используйте обработку ВыгрузкаЗагрузкаДанныхXML с галочками:
- 📋
Справочники(если настройки хранятся там), - ⚙️
Константы, - 📊
Регистры сведений, - 👤
Настройки пользователей(для управляемых форм).
Для пользовательских шаблонов скопируйте файлы из папки %APPDATA%\1C\1Cv8\Templates\.
🔹 Где хранятся настройки печатных форм в управляемом приложении?
В базе данных, в таблице _DocumentTemplates (для документов) или _ReportTemplates (для отчётов). Чтобы их экспортировать:
- Откройте нужный документ или отчёт.
- Нажмите
Печать → Настройки → Сохранить как.... - Выберите формат
.mxlили.xlsx.
🔹 Можно ли хранить настройки в облаке (например, в Google Sheets)?
Да, но с оговорками:
- ✅ Плюсы: доступ из любой точки, нет привязки к базе.
- ❌ Минусы: зависимость от интернета, риски безопасности.
Для этого:
- Настройте
HTTPСервисдля работы с Google API. - Используйте
ОбработкаОжиданиядля фонового обновления данных. - Храните токены доступа в зашифрованном виде (см. раздел 5).
🔹 Как восстановить настройки после сбоя базы?
Порядок действий:
- Восстановите базу из последнего бэкапа (через
Администрирование → Восстановление). - Если бэкапа нет — проверьте папку
%APPDATA%\1C\1Cv8\на наличие файлов.mxl(шаблоны) и.usr(настройки форм). - Для констант и справочников воспользуйтесь обработкой
ВосстановлениеДанныхИзXML. - Если настройки хранились во внешних файлах — восстановите их из резервной копии файловой системы.
Если база повреждена, попробуйте утилиту chdbfl.exe (лежит в папке с платформой 1С). Запуск: chdbfl.exe /F "C:\path\to\base.1CD" /L.
🔹 Почему после обновления конфигурации сбросились настройки?
Это происходит, если:
- Настройки хранились в предопределённых элементах справочников, которые были перезаписаны.
- Использовались константы с флагом "Предопределённая".
- Обновление выполнялось с флагом
/Force, игнорирующим конфликты.
Чтобы избежать потерь:
- Перед обновлением делайте выгрузку данных через
XML. - Используйте
Объединение конфигурацийвместо полной перезаписи. - Храните критичные настройки в
Регистрах сведенийс версионностью.