Доработка типовой 1С без потери обновлений: от включения изменений до выкладки

· 9 мин

Содержание

Чтобы изменить конфигурацию 1С, откройте базу в режиме Конфигуратор, выполните Конфигурация → Открыть конфигурацию, включите возможность изменения в настройке поддержки, внесите правки и нажмите F7 — «Обновить конфигурацию базы данных». Для типовых решений правильнее сначала подумать о расширении: оно не снимает базу с поддержки и не мешает обновлениям.

Типичная ситуация: бухгалтер просит добавить в реализацию поле «Номер договора поставки», а программист сразу лезет в типовой документ. Через полгода приходит обновление БП 3.0, и вместо пяти минут оно занимает день ручного сравнения. Если соблюдать порядок из шести шагов — копия, поддержка, правка, отладка, обновление БД, проверка, — изменение конфигураций в 1С обходится без таких сюрпризов и для пользователя, и для разработчика.

Подготовка к изменению конфигурации: копия базы и режим поддержки

Любая правка структуры начинается с резервной копии. Без выгрузки базы не меняйте конфигурацию рабочей базы — откатить удалённый реквизит с данными без копии нельзя.

Что сохранить перед работой

  1. 💾 Выгрузку всей базы: Администрирование → Выгрузить информационную базу в Конфигураторе. Получится файл .dt — это и данные, и конфигурация.
  2. 📄 Отдельно конфигурацию: Конфигурация → Сохранить конфигурацию в файл. Файл .cf пригодится для сравнения «до и после».
  3. 🧪 Тестовую копию: создайте новую пустую базу и загрузите туда .dt. Все правки сначала делайте в ней.

Для выгрузки .dt нужен монопольный доступ, поэтому пользователей придётся попросить выйти. Делайте это в обед или вечером.

Права пользователя

Войти в Конфигуратор может только пользователь с административными правами (в типовых конфигурациях — с ролью «Полные права»). Если в базе нет ни одного пользователя, вход открыт всем — это стоит исправить сразу.

Включение возможности изменения

Типовая конфигурация приходит «на поддержке» у поставщика и по умолчанию закрыта от правки. Объекты в дереве отмечены замочком.

  1. Откройте Конфигурация → Поддержка → Настройка поддержки.
  2. Нажмите «Включить возможность изменения» и подтвердите.
  3. В появившемся окне выберите правило для объектов поставщика.
ПравилоЧто происходитКогда выбирать
Объект поставщика не редактируетсяОбъект закрыт, правки невозможныПо умолчанию для всех, кроме нужных
Объект поставщика редактируется с сохранением поддержкиМожно править, при обновлении платформа предложит объединениеТочечные доработки типовой
Объект поставщика снят с поддержкиОбъект больше не обновляется автоматическиТолько если доработка радикальная и вы готовы сопровождать её сами

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

Как открыть конфигурацию в Конфигураторе и где что находится

В окне запуска 1С выберите базу и нажмите кнопку «Конфигуратор». После входа дерево объектов ещё не видно — откройте его через Конфигурация → Открыть конфигурацию.

Два понятия, которые путают

  • 🗂 Основная конфигурация — та, что вы редактируете в дереве. Изменения сохраняются в неё по Ctrl+S.
  • 🗄 Конфигурация базы данных — то, с чем реально работают пользователи. Она меняется только после F7.

Пока вы не нажали F7, пользователи ничего не видят. Это удобно: можно спокойно сохранять промежуточные варианты. Если правки зашли не туда, команда Конфигурация → Конфигурация базы данных → Вернуться к конфигурации БД отменит всё несохранённое в базу.

Основные инструменты

  • 🌳 Дерево конфигурации — справочники, документы, регистры, отчёты, общие модули, роли.
  • 🔍 Поиск по дереву — строка над деревом, удобно искать объект по имени.
  • 🧾 Палитра свойств — открывается двойным щелчком или Alt+Enter, здесь имя, синоним, типы реквизитов.
  • 🖼 Редактор форм — дерево элементов, реквизиты формы, команды.
  • ⚖ Конфигурация → Сравнить конфигурации — показывает разницу между основной, конфигурацией БД, поставщика или файлом .cf.

Изменение объектов конфигурации: добавить, поправить, удалить

