Почему в 1С:Фреш нельзя добавить внешнюю обработку даже с полными правами и как ее подключить?

Программист 1С v8.3 (Управляемые формы) 1C:Бухгалтерия IT и автоматизация бизнеса
← На главную

При переходе с локальной версии 1С:Предприятия в облачный сервис 1С:Фреш (1cfresh.com) многие администраторы и разработчики сталкиваются с неожиданным поведением системы: пользователь с полными правами и административным доступом открывает справочник Дополнительные отчеты и обработки, но в командной панели отсутствуют кнопки добавления, изменения и выгрузки файлов. При этом попытка открыть внешнюю обработку через пункт меню Файл — Открыть завершается ошибкой нарушения прав доступа.

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

Причины блокировки прямой загрузки обработок в 1С:Фреш

Выясним причину, по которой назначение роли ДобавлениеИзменениеДополнительныхОтчетовИОбработок или включение пользователя в группу доступа Администраторы не дает результата внутри информационной базы 1С:Фреш:

  1. Мультиарендная архитектура (SaaS): В сервисе 1С:Фреш множество информационных баз клиентов функционируют на общем кластере серверов в разделенном или выделенном пространстве. Неконтролируемое выполнение произвольного программного кода создает прямую угрозу безопасности данных других абонентов и стабильности серверного оборудования.
  2. Программное сокрытие команд: В конфигурациях, адаптированных для работы в сервисе (например, 1С:Бухгалтерия 3.0, 1С:ЗУП 3, 1С:УНФ), при инициализации сеанса в режиме разделения данных типовой функционал прямого добавления файлов .epf и .erf программно отключается на уровне Библиотеки Стандартных Подсистем (БСП) и Библиотеки Технологии Сервиса (БТС).
  3. Централизованное управление адаптацией: Любые изменения конфигурации, включая внешние печатные формы, отчеты, обработки и расширения (.cfe), управляются не из самой базы, а через специальное управляющее приложение — Менеджер сервиса (Личный кабинет).

Порядок подключения внешней обработки или отчета в 1С:Фреш

Разберем по шагам регламент, по которому внешняя разработка попадает в облачную базу клиента:

  1. Подготовка файла по стандартам сервиса: Разработчик создает внешнюю обработку или отчет, строго соблюдая требования безопасности и программный интерфейс БСП. Модуль объекта должен содержать корректную экспортную функцию СведенияОВнешнейОбработке().
  2. Передача разработки обслуживающему партнеру: Владелец абонента передает файл обслуживающей организации (партнеру-франчайзи 1С). Если клиенту делегированы права разработчика в сервисе, загрузка может выполняться самостоятельно через Личный кабинет.
  3. Загрузка в Личный кабинет (Менеджер сервиса): В разделе Адаптация создается новая карточка дополнительного отчета или обработки, куда прикрепляется файл.
  4. Прохождение аудита фирмой «1С»: После загрузки файл автоматически отправляется на проверку модераторам фирмы 1С. Аудит включает автоматический статический анализ кода и ручную проверку экспертами на соответствие стандартам производительности и безопасности.
  5. Публикация и назначение базе: После получения статуса «Одобрено» обработка подключается к нужной информационной базе абонента через интерфейс Личного кабинета. Только после этого она появляется в пользовательском интерфейсе программы.

Требования к программному коду для прохождения аудита 1С

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

  1. Работа в безопасном режиме: Обработка должна гарантированно функционировать с параметром БезопасныйРежим = Истина. Это накладывает запрет на привилегированный режим, прямое обращение к файловой системе сервера и выполнение небезопасных системных команд.
  2. Кроссплатформенность и отказ от Windows-зависимостей: Серверный кластер 1С:Фреш функционирует под управлением операционной системы Linux. Использование COMОбъект (например, для работы с Excel, Word или объектами Windows Script Host) категорически запрещено. Для работы с табличными документами и файлами следует использовать встроенные средства платформы: ТабличныйДокумент, чтение/запись XML, JSON или ZIP-архивы.
  3. Отсутствие синхронных вызовов в интерфейсе: Все интерфейсные вызовы для открытия файлов, диалогов и вопросов пользователю должны быть реализованы через асинхронные методы (НачатьПомещениеФайлаНаСервер, ПоказатьВопрос, ПоказатьПредупреждение) или соответствующие конструкции с Ждать / асинхронными функциями.
  4. Открытый исходный код: Модули обработки не должны содержать паролей, обфусцированного кода или двоичных включений. Весь алгоритм должен быть прозрачным для проверяющего эксперта.
  5. Ограничение нагрузки на сервер: Запросы к базе данных не должны вызывать полных сканирований больших таблиц без отбора по индексам. Серверные вызовы ограничены по времени непрерывного выполнения и объему выделяемой оперативной памяти.

Пример программной регистрации обработки по стандартам БСП

Посмотрим на пример правильного оформления экспортной функции СведенияОВнешнейОбработке() в модуле объекта внешней обработки, готовой к прохождению аудита в сервисе 1С:Фреш:


Функция СведенияОВнешнейОбработке() Экспорт

    ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.2.2.1");
    
    ПараметрыРегистрации.Наименование = "Загрузка номенклатуры из файла";
    ПараметрыРегистрации.Версия = "1.0.0.1";
    ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка();
    ПараметрыРегистрации.БезопасныйРежим = Истина;
    ПараметрыРегистрации.Информация = "Обработка предназначена для импорта справочных данных в безопасном режиме.";
    
    НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
    НоваяКоманда.Представление = "Открыть помощник загрузки";
    НоваяКоманда.Идентификатор = "ОткрытьПомощникЗагрузки";
    НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
    НоваяКоманда.ПоказыватьОповещение = Ложь;
    
    Возврат ПараметрыРегистрации;

КонецФункции

Разберем важные детали приведенного фрагмента:

  1. Метод ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке() инициализирует базовую структуру параметров, соответствующую версии БСП конкретной конфигурации.
  2. Свойство БезопасныйРежим явно устанавливается в значение Истина, что является обязательным требованием аудита для сервиса 1С:Фреш.
  3. Команда регистрируется с указанием конкретного типа вызова через ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы() или ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода().

Альтернативный вариант: Использование каталога расширений

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

← На главную