Подключение файла .cfe к базе 1С 8.3: от проверки до удаления

· 10 мин

Содержание

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

Пользовательский режим подходит бухгалтеру или администратору без навыков разработки. Конфигуратор выбирает программист: там видно дерево объектов, ошибки проверки и свойства заимствованных объектов. Для десятка баз удобнее третий путь — пакетная загрузка из командной строки. Механизм расширений появился в платформе 8.3.6 и работает во всех современных типовых: БП 3.0, ЗУП 3.1, УТ 11, КА, ERP.

Перед загрузкой: версия платформы, режим совместимости и копия базы

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

  1. Версию платформы. Она видна в окне Справка → О программе (значок «i» в правом верхнем углу).
  2. Название и релиз конфигурации. Там же, в том же окне.
  3. Режим совместимости конфигурации. Его смотрят в Конфигураторе: корень дерева конфигурации → свойства → «Режим совместимости».

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

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

Что делает расширение по свойству «Назначение»

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

НазначениеТипичный примерЧто меняет
ИсправлениеСрочная правка ошибки в типовом модулеКод существующих объектов
АдаптацияНовый реквизит в документе, своя печатная формаФормы, реквизиты, команды
ДополнениеНовый справочник, отчёт, подсистемаДобавляет свои объекты и данные

Расширения с назначением «Дополнение» могут хранить собственные данные. Это важно при удалении: о нём ниже.

Резервная копия

Загрузка расширения, которое добавляет свои таблицы, меняет структуру базы. Перед первой загрузкой в рабочую базу сделайте выгрузку .dt или резервную копию средствами СУБД. Ещё лучше — сначала проверить файл на копии базы с теми же данными.

Как добавить расширение из файла в пользовательском режиме

Этот способ работает во всех конфигурациях на Библиотеке стандартных подсистем. Путь в БП 3.0, ЗУП 3.1 и УТ 11 одинаковый.

КонфигурацияГде список расширений
Бухгалтерия предприятия 3.0Администрирование → Печатные формы, отчеты и обработки → Расширения
ЗУП 3.1Администрирование → Печатные формы, отчеты и обработки → Расширения
Управление торговлей 11НСИ и администрирование → Печатные формы, отчеты и обработки → Расширения

Если ссылки «Расширения» нет, в том же разделе включите флажок «Расширения». Он открывает доступ к списку.

Порядок действий:

  1. Откройте список расширений по пути из таблицы.
  2. Нажмите «Добавить из файла» и подтвердите предупреждение о безопасности. Программа напоминает, что расширение получает доступ к данным базы.
  3. Выберите файл .cfe на диске.
  4. Дождитесь, пока расширение появится в списке. Если программа нашла ошибки применения, она покажет их сразу.
  5. Нажмите «Перезапустить» в сообщении или закройте программу и войдите снова.

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

Если такой ссылки в вашей конфигурации нет совсем (нетиповая или очень старая база), откройте платформенную обработку: Главное меню → Все функции → Стандартные → Управление расширениями конфигурации. Команда «Все функции» включается в Главное меню → Сервис → Параметры флажком «Отображать команду “Все функции”».

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

Загрузка расширения через Конфигуратор и командную строку

Конфигуратор нужен, когда расширение требует проверки, правки или обновления структуры базы.

Пошагово в Конфигураторе

  1. Запустите базу в режиме «Конфигуратор» под пользователем с административными правами.
  2. Откройте Конфигурация → Расширения конфигурации. Появится список подключённых расширений.
  3. Добавьте новое пустое расширение кнопкой «Добавить» и задайте ему имя. Имя должно совпадать с тем, что задумал разработчик, если вы потом будете обновлять файл.
  4. В командной панели окна списка откройте меню «Конфигурация» и выберите загрузку из файла. Укажите .cfe.
  5. Откройте конфигурацию расширения и выполните Конфигурация → Обновить конфигурацию базы данных (F7). Загрузка файла и обновление базы — два отдельных шага: без второго расширение в базе не начнёт работать.
  6. Проверьте сообщения внизу окна. Если там предупреждения о свойствах заимствованных объектов, расширение может не примениться.

Монопольный доступ для этого обычно не нужен. Но если расширение добавляет свои таблицы, а база большая, обновляйте её вне рабочего времени.

Пакетный режим для нескольких баз

Когда одно и то же расширение надо раскатать по нескольким базам, используйте запуск 1cv8 в режиме DESIGNER:

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F"D:\Bases\Buh" /N"Администратор" /P"пароль" /LoadCfg "D:\ext\Доработки.cfe" -Extension "Доработки" /Out "D:\ext\log_load.txt"

