Как запустить скрипт pyhthon для командной строки из 1С на сервере?

1. Vortigaunt 96 27.04.23 08:17 Сейчас в теме
Написал скрипт в python, который запускается через командную строку
"python script_name.py some_folder_path"
Скрипт берет первый параметр some_folder_path и конвертирует все ПДФ в этой папке в файлы с тем же названием но в виде картинок.

База 1С - Бухгалтерия 2.1 с расширением. Файловая. Версия платформы 8.3.16. Опубликован веб-клиент на Apache 2.4

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

Скрипт пробовал запускать через wscript.shell run и с помощью ЗапуститьПриложение().

Если я запускаю 1с на компьютере, где размещена база и папка some_folder_path. Все отрабатывает корректно.
Если я запускаю 1с через браузер с другого компьютера. Фоновое задание отрабатывает до момента запуска. Создает в указанной папке пдф файлы. Но запуск скрипта не происходит. В журнале регистрации остается ошибка:
В случае wscript.shell run
Ошибка при вызове метода контекста (Run)
через:
Произошла исключительная ситуация (0x80070002)
В случае ЗапуститьПриложение()
Файл не найден и моя строка запуска скрипта.

Пайтон переустановил для всех пользователей. Ошибка та же. Ощущение, что в веб клиенте ЗапуститьПриложение() старается выполниться на клиентской машине, хотя я как мог объяснял 1С, что выполнять надо на сервере.
Найденные решения
5. spacecraft 27.04.23 09:02 Сейчас в теме
(4) при файловой базе и запуск через браузер, роль сервера берет на себя веб-сервер. Соответственно фоновые задания выполняются под учеткой запуска веб-сервера. От этого и отталкивайтесь.
Vortigaunt; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. spacecraft 27.04.23 08:52 Сейчас в теме
(1)
хотя я как мог объяснял 1С, что выполнять надо на сервере

Вот с этого места поподробнее.
3. Vortigaunt 96 27.04.23 08:57 Сейчас в теме
(2) Процедура размещена в общем модуле где только галка Сервер. Процедура запускается фоновым заданием.
4. Vortigaunt 96 27.04.23 08:59 Сейчас в теме
Провел еще один эксперимент. Развернул базу в SQL. (Напомню, до этого была файловая). Точно так же опубликовал.
Теперь все отрабатывает. Чудеса.
Плюсом, когда запускаешь 1С локально в момент запуска скрипта не выскакивает черное окошко, все выполняется скрытно.
Все как-бы классно. Но можно ли решить для файловой базы? В данный момент нет возможности держать запущенным сервер 1С предприятия версии 8.3.16.
5. spacecraft 27.04.23 09:02 Сейчас в теме
(4) при файловой базе и запуск через браузер, роль сервера берет на себя веб-сервер. Соответственно фоновые задания выполняются под учеткой запуска веб-сервера. От этого и отталкивайтесь.
Vortigaunt; +1 Ответить
6. Vortigaunt 96 27.04.23 09:16 Сейчас в теме
(5) Поменял для службы Apache вход в систему от своего имени. Заработало. До этого она работала от учетки "Локальная система"
Какие-же права и кому надо дать чтобы работало от системной учетной записи? Или так и оставить, чтобы запускался от моего имени?
8. spacecraft 27.04.23 09:43 Сейчас в теме
(6) можно так и оставить. Или создать отдельного пользователя ОС с нужными правами.
7. Vortigaunt 96 27.04.23 09:32 Сейчас в теме
(5) Пока оставляю как решение. Админ сказал, что так впринципе секурно.
9. comptr 31 27.04.23 09:59 Сейчас в теме
(7) будет работать до тех пор, пока не решите свой пароль поменять
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот