Задание должно было дописать строку в текстовый файл на сервере. В интерактивном запуске код работал, а в фоне завершался с ошибкой, хотя у служебной учётной записи были права на каталог.
Проблема
В истории выполнения сохранялось сообщение:
Ошибка при вызове метода контекста (Записать): Вывод запрещён
Как я отделил права Windows от режима 1С
Я проверил каталог под учётной записью службы и убедился, что файл создаётся. Значит, это не отказ NTFS. Дело было в свойстве Вывод объекта ТекстовыйДокумент: платформа запрещает вывод, если он унаследован как запрещённый от контекста, в котором создан документ. В фоновом задании это проявляется чаще всего.
Решение
Перед записью файла я явно разрешил вывод для текстового документа:
ТекстДок = Новый ТекстовыйДокумент;
ТекстДок.Вывод = ИспользованиеВывода.Разрешить;
ТекстДок.Записать(ИмяФайла);
После изменения задание выполнилось и файл обновился. Если в журнале написано «Отказано в доступе», «Permission denied» или указан недоступный сетевой путь, эта настройка не поможет — тогда нужно проверять права учётной записи службы и доступность ресурса именно с сервера 1С.
Получилось или остались вопросы?
Поделитесь результатом, дополните инструкцию своим опытом или задайте вопрос. Я читаю комментарии и обновляю статьи по реальным случаям.