1С:Фреш аудит обработок: почему облако не принимает ваши расширения и как пройти проверку
Вы решили перенести вашу рабочую базу из локального сервера в облако "1С:Фреш" (1cfresh.com). Все идет гладко, пока вы не пытаетесь загрузить туда свои любимые расширения, формы или внешние отчеты. Система возвращает статус "Отклонено модератором". Разбираем, почему Фреш так жесток к коду и как быстро пройти аудит.
Зачем 1С:Фреш проводит аудит кода?
В отличие от локальной базы данных, где вы полновластный хозяин своего сервера, 1С:Фреш — это "коммуналка" (SaaS система). Ваша база физически находится на одном мощном кластере серверов вместе с сотнями других баз разных компаний.
Если в вашем расширении программист случайно написал команду УдалитьФайлы("C:\*.*"), это может повредить весь кластер серверов Фирмы 1С. Именно поэтому перед добавлением в сервис каждое расширение, обработка или отчет подвергаются ручному и автоматическому аудиту со стороны модераторов 1С.
Ваше расширение отклонили в 1С:Фреш?
Я проведу полный рефакторинг вашего кода. Исправлю все нарушения "Безопасного режима", уберу запрещенные конструкции, и ваше расширение гарантированно пройдет технический аудит фирмы 1С для работы в облаке.
Доработать расширение для Фреш →Чек-лист подготовки расширения к публикации (Требования 1С)
Чтобы модератор принял ваш код без лишних вопросов, перед отправкой на аудит проверьте расширение по этому чек-листу:
| Критерий проверки | Что требует Фреш? | Причина отказа (пример) |
|---|---|---|
| Безопасный режим | Запрет работы с физическими файлами на сервере и COM-объектами. | Использование Новый COMОбъект или обращение к C:\Temp. |
| Префиксы разработки | Все добавляемые реквизиты, формы и переменные должны иметь префикс, например Мое_ИмяСвойства. |
Создан реквизит документа СтатусЗаказа без уникального префикса разработчика. |
| Импорт/Экспорт данных | Файлы пользователя читаются только через временное хранилище или механизм НачатьПомещениеФайла. |
Отсутствуют асинхронные обработчики при загрузке Excel файлов. |
| Назначение расширения | Свойство "Назначение" должно быть установлено в "Дополнение" или "Адаптация", но никогда как "Исправление". | Попытка загрузить расширение с назначением "Исправление". |
Частые сложности и риски адаптации
Процесс адаптации локальной доработки под стандарты SaaS может таить в себе архитектурные ямы.
Если ваша интеграция с сайтом отправляет данные через классический
HTTPСоединение, аудит Фреша это заблокирует, так как это нарушает Безопасный режим (доступ в интернет). Для работы с внешними API разработчик должен запрашивать "Разрешения на использование внешних ресурсов" специальным кодом программного интерфейса БСП.
Топ-3 ошибок разработчиков 1С, которые приводят к отклонению модератором:
- Слишком вольный захват форм. Заимствована вся форма справочника, а не только нужные элементы контроля. При обновлении 1С в облаке форма может сломаться у всех пользователей.
- Изменение типовых модулей. Программист переопределил базовый модуль расчета налогов конструкцией `&Вместо`. Фреш крайне негативно относится к изменению фундаментальных расчетных процедур — только `&После` или `&Перед`.
- Ошибки оптимизации. Запрос в цикле или получение Ссылки внутри выборки. Автоматический анализатор 1С вычисляет "грязный" код и отправляет доработку обратно на устранение неэффективных запросов.