1. Обработки в сервисе выполняются в безопасном режиме. В этом режиме запрещены операции, приводящие к использованию внешних средств. Например, запрещена работа с файловой системой на сервере. Подробнее о безопасном режиме: https://its.1c.ru/db/v8310doc#bookmark:dev:TI000000186 Пути решения: 1. Если это возможно, то перенести запрещенные операции на клиент. 2. (Рекомедуемый). Описать разрешения на расширение безопасного режима в параметрах регистрации обработки. https://its.1c.ru/db/bsp23doc#content:427:1:issogl3_разрешения 2. Не используется программный интерфейс подсистемы "Дополнительные отчеты и обработки" БСП - Разверните демо БСП, опубликованной на https://releases.1c.ru/project/SSL23 - В конфигураторе выгрузите в файл Пример.epf общий макет _ДемоПечатьСчетовНаОплатуПокупателю, или другой общий макет с префиксом _Демо - Оформите модуль Вашей обработки так, как это сделано в примере не используя программный интерфейс БСП, вы рискуете тем, что обработка перестанет работать при обновлении БСП. 3. В сервисе внешние обработки подключаются с другим именем. Это уникальный идентификатор. Поэтому, нельзя обращаться к обработке таким образом ВнешняяОбработка.ИмяВнешнейОбработки. Необходимо, например, добавить реквизит формы ПолноеИмяОбъекта с типом Строка. В обработчике ПриСозданииНаСервере определить полное имя подключенной внешней обработки следующим образом: ПолноеИмяОбъекта = РеквизитФормыВЗначение("Объект").Метаданные().ПолноеИмя(); Далее, путь к форме получать следующим образом: ПолноеИмяОбъекта + ".Форма.ОсновнаяФормаОтбработки" Это будет работать локально и в сервисе и не будет зависеть от имени обработки и имени, под которым она подключена. Так же будет работать, если встроите обработку в конфигурацию. 4. УстановитьПривилегированныйРежим(Истина)/УстановитьПривилегированныйРежим(Ложь) в безопасном режиме не имеет смысла. Отлаживайте обработку, открывая ее не через главное меню Файл-открыть, а через интерфейс подсистемы доп. отчетов и обработок БСП. Делайте это под пользователем с минимально возможным набором ролей, а не под администратором. Если же привилегированный режим необходим, просьба добавить запрос разрешения на использование привилегированного режима и в описании разрешения указать корректную причину. 5. Использование Вычислить(<Выражение>)/Выполнить(<Выражение>) в безопасном режиме запрещено. Просьба переписать код без использования этих вызовов. 6. Если в дополнительной обработке выполняется передача (получение) любых данных за пределы сервиса, эти операции должны подтверждаться пользователем. Если на этапе разработки дополнительной обработки существует возможность определить ресурсы сети Интернет, к которым будет выполняться обращение, необходимо реализовать запрос разрешений в программном интерфейсе дополнительной обработки. Такой запрос должен дать возможность пользователю еще перед установкой обработки ознакомиться, к каким ресурсам будет выполняться передача данных этой обработкой. Если определить ресурсы сети Интернет, к которым будет выполняться обращение, невозможно, то: для дополнительных обработок, содержащих формы, перед выполнением операции следует запрашивать разрешение у пользователя (возможно, с сохранением полученного ответа). При запросе разрешения следует явно указывать, к каким ресурсам сети Интернет будет осуществляться обращение; для дополнительных обработок, не содержащих форм (например, предназначенных для использования в качестве регламентного задания), рекомендуется: по умолчанию не выполнять операцию в коде серверной команды; создавать дополнительную команду с типом вызова Открытие формы, в которой реализовывать запрос подтверждения; начинать выполнение операции в серверном коде только после подтверждения пользователем выполнений операций. https://1cfresh.com/articles/so_addprocess_req#outflow2 Примечание: в серверном контексте в безопасном режиме запрещено обращение к сторонним интернет ресурсам. Вы можете: 1. Добавить Разрешение = РаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса(<Протокол>, <Адрес>, <Порт>, <Причина, по которой требуется подключение>); 2. Либо вынести эту операцию на сторону клиента. 7. Дополнительный отчет/обработка не должен приводить к чрезмерной нагрузке на компоненты сервиса или клиентское приложение: Используется соединение с виртуальной таблицей. Не рекомендуется использовать соединения с виртуальными таблицами. Поместите результат виртуальной таблицы во временную таблицу и проиндексируйте поля по которым будут соединения. Подробнее с причинами неоптимальной работы запросов и их оптимизацией можно ознакомиться здесь https://its.1c.ru/db/v8std#browse:13:-1:26:28 8. Если в запросе используется получение значения через точку от поля составного ссылочного типа, то при выполнении этого запроса будет выполняться соединение со всеми таблицами объектов, входящими в этот составной тип. В результате SQL текст запроса чрезвычайно усложняется, и при его выполнении оптимизатор СУБД может выбрать неоптимальный план. Это может привести к серьезным проблемам производительности и даже к неработоспособности запроса в отдельных случаях. В частности, не рекомендуется обращаться к реквизитам регистратора регистра (например, "РасчетыСКлиентамиОстаткиИОбороты.Регистратор.НомерВходящегоДокумента") и т. п. При этом не важно, в какой части запроса вы используете реквизит, полученный через точку от поля составного типа, - в списке возвращаемых полей, в условии и т. п. Во всех случаях такое обращение может привести к проблемам производительности. 9. Использование COM-объектов на стороне сервера не допускается (серверный код может выполняться на Linux, мы не можем гарантировать наличие COM-объектов на сервере) 10. Просьба исключить из обработки непосредственное удаление объектов. Так как это может нарушить бизнес-логику приложения. 11. Используется соединение с подзапросом. Не рекомендуется использовать соединения с подзапросами. Поместите результат подзапроса во временную таблицу и проиндексируйте поля по которым будут соединения. 12. ВнешняяОбработка = ВнешниеОбработки.Создать(ИмяОбработки, Ложь); Создание и использование внешних обработок/отчетов запрещено. В сервисе разрешается использовать только внешние отчеты и обработки, зарегистрированные через менеджер сервиса. 13. Пока ВремяНачалаЗапроса + X_Timeout > ТекущаяДата() Цикл //Ожидание по задержке, после чего повторяем запрос. КонецЦикла; Обнаружен пустой цикл. Не рекомендуется использовать пустые циклы. Это может привести к чрезмерной нагрузке на компоненты сервиса или клиентское приложение.