При работе в облачной модели сервиса (1С:Fresh) пользователи и технические специалисты часто сталкиваются с ситуацией, когда стандартные внешние формы и обработки, скачанные с портала ИТС или релизов 1С, отказываются загружаться через «Менеджер сервиса». Особенно остро эта проблема встает в периоды сдачи отчетности, когда форма П-4 (статистика) требует оперативного обновления, а версия конфигурации (например, ЗКГУ 3.1.8.246) находится на долгосрочной поддержке и не всегда оперативно включает в себя последние изменения печатных форм.
В этой статье мы подробно разберем, почему возникает ошибка при попытке «скормить» сервису стандартный ZIP-архив, и пошагово выясним, как адаптировать внешнюю форму для работы в облаке.
Разберем ситуацию, с которой столкнулся автор темы. При попытке загрузки архива через «1С:Менеджер сервиса» система выдает ошибку, связанную с отсутствием файла. Проанализируем запись в журнале регистрации:
{Справочник.КаталогДополнительныхОтчетовИОбработок.Форма.МастерДобавления.Форма(299)}: Ошибка при вызове метода контекста (ОткрытьФайл)
Чтение.ОткрытьФайл(ФайлМанифеста);
по причине:
Файл не обнаружен 'C:\Users\admin\AppData\Local\Temp\v8_7CC7_150f.tmp\ExtensionManifest.xml'
Выясним причину этой ошибки. Дело в том, что для локальных версий программ (коробочных решений) 1С поставляет комплекты с файлом ExternalManifest.xml. Однако архитектура «1С:Фреш» и механизмы Библиотеки стандартных подсистем (БСП), работающие в режиме разделения данных, строго требуют наличия файла ExtensionManifest.xml. Без этого файла загрузчик «Менеджера сервиса» не может определить параметры безопасности и правила встраивания обработки в облачную базу.
Простое переименование файла внутри архива зачастую не помогает, так как структура XML-описания для облака и локальной версии также имеет различия. Нам потребуется создать полноценный комплект поставки именно для модели сервиса.
Рассмотрим основной и самый правильный метод решения задачи. Для подготовки корректного комплекта нам не нужно писать код вручную, мы воспользуемся специализированным инструментом. Разберем шаги:
БСП, проверка пройдет успешно.ExtensionManifest.xml, в котором будут прописаны все права доступа, необходимые форме для работы в безопасном режиме.После этого такой архив можно успешно загружать в «Менеджер сервиса» (МС). Рассмотрим подробнее дальнейшие действия в МС.
После того как мы подготовили правильный комплект, перейдем к его публикации в облаке. Посмотрим на этот процесс с точки зрения администратора сервиса:
Зайдите в «1С:Менеджер сервиса», перейдите в раздел управления дополнительными отчетами и обработками и выберите «Добавить». Укажите ваш новый ZIP-архив. Если манифест составлен верно, система примет файл и создаст карточку обработки.
Обратите внимание на важный нюанс: В публичном облаке (например, 1cfresh.com) ваша форма не станет доступна пользователям мгновенно. Она должна пройти процедуру аудита. Администраторы сервиса (специалисты фирмы 1С) проверят код на соответствие стандартам разработки для облака. Статус обработки изменится на «Включена» только после успешного завершения этой проверки.
Если вам нужно обновить только внешний вид формы П-4 или схему выгрузки, а логика расчета в конфигурации актуальна, существует более простой путь, который не требует работы с «Менеджером сервиса». Проанализируем этот вариант:
В конфигурациях 1С, основанных на современных версиях БСП, есть справочник «Настройки XML-отчетов». Для статистических форм (таких как П-4) часто достаточно загрузить новый XML-шаблон.
Этот способ позволяет избежать долгого процесса подготовки комплекта поставки и прохождения аудита кода, так как вы обновляете только описание данных, а не исполняемый программный код.
Выясним причину, по которой работа с формой П-4 может вызвать дополнительные сложности в версии 3.1.8. Данная версия является LTS (Long Term Support), и механизмы интеграции с БСП в ней могут отличаться от самых современных редакций.
Если при попытке загрузки даже корректно собранного комплекта вы получаете ошибки исполнения, проанализируйте код модуля внешней формы. В старых версиях часто использовались методы, которые теперь считаются «небезопасными» для облака. Например, вместо использования методов ДлительныеОперации для формирования отчета в фоне, старый код мог пытаться выполнять расчет напрямую в контексте формы, что может приводить к таймаутам в браузере.
В таких случаях рекомендуется либо дождаться обновления конфигурации до актуальной ветки (3.1.27 и выше), либо адаптировать код формы под требования безопасного режима.
Подведем итоги нашего исследования проблемы загрузки П-4 во Фреш:
ExtensionManifest.xml.Таким образом, «оживить» форму П-4 в модели сервиса вполне реально, если следовать строгим правилам упаковки и доставки кода, принятым в архитектуре 1С:Предприятие через облачные технологии.