Объекты метаданных — это справочники, документы, регистры, перечисления и прочее. Большинство доработок сводится к трём операциям.

Добавить новый объект

  1. Выделите в дереве ветку, например «Справочники».
  2. Нажмите Insert или кнопку «Добавить».
  3. Задайте имя латиницей или кириллицей без пробелов, синоним — так объект увидит пользователь.
  4. Добавьте реквизиты, создайте формы (кнопка в карточке объекта откроет конструктор форм).
  5. Дайте права: откройте нужные роли и отметьте новый объект. Без этого пользователи получат ошибку Недостаточно прав.

Свои объекты называйте с префиксом, например мк_ДоговорыПоставки. При обновлении сразу видно, что это ваше, а не поставщика.

Добавить реквизит в типовой документ

Самая частая просьба бухгалтера. Порядок:

  1. Убедитесь, что для документа включено «редактируется с сохранением поддержки».
  2. Откройте документ, вкладка «Данные» → добавьте реквизит, укажите тип.
  3. Откройте форму документа и перетащите реквизит из списка в дерево элементов.
  4. Если поле нужно в печатной форме — правьте макет и процедуру заполнения. В типовых БП печать часто собирается в общих модулях, ищите по имени макета.

Пример: реквизит мк_НомерДоговораПоставки, тип «Строка», длина 50. После F7 поле появится в форме, старые документы получат пустое значение.

Изменить или удалить

  • ✏ Переименование реквизита ломает все запросы и модули, где он упомянут по имени. Перед переименованием выполните поиск по конфигурации (Ctrl+Shift+F, «Искать везде»).
  • 🗑 Удаление: щёлкните правой кнопкой по объекту и сначала выберите «Поиск ссылок на объект». Если ссылки есть, удалить не получится, пока вы их не уберёте.
  • ⚠ Удалённый реквизит после F7 уносит с собой данные. Если не уверены, лучше переименуйте его с префиксом Удалить_ и уберите с формы — так делают и сами поставщики.

Работа с модулями: правка кода, проверка синтаксиса и отладка

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

Правка кода

  • Вносите изменения в типовой модуль минимально. Лучше вызов одной своей процедуры из общего модуля, чем пятьдесят строк в середине типовой.
  • Свой код помечайте комментарием с датой и автором — при объединении это сэкономит время.
  • Проверяйте синтаксис: Ctrl+F7 в открытом модуле или команда проверки модулей в меню «Конфигурация».

Пример аккуратной вставки в модуль формы документа:

// мк 2026-10 Заполнение номера договора поставки
&НаСервере
Процедура мк_ЗаполнитьНомерДоговора()
    Если ЗначениеЗаполнено(Объект.Договор) Тогда
        Объект.мк_НомерДоговораПоставки = Объект.Договор.Номер;
    КонецЕсли;
КонецПроцедуры

Отладка

  1. Поставьте точку останова: курсор на строку и F9.
  2. Запустите отладку: Отладка → Начать отладку (F5) и выберите клиент.
  3. В режиме 1С:Предприятие выполните действие — выполнение остановится на строке.
  4. Шагайте по коду F10 и F11, смотрите значения в табло (Shift+F9 — вычислить выражение).

Для клиент-серверной базы отладка серверного кода требует, чтобы сервер был запущен с разрешённой отладкой. Если точки останова на сервере не срабатывают, проверьте это у администратора сервера.

Сохранение изменений и обновление конфигурации базы данных

Изменения проходят два шага, и оба обязательны.

  1. Сохранить — Ctrl+S или кнопка с дискетой. Правки записаны в основную конфигурацию, пользователи их ещё не видят.
  2. Обновить конфигурацию БД — F7 или Конфигурация → Обновить конфигурацию базы данных. Платформа покажет окно «Реорганизация информации» со списком изменений структуры. Прочитайте его, а не жмите «Принять» вслепую.

Когда пользователи в базе

Если в базе кто-то работает, платформа предложит динамическое обновление. Пользователи продолжат работу, а изменения увидят после перезапуска. Для правки модулей и форм это допустимо.

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

В окне реорганизации внимательно ищите строки об удалении данных. Если видите удаление реквизита, который вы не трогали, — нажмите «Отмена» и сравните конфигурации.

Проверка доработки и выкладка пользователям

