Разработка и Конфигурация · 11 мин
Как изменить конфигурацию в 1С: практическое руководство
Как изменить конфигурацию в 1С: включение поддержки, работа в конфигураторе, добавление объектов, обновление базы данных и типичные ошибки при доработке.
Изменение конфигурации в 1С — это доработка структуры прикладного решения: добавление справочников, документов, реквизитов, отчётов, ролей и программного кода. Работа ведётся в режиме «Конфигуратор», а результат применяется к информационной базе через обновление конфигурации базы данных. Любая доработка затрагивает данные пользователей, поэтому порядок действий и резервное копирование здесь важнее скорости.
Перед началом нужно ответить на три вопроса: находится ли конфигурация на поддержке поставщика, есть ли актуальная копия базы и где будет проверяться результат. Типовые конфигурации (1С:Бухгалтерия, 1С:Управление торговлей, ЗУП) по умолчанию защищены от изменений — это сделано, чтобы обновления от вендора устанавливались автоматически. Снятие с поддержки возможно, но меняет правила дальнейших обновлений.
Безопасная схема работы выглядит так: копия базы → изменение в конфигураторе → обновление конфигурации базы данных на копии → проверка → перенос в рабочую базу. Пропуск любого шага превращает рядовую доработку в риск потери данных или остановки учёта.
Что понадобится перед началом работы
Для изменения конфигурации нужны права администратора в информационной базе и доступ к режиму «Конфигуратор». В файловых базах достаточно локального доступа к каталогу, в клиент-серверных — учётной записи с полными правами на кластере и в СУБД. Если конфигурация типовая, потребуется также доступ к дистрибутивам обновлений, чтобы восстановить поддержку при необходимости.
Обязательное условие — резервная копия. Для файловой базы это выгрузка через пункт меню «Администрирование → Выгрузить информационную базу» (файл с расширением .dt) либо копирование файла 1Cv8.1CD при закрытой базе. Для клиент-серверной базы выгрузку .dt делает администратор, а полноценный бэкап — средствами СУБД. Копия нужна не «на всякий случай», а как единственный способ откатить неудачное изменение структуры данных.
Как включить возможность изменения конфигурации
Откройте базу в режиме «Конфигуратор» и выполните команду «Конфигурация → Открыть конфигурацию». Если конфигурация типовая и находится на поддержке, объектные правки будут заблокированы: в дереве конфигурации объекты отображаются, но изменить их нельзя. Признак — недоступность контекстного меню редактирования у объектов.
Чтобы разрешить доработки, перейдите в «Конфигурация → Поддержка → Настройка поддержки» и нажмите кнопку «Включить возможность изменения». Система предупредит о последствиях. Дальше есть два варианта: оставить объекты на поддержке с возможностью изменения (режим «объект редактируется с сохранением поддержки») или снять конфигурацию с поддержки полностью.
Первый вариант предпочтительнее: отдельные доработанные объекты помечаются, а остальная конфигурация продолжает обновляться автоматически. Полное снятие с поддержки оправдано только при глубокой переработке типового решения, когда автоматические обновления всё равно невозможны.
Основные виды изменений и как их выполнить
Большинство прикладных доработок сводится к нескольким типовым операциям в дереве конфигурации. Каждая выполняется через контекстное меню объекта и завершается обновлением конфигурации базы данных.
Добавление реквизита в справочник или документ
Найдите нужный объект в дереве конфигурации, откройте его двойным щелчком и перейдите на вкладку «Данные». Добавьте реквизит, укажите имя, тип (строка, число, дата, ссылка на другой объект) и длину. После этого реквизит нужно вывести на форму: откройте форму объекта и перетащите новый реквизит из панели реквизитов в дерево элементов формы. Без этого шага данные будут храниться в базе, но пользователи их не увидят.
Создание нового объекта метаданных
Новый справочник, документ или регистр создаётся через контекстное меню соответствующей ветки дерева конфигурации — «Добавить». Мастер предложит задать имя, синоним, длину кода и наименования, подсистемы, в которые входит объект. После создания проверьте права: новые объекты не всегда автоматически попадают в существующие роли, и пользователи могут получить ошибку «Нарушение прав доступа».
Изменение программного кода
Модули объектов, форм и общие модули открываются из дерева конфигурации или из палитры свойств объекта. Код пишется на встроенном языке 1С. Для проверки синтаксиса используйте команду «Конфигурация → Проверка конфигурации» или комбинацию Ctrl+F7 в окне модуля — синтаксическая ошибка не даст обновить базу, но логические ошибки проверка не выявит.
Обновление конфигурации базы данных
Изменения, сделанные в конфигураторе, сначала существуют только в конфигурации разработчика. Чтобы применить их к данным, выполните «Конфигурация → Обновить конфигурацию базы данных» или нажмите F7. Платформа покажет список изменений и при необходимости — окно реструктуризации с перечнем операций над таблицами.
Внимательно читайте окно реструктуризации. Операции «изменить» и «добавить» обычно безопасны, а вот удаление реквизитов или сужение типа приводит к безвозвратной потере данных в этих полях. Если в списке есть удаление данных, которое вы не планировали, — отмените обновление и разберитесь, откуда оно взялось.
Во время обновления базы данных с реструктуризацией пользователи не должны работать в базе: в файловом режиме конфигуратор потребует монопольного доступа, в клиент-серверном — установите блокировку сеансов заранее. На больших базах реструктуризация может занимать значительное время, это нужно учитывать при планировании окна обновления.
- 1Сделайте выгрузку базы (.dt) и убедитесь, что она открывается на тестовом стенде
- 2Включите возможность изменения через настройку поддержки
- 3Внесите изменения в объекты, формы и модули
- 4Выполните проверку конфигурации (Ctrl+F7 в модулях, полная проверка для конфигурации)
- 5Обновите конфигурацию базы данных (F7) на копии и проверьте результат в режиме «Предприятие»
- 6Перенесите изменения в рабочую базу в нерабочее время, предварительно завершив сеансы пользователей
Как проверить результат и откатить изменения
После обновления откройте базу в режиме «Предприятие» и пройдите полный пользовательский сценарий: создайте объект, заполните новый реквизит, проведите документ, сформируйте связанный отчёт. Проверять нужно под учётной записью с обычными правами, а не под администратором — под полными правами скрываются ошибки доступа.
Если результат неудовлетворительный, откат зависит от этапа. Пока не выполнено обновление конфигурации базы данных, достаточно закрыть конфигуратор без сохранения или вернуться к сохранённой конфигурации. После обновления с реструктуризацией вернуть структуру можно только восстановлением базы из копии .dt — поэтому копия делается до, а не после.
Как проверить результат
База открывается без сообщений о несоответствии версий конфигурации
Ошибка «Конфигурация базы данных не соответствует сохранённой конфигурации»
Поле видно, заполняется и сохраняется после записи объекта
Поле отсутствует или значение пропадает после перезаписи
Объект доступен в интерфейсе, нет ошибок доступа
«Нарушение прав доступа» или объект не виден в меню
Нет новых ошибок после доработки
Повторяющиеся ошибки в момент работы с изменёнными объектами
Альтернативы прямому изменению конфигурации
Не каждая задача требует правки конфигурации. Часть потребностей закрывается встроенными механизмами без снятия с поддержки, и это предпочтительный путь для типовых решений.
Дополнительные реквизиты и сведения позволяют добавить пользовательские поля к справочникам и документам прямо в режиме «Предприятие», без конфигуратора. Такие поля хранятся отдельно, не затрагивают структуру типовых объектов и не мешают обновлениям. Ограничение — их сложнее использовать в произвольных запросах и проведении документов.
Механизм расширений конфигурации — средний вариант: расширение добавляет объекты, формы и код поверх основной конфигурации, не изменяя её саму. Обновления типового релиза при этом проходят заметно легче, чем при прямых доработках. Расширения подходят для добавления отчётов, обработок, печатных форм и небольшой логики, но не всякую задачу ими можно решить — например, глубокое изменение проведения документов может потребовать прямой правки.
Способы доработки
Подходит для простых пользовательских полей; настраивается без конфигуратора, не влияет на обновления. Ограничение — слабая интеграция с логикой проведения и запросами
Подходит для отчётов, обработок, печатных форм и точечной логики; сохраняет простоту обновлений. Ограничение — не все объекты и сценарии можно переопределить
Подходит для глубокой переработки учётных механизмов; даёт полный контроль. Ограничение — усложняет обновления и требует дисциплины с копиями
Часто задаваемые вопросы
Можно ли изменить конфигурацию, не снимая её с поддержки?
Да. В настройке поддержки есть режим, при котором объекты остаются на поддержке, но доступны для редактирования. Конфигурация в целом продолжает обновляться, а изменённые объекты при обновлении сопоставляются вручную через режим сравнения и объединения. Полное снятие с поддержки для этого не требуется.
Что делать, если кнопка «Включить возможность изменения» недоступна?
Проверьте, что вы работаете под пользователем с полными правами и что конфигурация открыта («Конфигурация → Открыть конфигурацию»). Также возможность изменения может быть заблокирована настройкой поставщика в самой конфигурации или отсутствием пароля настройки поддержки, если он был установлен ранее.
Почему после обновления базы данных пользователи не видят новый объект?
Чаще всего причина в правах: новый объект не добавлен ни в одну роль, доступную пользователям. Откройте роли в конфигураторе, выдайте права на объект и обновите конфигурацию базы данных. Вторая типичная причина — объект не включён ни в одну подсистему, поэтому его нет в командном интерфейсе.
Опасно ли обновление конфигурации базы данных для работающих пользователей?
Да. При реструктуризации таблиц активные сеансы могут завершаться с ошибками, а незавершённые транзакции — откатываться. Перед обновлением рабочей базы завершите сеансы пользователей через консоль кластера или функцию блокировки соединений и выполняйте обновление в нерабочее время.
Как перенести доработки из тестовой базы в рабочую?
Стандартный способ — сохранить конфигурацию в файл .cf («Конфигурация → Сохранить конфигурацию в файл») и загрузить его в рабочую базу через «Загрузить конфигурацию из файла». Для частичного переноса используют сравнение и объединение с файлом конфигурации, отмечая только нужные объекты. Перед загрузкой в рабочую базу обязательно сделайте её выгрузку.
Чем расширение лучше прямой доработки конфигурации?
Расширение хранится отдельно от основной конфигурации, поэтому типовые обновления устанавливаются без ручного объединения объектов. При конфликте расширение можно просто отключить, и база вернётся к типовому поведению. Прямая доработка такой возможности не даёт — откат возможен только восстановлением копии.
Что важно запомнить
Изменение конфигурации выполняется в конфигураторе и завершается обновлением конфигурации базы данных (F7). Перед любыми правками делайте выгрузку .dt и проверяйте результат на копии. Для типовых решений сначала рассмотрите дополнительные реквизиты и расширения — они сохраняют простоту обновлений. После доработки проверяйте права, отображение на формах и журнал регистрации.