Имя: Пароль:
1C
1С v8
1С 8.3.16 + Excel 2016
0 LavSug
 
15.10.20
12:04
Добрый день!
Понимаю, тема обкатана, но не могу уяснить некоторые моменты... Топики изучил, интернет обыскал, многое перепробовал (DCOM, права, папки... ), но корректной работы не получается...
Мне нужно фоном создавать файл Excel и отправлять его дальше...
Не могу сделать из-за того, что как только переношу Excel = Новый COMОбъект("Excel.Application"); на сервер работа прекращается...
Итак... Есть два пользователя с админскими правами User1 и User2... Под User1 запущен rphost.exe. И 1C, и Excel 64 разрядные.
Захожу в систему под User1. Запускаю формирование файла на клиенте все ОК. Файл есть, Visible=1 отрабатывает (Excel показывается). Процесс Excel в диспетчере задач под User1.
Захожу в систему под User1. Запускаю формирование файла на клиенте все ОК. Файл есть, Visible=1 отрабатывает (Excel показывается). Процесс Excel в диспетчере задач под User2.
Захожу в систему под User1. Запускаю формирование файла на сервере. Все отрабатывает до момента SaveAs (тут ошибка  Ошибка при вызове метода контекста (SaveAs): Произошла исключительная ситуация (Microsoft Excel): Метод SaveAs из класса Workbook завершен неверно), Visible=1 НЕ отрабатывает (Excel НЕ показывается). Процесс Excel в диспетчере задач под User1.  
Захожу в систему под User1. Запускаю формирование файла на сервере. Все отрабатывает до момента SaveAs (тут ошибка  Ошибка при вызове метода контекста (SaveAs): Произошла исключительная ситуация (Microsoft Excel): Метод SaveAs из класса Workbook завершен неверно), Visible=1 НЕ отрабатывает (Excel НЕ показывается). Процесс Excel в диспетчере задач под User1.  

Если настраивать работу по RDP, то придется выбирать, что либо работают пользователи с Excel как клиенты и придется отказываться от фоновых заданий для формирования Excel, либо только фоновые задания, а работу пользователей с Excel мимо? Так что ли?

Что я пропустил?
1 arsik
 
гуру
15.10.20
12:08
(0) Скорее всего ты пытаешься сохранить в недоступное место.

Зачем Новый COMОбъект("Excel.Application")? А не проще табличный документ сохранить в excel?
2 arsik
 
гуру
15.10.20
12:08
+ (1) Путь сохранения какой?
3 LavSug
 
15.10.20
12:13
(1) ТабличныйДокумент - это как оставшийся вариант решения... Переписывать придется много:(
4 LavSug
 
15.10.20
12:16
(2) Пути проверял... Сейчас вообще создал папку и дал полные права группе "Все"... Результат тот же...
Если в настройках DCOM (по умолчанию "The launching user") поставить пользователя User1, то все работает для User1.... А если запустить отчет под User2, то он показывается User1... Что логично...
5 LavSug
 
15.10.20
12:35
Е-мое... Нашел... Я сохранял файл через SaveAs... Когда заменил на SaveCopyAs заработало...
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.