К статье
Практический материал

Разработка и Конфигурация · 11 мин

Как добавить новое расширение в 1С 8

Как подключить расширение конфигурации в 1С 8.3: создание в конфигураторе, загрузка из файла, настройка безопасного режима, проверка совместимости и типичные ошибки.

Расширение конфигурации — это механизм платформы 1С:Предприятие 8.3, который позволяет добавлять и изменять функциональность типовой конфигурации, не снимая её с поддержки. В отличие от прямой доработки конфигурации, расширение хранится отдельно, легко отключается и не мешает автоматическому обновлению. Именно поэтому добавление доработок через расширения стало стандартной практикой для типовых решений: «Бухгалтерия предприятия», «Управление торговлей», «Зарплата и управление персоналом» и других.

Добавить новое расширение можно двумя путями: создать его с нуля в конфигураторе или загрузить готовый файл с расширением .cfe, полученный от разработчика или поставщика. Оба сценария выполняются через меню «Конфигурация — Расширения конфигурации», а в пользовательском режиме доступна загрузка через раздел «Администрирование — Печатные формы, отчеты и обработки — Расширения» (в конфигурациях на БСП). Ниже разобраны оба способа, настройки безопасности и проверка результата.

Что такое расширение и когда оно нужно

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

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

Подготовка перед добавлением расширения

Перед любыми действиями сделайте резервную копию информационной базы: через конфигуратор («Администрирование — Выгрузить информационную базу») или штатными средствами СУБД для клиент-серверного варианта. Расширение с ошибкой способно заблокировать запуск базы или нарушить работу пользователей, поэтому возможность быстрого отката обязательна.

Убедитесь, что у вас есть права администратора в базе и что режим совместимости конфигурации не ниже версии платформы, в которой создано расширение. Если вы загружаете готовый файл .cfe, уточните у поставщика, для какой версии конфигурации и платформы он собран: расширение, написанное под другой релиз, может не подключиться или работать некорректно.

Также проверьте, не изменена ли конфигурация от поставщика с полным снятием с поддержки. Само по себе это не мешает расширениям, но если база уже сильно доработана напрямую, логика расширения может конфликтовать с ранее внесёнными изменениями.

Создание нового расширения в конфигураторе

Откройте конфигуратор и выполните вход в базу под пользователем с правами администратора. Перейдите в меню «Конфигурация — Расширения конфигурации». В открывшемся окне нажмите кнопку «Создать». Платформа предложит указать имя расширения — используйте короткое осмысленное имя латиницей без пробелов, например DorabotkaPechatnyhForm.

После создания расширение откроется в отдельном окне конфигурации, где изначально пусто. Чтобы доработать объект основной конфигурации, найдите его в основном дереве конфигурации, вызовите контекстное меню и выберите «Добавить в расширение». Заимствованный объект появится в дереве расширения, после чего можно изменять его формы, макеты и модули — переопределять процедуры через аннотации &После, &Перед или &ИзменениеИКонтроль.

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

Порядок создания расширения
  1. 1
    Сделайте резервную копию базы
  2. 2
    Откройте «Конфигурация — Расширения конфигурации»
  3. 3
    Нажмите «Создать» и задайте имя расширения
  4. 4
    Добавьте нужные объекты основной конфигурации в расширение
  5. 5
    Внесите доработки в формы, модули или макеты
  6. 6
    Сохраните расширение и обновите конфигурацию базы данных (F7)
  7. 7
    Проверьте работу доработки в режиме предприятия

Загрузка готового расширения из файла

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

В клиент-серверных базах и при работе через веб-клиент удобнее загружать расширение из режима 1С:Предприятие. В типовых конфигурациях на библиотеке стандартных подсистем откройте «Администрирование — Печатные формы, отчеты и обработки — Расширения» (предварительно включив отображение этой команды в настройках раздела). Нажмите «Добавить из файла», выберите .cfe и подтвердите загрузку. После добавления платформа может запросить перезапуск сеанса.

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

Настройки подключения: безопасный режим и защита от опасных действий

У каждого расширения есть параметры, влияющие на его работу. «Безопасный режим» запрещает расширению обращаться к файловой системе, COM-объектам и внешним компонентам. Для отчетов и печатных форм безопасный режим обычно не мешает, а для обменов с оборудованием или загрузки файлов его придётся отключить — но только если вы доверяете источнику расширения.

Флаг «Защита от опасных действий» контролирует выполнение потенциально опасных операций в пользовательском режиме. При загрузке расширения через «Администрирование» платформа может предупредить о запрете небезопасных действий — это происходит, если у пользователя нет права «Интерактивное открытие внешних отчетов и обработок» или в базе действует профиль безопасности.

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

