Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Windows Server 2008/2008 R2 (http://forum.oszone.net/forumdisplay.php?f=97)
-   -   проблема программного формирования excel-файла (http://forum.oszone.net/showthread.php?t=271063)

ae23 31-10-2013 14:29 2244573

проблема программного формирования excel-файла
 
Добрый день. Занимаюсь автоматизацией рассылки прайс-листов в формате Excel из среды 1с.
Работали на платформе Windows Server 2003, недавно перешли на Server 2008 и появились проблемы.
В процессе подготовки прайс-листа в 1с создается com-object Excel 2007, заполняются данные по ценам
и добавляются из внешних файлов модули на VBA с помощью конструкции:
excel.VBE.VBProjects(1).VBComponents(2).CodeModule.AddFromFile(файл)

Когда запускаю всю эту процедуру в обычном сеансе 1с, все работает, как часы, никаких сообщений об ошибках не возникает, создаются рабочие книги с модулями.
Если же запускаю ту же самую процедуру в режиме регламентного задания 1с, то есть, когда с com-объектом работает служба агента 1с,
то на строке ....CodeModule.AddFromFile(файл) пишется сообщение, что метод AddFromFile не найден.

Есть три гипотезы, почему так:
1) какие-то ограничения на работу с файлами для службы (вопрос с правами доступа отпадает, так как пробовали запускать службу агента 1с под разными учетками с макс. правами - результат тот же);
2) в Server 2008 какие-то особенности работы с com-объектом Excel в режиме службы,
3) проблема с настройкой безопасности Excel при добавлении модулей на VBA

Пожалуйста, подскажите, в чем может быть причина?

anderson-7 31-10-2013 15:32 2244631

Цитата:

Цитата ae23
проблема с настройкой безопасности Excel »

Проверьте в настройках безопасности Excel

ae23 31-10-2013 15:50 2244653

Я бы проверил, если бы знать, что :) . Раньше была проблема с установкой разрешения к объектной модели Visual Basic Object Model. Это решается прописыванием в реестре Windows флага AccessVBOM=1. Сделал, чтобы с помощью VBScript этот флаг создавался для того пользователя, от имени которого происходит формирование excel-файла. Может где-то отслеживается в системных логах информация о подобных ошибках?

anderson-7 31-10-2013 16:05 2244665

В самом экселе может в безопасности параметры макросов и актив х блокируются.
А ошибки в журнале системы- ошибки приложений или office

ae23 31-10-2013 16:12 2244670

Возможно, но, если что-то блокируется, это бы не работало в любом случае, а у меня работает, когда запускается из приложения 1с, запущенного от моего имени. А когда запускается из фонового задания - не работает. Думаю, что как-то влияет сам факт запуска из службы, а не из обычного приложения

Petya V4sechkin 31-10-2013 17:21 2244739

Цитата:

Цитата ae23
как-то влияет сам факт запуска из службы, а не из обычного приложения

Службы выполняются в изолированной сессии 0.
Попробуйте в свойствах включить флажок "Разрешить взаимодействие с рабочим столом".


Время: 18:32.

Время: 18:32.
© OSzone.net 2001-