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