Свой файл .cfe в облачной базе: подключение, права и обновление в 1С:Фреш

· 9 мин

Содержание

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

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

Что сервис требует от расширения и от пользователя

В облаке у вас нет доступа к Конфигуратору и к серверу. Поэтому всё, что в локальной базе решается правкой настроек, в сервисе решается только подготовкой самого файла. Требования удобно разделить на две группы.

Требования к файлу расширения

  • 📦 Формат — файл конфигурации расширения .cfe. Внешние обработки .epf и отчёты .erf подключаются в другом месте, через дополнительные отчёты и обработки, и это другой порядок.
  • 🔒 Безопасный режим. Код расширения не должен работать с локальными файлами сервера, COM-объектами, внешними компонентами, запускать внешние программы. В сервисной модели расширения подключаются в безопасном режиме, и отключить его со стороны абонента нельзя.
  • 🔢 Режим совместимости расширения не выше, чем у основной конфигурации.
  • 🧩 Под конкретный релиз. Расширение, которое заимствует формы, модули и реквизиты, привязано к их состоянию в определённой версии конфигурации.
  • 🏷️ Префикс в именах собственных объектов (например, мк_), чтобы не пересекаться с типовыми объектами и с другими расширениями.

Требования к пользователю

  • 👤 Роль с полными правами в самом приложении (профиль администратора).
  • 🔑 Если пользователь в облаке приглашён без административных прав, раздел с расширениями ему не откроется. Права выдаёт владелец или администратор абонента.
Что проверяемГде смотретьЧто должно быть
Релиз конфигурации в облакеОкно «О программе» в приложенииСовпадает с релизом, на котором собран .cfe
Режим совместимостиСвойства расширения в КонфигуратореНе выше режима конфигурации
Безопасный режимСвойства расширения, кодНет вызовов к файлам, COM, внешним компонентам
Права пользователяКарточка пользователя в приложенииПолные права

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

Подготовка .cfe перед загрузкой в облако

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

Соберите локальную копию нужного релиза

  1. В облачном приложении откройте окно «О программе» и запишите точный номер релиза конфигурации, например 3.0.xxx.yy.
  2. Разверните локально файловую базу той же конфигурации того же релиза. Удобнее всего сделать копию вашего приложения: тогда тестировать будет на чём.
  3. Используйте платформу с номером версии не ниже, чем в сервисе. Если в Конфигураторе стоит более старая платформа, часть свойств может быть недоступна.

Создайте и проверьте расширение

  1. Откройте базу в Конфигураторе: Конфигурация → Расширения конфигурации.
  2. Добавьте новое расширение, задайте имя, синоним и префикс.
  3. Укажите назначение: исправление, адаптация или дополнение. На работу в облаке это не влияет, но помогает понять, что делает файл, через год.
  4. В свойствах расширения проверьте флаг безопасного режима: он должен быть включён.
  5. Внесите доработки, запустите базу в режиме 1С:Предприятие с этим расширением и проверьте все сценарии. Отдельно запустите проверку под обычным пользователем, а не под администратором.
  6. Сохраните расширение в файл .cfe через меню расширения в окне списка расширений.

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

Что проверить в коде до выгрузки

  • 🚫 Новый COMОбъект(...) — в облаке не сработает.
  • 🚫 Запись файлов на диск сервера через ЗаписьТекста, КопироватьФайл и подобные — запрещено безопасным режимом. Работайте через временное хранилище и диалог передачи файла на клиент.
  • 🚫 Подключение внешних компонент и запуск внешних программ.
  • ✅ HTTP-запросы к внешним сервисам требуют отдельного разрешения в безопасном режиме. Если без них никак, узнайте у провайдера сервиса, допустимы ли они.

Загружаем расширение в 1С Фреш по шагам

Порядок показан для приложений на Библиотеке стандартных подсистем: 1С:Бухгалтерия 3.0, ЗУП 3.1, УНФ и других типовых, которые доступны в сервисе. Раздел расширений в них устроен одинаково.

Перед загрузкой
Выполнено: 0 / 6