Контрольные точки

Как проверить результат

Расширение в списке
Норма

Флаг «Применяется» установлен, ошибок загрузки нет

Тревожный признак

Расширение отключено или помечено как несовместимое

Работа доработки
Норма

Новые кнопки, формы или отчеты открываются и выполняются без ошибок

Тревожный признак

При открытии возникает ошибка модуля или объект не виден

Права доступа
Норма

Пользователи с нужными профилями видят объекты расширения

Тревожный признак

Объекты видны только администратору

Обновление конфигурации
Норма

Типовое обновление устанавливается без снятия с поддержки

Тревожный признак

Обновление требует ручного сравнения и объединения

Типичные ошибки и их устранение

Самая частая проблема — конфликт имен: расширение содержит объект с именем, которое уже есть в конфигурации или другом расширении. Платформа откажется применять такое расширение. Решение — переименовать объект или использовать уникальный префикс для всех добавляемых объектов, например Расш1_.

Вторая типичная ситуация — расширение перестаёт работать после обновления конфигурации. Это происходит, когда в новом релизе изменились заимствованные объекты: переименована процедура, изменён состав параметров или удалён реквизит. В окне расширений такое расширение помечается признаком несовместимости. Нужно открыть расширение в конфигураторе, выполнить проверку применимости («Конфигурация — Проверка применимости расширения») и исправить пересечения.

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

Типичные ошибки
01
Загрузка расширения сразу в рабочую базу без теста на копии — риск остановить работу всех пользователей
02
Отключение безопасного режима для расширения из непроверенного источника — риск выполнения вредоносного кода
03
Отсутствие префикса у добавляемых объектов — конфликт имен при обновлении или установке второго расширения
04
Забытый флаг «Применяется» — расширение загружено, но не работает, и причину ищут в коде
05
Игнорирование проверки применимости после обновления — расширение молча перестаёт действовать

Обновление, отключение и удаление расширения

Чтобы обновить расширение до новой версии, загрузите файл .cfe поверх существующего: в окне расширений выберите нужное, нажмите «Загрузить из файла» и подтвердите замену. Имя расширения должно совпадать — иначе платформа создаст второе расширение рядом с первым, и они начнут конфликтовать.

Для временного отключения снимите флаг «Применяется» — расширение останется в базе, но перестанет действовать в новых сеансах. Это удобно при диагностике: если после отключения расширения ошибка исчезла, причина была именно в нём. Для полного удаления выделите расширение и нажмите «Удалить»; добавленные расширением данные (если оно создавало собственные объекты с данными) будут удалены вместе с ним, поэтому перед удалением убедитесь, что эти данные не нужны.

Маршрут решения

Как выбрать действие

Нужна небольшая доработка типовой конфигурации с сохранением автообновленияСоздайте расширение и заимствуйте нужные объекты
Есть готовый файл .cfe от разработчикаЗагрузите его через окно расширений, предварительно протестировав на копии
Расширение ломается после каждого обновления и требует постоянной доработкиРассмотрите перенос функциональности во внешнюю обработку или пересмотр архитектуры доработки
Нужно изменить тип реквизита или удалить объект конфигурацииРасширение не подойдёт — потребуется доработка основной конфигурации

Часто задаваемые вопросы

Можно ли добавить расширение без конфигуратора?

Да, если конфигурация построена на библиотеке стандартных подсистем: в режиме 1С:Предприятие откройте «Администрирование — Печатные формы, отчеты и обработки — Расширения» и добавьте файл .cfe. Для этого нужны права администратора, а в некоторых случаях — отключённая защита от опасных действий.

Нарушит ли расширение автоматическое обновление конфигурации?

Нет, в этом и состоит его главное преимущество. Конфигурация остаётся на поддержке, обновления устанавливаются штатно. Однако после обновления нужно проверить применимость расширения: если в новом релизе изменились заимствованные объекты, расширение потребует доработки.

Чем расширение отличается от внешней обработки?

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

Почему расширение загружено, но доработки не видно?

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

Сколько расширений можно подключить к одной базе?

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

Как перенести расширение в другую базу?

В окне расширений выделите нужное и нажмите «Выгрузить в файл» — получите файл .cfe. В целевой базе загрузите его через «Загрузить из файла». Убедитесь, что версии конфигурации в обеих базах совместимы, иначе потребуется адаптация.

Итог

Что важно запомнить

Расширение добавляется через «Конфигурация — Расширения конфигурации» путём создания нового или загрузки файла .cfe. Всегда делайте резервную копию, тестируйте на копии базы, проверяйте флаг «Применяется» и права доступа, а после обновления конфигурации — применимость расширения.