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

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

Как добавить расширение в 1С 8.3 через конфигуратор

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

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

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

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

Что нужно подготовить перед добавлением расширения

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

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

Сделайте резервную копию базы: для файловой базы — скопируйте файл 1Cv8.1CD, для клиент-серверной — выполните выгрузку в .dt или средствами СУБД. Это стандартная мера предосторожности перед любыми изменениями прикладного решения.

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

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

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

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

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

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

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

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

После загрузки обязательно выполните обновление конфигурации базы данных (F7). Без этого шага расширение существует в списке, но его изменения не применены к базе, и пользователи его не увидят.

Обновление базы данных и проверка результата

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

Проверить применение расширения можно двумя способами. В конфигураторе в списке расширений у активного расширения стоит флаг в колонке «Активно». В режиме «Предприятие» откройте «Все функции → Стандартные → Управление расширениями конфигурации» — расширение должно присутствовать в списке и не иметь ошибок в колонке состояния.

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

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

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

Список расширений в конфигураторе
Норма

Расширение есть в списке, флаг «Активно» установлен

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

Расширения нет или флаг снят — изменения не применяются

Режим «Предприятие», управление расширениями
Норма

Расширение видно, ошибок в состоянии нет

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

Сообщение о несовместимости или расширение отключено

Изменённая функциональность
Норма

Формы и обработчики работают с учётом доработок

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

Поведение не изменилось — пользователи не перезапустили сеанс

Типичные ошибки при добавлении расширения

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

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

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

Типичные ошибки
01
Не нажато F7 после загрузки — расширение есть в списке, но не применено к базе
02
Загрузка .cf вместо .cfe — файл конфигурации нельзя загрузить как расширение
03
Включённый безопасный режим блокирует файловые операции расширения без явной ошибки
04
Добавление расширения в рабочую базу без теста на копии — риск остановить работу пользователей
05
Имя расширения с пробелами или кириллицей — платформа отклонит такое имя

Выгрузка, обновление и удаление расширения

Чтобы перенести расширение в другую базу или сохранить перед экспериментами, выделите его в списке и нажмите «Выгрузить в файл». Получится .cfe-файл, который можно загрузить в любую совместимую базу. Это же штатный способ передачи доработок между разработчиками.

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

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

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

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

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

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

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

Для загрузки расширения в список монопольный доступ не требуется, но обновление конфигурации базы данных (F7) в большинстве случаев требует завершения сеансов пользователей, особенно при реструктуризации. Планируйте работу на нерабочее время.

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

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

Почему пользователи не видят изменений после добавления расширения?

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

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

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

Удалится ли расширение при обновлении типовой конфигурации?

Нет, расширения хранятся отдельно и сохраняются при обновлении. Но после обновления релиза расширение может стать несовместимым, если изменились заимствованные объекты — тогда его нужно доработать.

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

Да, код расширения отлаживается так же, как код основной конфигурации: точки останова ставятся в модулях расширения, и отладчик останавливается на них при запуске предприятия из этого же конфигуратора.

Итог

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

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