Протестированная в копии доработка переносится в рабочую базу одним из способов:

  • 📦 Сохраните конфигурацию тестовой базы в .cf, затем в рабочей выполните Конфигурация → Сравнить, объединить с конфигурацией из файла и отметьте только свои объекты.
  • 🔄 Если в команде несколько разработчиков, используйте хранилище конфигурации: объект захватывают, правят и помещают обратно. Выкладка в рабочую базу — через обновление из хранилища.

Что проверить перед выкладкой

Перед переносом доработки в рабочую базу
Выполнено: 0 / 7

После выкладки предупредите пользователей, что поле появилось, и попросите перезапустить 1С. Первые пару дней собирайте замечания — тест под администратором не ловит ошибки прав.

Расширения и другие способы изменить 1С без правки типовой

Не всякая доработка требует снимать замок с типовой. Сравним варианты:

СпособЧто можноВлияние на обновленияКто делает
Настройки пользовательского режимаФормы, списки, отчёты, печатные формы через встроенные средстваНе влияетПользователь, администратор
Внешние отчёты и обработки (.erf, .epf)Новые отчёты, печатные формы, заполнение табличных частейНе влияетРазработчик
Расширение конфигурации (.cfe)Новые реквизиты, формы, перехват процедур, новые объектыМинимальное, расширение проверяется после обновленияРазработчик
Изменение основной конфигурацииВсёОбновление через сравнение и объединениеРазработчик

Расширения появились в платформе 8.3.6. Их создают в Конфигураторе через Конфигурация → Расширения конфигурации, а подключают готовый файл .cfe в БП 3.0 через Администрирование → Печатные формы, отчеты и обработки → Расширения. Загрузка расширения и обновление конфигурации БД — разные шаги: после загрузки в Конфигураторе ещё нужно F7 для расширения.

Внешние отчёты и обработки в БП 3.0 подключают в том же разделе, пункт «Дополнительные отчеты и обработки».

Что вам нужно сделать?

В облачных сервисах вроде 1С:Фреш основную конфигурацию менять нельзя. Там доступны расширения и внешние обработки, прошедшие проверку сервиса.

Ошибки при изменении конфигурации и как их не допустить

  • ❌ Правка сразу в рабочей базе. Ошибка в модуле проведения остановит работу всей бухгалтерии. Сначала тестовая копия.
  • ❌ Снятие всей конфигурации с поддержки. После этого обновление превращается в ручное сравнение тысяч объектов. Снимайте с поддержки только конкретный объект и только при крайней необходимости.
  • ❌ Сохранили, но не обновили БД. Программист видит изменения, пользователи — нет. Признак: в заголовке окна Конфигуратора и в дереве отмечено, что конфигурация отличается от конфигурации БД.
  • ❌ Забыли про роли. Новый справочник есть, а у пользователей Недостаточно прав для просмотра.
  • ❌ Два разработчика правят одну базу без хранилища. Последний сохранивший затирает изменения первого.
  • ❌ Удаление реквизита с данными. После F7 значения пропадают. Помечайте префиксом Удалить_, удаляйте после проверки.

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

Как понять, что конфигурация уже изменена?
Откройте Конфигурация → Поддержка → Настройка поддержки. Если возможность изменения включена и у объектов стоят правила кроме «не редактируется», конфигурацию правили. Точный список покажет сравнение с конфигурацией поставщика.
Можно ли вернуть типовую конфигурацию после доработок?
Можно загрузить чистый .cf той же версии через Конфигурация → Загрузить конфигурацию из файла. Доработки пропадут, а данные в удалённых реквизитах будут потеряны после F7, поэтому сначала выгрузите базу.
Нужен ли программист, чтобы добавить одно поле?
Добавить реквизит в форму может и опытный пользователь с правами администратора. Но если поле должно попадать в печать, отчёты или проводки, нужен разработчик: там затрагивается код.
Сколько стоит доработка у специалиста?
Ориентировочно простое поле в форме и печатной форме — 1–3 часа работы. Час программиста 1С в регионах обычно стоит примерно 1 500–3 000 рублей, в Москве выше. Точную оценку дают после просмотра задачи.
Почему после обновления пропала доработка?
Скорее всего, при объединении выбрали «Взять из новой конфигурации поставщика» для изменённого объекта. Восстановите её из .cf, сохранённого до обновления, через сравнение и объединение.