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