"C:\Program Files\1cv8\8.3.24.1548\bin\1cv8.exe" DESIGNER /F"D:\Bases\Buh" /N"Администратор" /P"пароль" /UpdateDBCfg -Extension "Доработки" /Out "D:\ext\log_update.txt"

Для клиент-серверной базы вместо /F укажите /S"сервер\имя_базы". Номер платформы в пути замените на свой. Лог из /Out читайте после каждого запуска: при ошибке процесс завершается молча, а причина есть только в файле.

Права на расширения: роли и профили групп доступа

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

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

Есть два способа дать эти права. Выбор делает разработчик ещё при создании расширения:

  • 🔐 Своя роль в расширении. Разработчик создаёт роль с правами на новые объекты. После подключения она появляется в списке ролей, и её надо включить в профиль.
  • 🧩 Заимствованная типовая роль. Разработчик заимствует, например, роль полных прав или роль бухгалтера и добавляет в неё права на свои объекты. Тогда настраивать профили не нужно.

Как включить роль расширения в профиль в БП 3.0 и ЗУП 3.1:

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

После изменения профиля пользователям тоже нужно перезайти.

Активация, безопасный режим и обновление версии

В списке расширений у каждой строки есть флажки. Их значение стоит понимать до запуска в работу.

ФлажокЧто делаетКогда снимать
АктивноРасширение применяется к базеВременно выключить, не удаляя
Безопасный режимЗапрещает коду работу с файлами, COM, внешними компонентамиТолько если разработчик прямо требует, а вы ему доверяете
Защита от опасных действийЗапрашивает подтверждение при опасных операцияхПочти никогда
Использовать в распределённой ИБПередаёт расширение в узлы РИБЕсли в узлах расширение не нужно

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

Как обновить расширение до новой версии

Новую версию от разработчика не добавляют вторым расширением рядом со старым. Иначе два одинаковых набора объектов начнут конфликтовать.

  1. Выделите текущее расширение в списке.
  2. Выберите команду обновления из файла (в форме БСП она в меню «Ещё», в Конфигураторе — загрузка из файла в существующее расширение).
  3. Укажите новый .cfe и перезапустите программу.

Перед заменой сохраните текущую версию в файл командой «Сохранить в файл» — так откат займёт минуту.

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

Каждое обновление типовой может сломать расширение. Обычно причина — заимствованный объект изменили в новом релизе, а расширение проверяет его свойства. Порядок такой:

  1. Сохраните расширения в файлы.
  2. Обновите конфигурацию на копии базы.
  3. Запустите копию и посмотрите, применились ли расширения.
  4. Если нет — передайте разработчику релиз и текст ошибки, получите исправленный файл.
  5. Только потом обновляйте рабочую базу.
Расширение готово к работе в рабочей базе
Выполнено: 0 / 6

Почему расширение не подключается: ошибки и их причины

Расширение может загрузиться без замечаний, но в работе ничего не поменяется. Или программа сообщит, что расширение не применено. Разбор по симптомам:

Диагностика: выберите симптом

Подробный текст ошибки виден в Конфигураторе. Откройте Конфигурация → Расширения конфигурации, выделите расширение и выполните проверку: в окне сообщений появится конкретный объект и свойство, из-за которых расширение не применяется.

Если одна база обслуживает несколько организаций с разными доработками, держите в имени расширения назначение и версию, например Печать_ТТН_v3. Через полгода вы поблагодарите себя, разбирая список.

Отключить или удалить: в чём разница

Это два разных действия, и путать их опасно.

  • ⏸ Отключение. Снимите флажок «Активно» и перезапустите программу. Расширение остаётся в базе, его данные сохраняются, вернуть всё можно одним флажком.
  • 🗑 Удаление. Выделите расширение и нажмите «Удалить». Расширение исчезает из базы целиком.

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

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

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

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

Попадёт ли расширение в выгрузку .dt?
Да. Выгрузка информационной базы сохраняет и основную конфигурацию, и подключённые расширения вместе с их данными. При загрузке .dt в другую базу расширения тоже переедут.
Нужно ли подключать расширение в каждой копии базы отдельно?
Да, если копию создавали не из .dt, а заново. Расширение живёт внутри конкретной информационной базы, общего хранилища расширений для всех баз нет.
Сколько расширений можно подключить к одной базе?
Жёсткого лимита на практике нет. Но каждое расширение замедляет запуск и усложняет обновление типовой, поэтому держите в базе только нужные.
Чем расширение отличается от внешней обработки?
Внешняя обработка — отдельный файл .epf, который запускается сам по себе. Расширение встраивается в конфигурацию: меняет формы, добавляет реквизиты и объекты, его команды появляются в штатных местах.
Снимается ли конфигурация с поддержки после подключения расширения?
Нет. Расширение не меняет основную конфигурацию, поэтому она остаётся на поддержке и обновляется в обычном режиме.