Шаг 1. Откройте список расширений

Войдите в приложение через личный кабинет сервиса. Перейдите в Администрирование → Печатные формы, отчеты и обработки. На странице раздела найдите ссылку «Расширения» и откройте список.

Шаг 2. Добавьте файл

В списке нажмите команду добавления из файла. В браузере откроется стандартный диалог выбора: укажите файл .cfe на своём компьютере. Сервис может показать предупреждение о безопасности: прочитайте его и подтвердите, если файл получен из надёжного источника.

Шаг 3. Дождитесь проверки

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

Шаг 4. Перезапустите приложение

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

Шаг 5. Проверьте результат

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

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

Права доступа и видимость доработки для пользователей

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

Как работают права в расширении

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

Если же в расширении есть свои справочники, документы, отчёты или обработки, к ним нужны права. Их задают ролями внутри расширения. Есть два рабочих способа:

  1. Заимствовать типовую роль и добавить в неё права на новые объекты. Тогда все, у кого эта роль, получат доступ автоматически.
  2. Создать свою роль в расширении. Тогда её нужно включить в профиль групп доступа.

Включение роли в профиль групп доступа

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

Видимость в командном интерфейсе

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

Почему расширение не загружается или не работает

Большинство отказов в облаке связаны с тремя вещами: релизом, безопасным режимом и правами.

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

Расширение перестало работать после обновления сервиса

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

Что делать:

  1. Узнайте новый релиз в окне «О программе».
  2. Обновите локальную копию до этого релиза.
  3. Откройте расширение, проверьте заимствованные объекты и ошибки при проверке конфигурации.
  4. Исправьте и сохраните новый .cfe.
  5. Обновите расширение в облаке (порядок ниже).

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

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

Как обновить версию расширения

  1. Откройте тот же список расширений.
  2. Выделите строку с вашим расширением.
  3. В командах формы выберите обновление из файла и укажите новую версию .cfe.
  4. Перезапустите приложение.

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

Как временно отключить

Снимите флажок использования в строке расширения и перезапустите приложение. Расширение останется в базе, но не будет применяться. Это удобно, когда нужно понять, виновато ли расширение в ошибке: отключили, проверили, включили обратно.

Как удалить

Выделите расширение и выберите команду удаления. Программа предупредит о последствиях. После удаления перезапустите приложение.

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

Сохранить копию расширения из облака

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

Когда своё расширение в облаке — не лучший вариант

Иногда задачу проще решить без расширения:

  • 🖨️ Нужна только своя печатная форма. В типовых конфигурациях есть редактирование макетов печатных форм прямо в программе. Поправить надпись или подвинуть поле можно без файла .cfe.
  • 📊 Нужен отчёт по существующим данным. Часто хватает настроек универсального отчёта или варианта типового отчёта.
  • 🔌 Нужна интеграция с оборудованием или локальными программами. В облаке это упирается в безопасный режим. Такие задачи решают через локальную базу или через провайдера сервиса.
  • 🧱 Глубоко переделываете учёт. Если доработок много и они ломаются каждое обновление, посчитайте, не дешевле ли перейти на локальную или арендованную базу с собственным Конфигуратором.

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

Сколько расширений можно загрузить в одно приложение 1С:Фреш?
Технически можно подключить несколько. Но каждое расширение добавляет время на запуск и повышает риск конфликтов при обновлении. Держите только нужные.
Расширение увидят другие абоненты сервиса?
Нет. Расширение, загруженное абонентом, действует только в его области данных.
Можно ли загрузить расширение, которое купил у разработчика?
Да, если разработчик собрал его под нужный релиз и оно работает в безопасном режиме. Спросите у него об этом до покупки.
Нужно ли выгонять пользователей перед загрузкой?
Нет. Загрузка не требует монопольного доступа, но пользователи увидят изменения только после перезапуска приложения.
Как не потерять расширение при переходе из облака в локальную базу?
Перед переездом сохраните каждое расширение из списка в файл .cfe. В локальной базе загрузите их через тот же список расширений или через Конфигуратор и проверьте работу.