|   |   | 
| 
 | регламентное задание и Ексель | ☑ | ||
|---|---|---|---|---|
| 0
    
        LadukOpiat 05.07.12✎ 17:47 | 
        Ошибка при попытке подключения Ексель в регламентном задании в серверном режиме, код:
  " Excel = Новый COMОбъект("Excel.Application"); по причине: Интерфейс не поддерживается" в файловом варианте все работает. платформа 8.2.15.317, в чем может быть проблема ? | |||
| 1
    
        Живой Ископаемый 05.07.12✎ 17:48 | 
        а сервер на 64-битном Линуксе?     | |||
| 2
    
        LadukOpiat 05.07.12✎ 17:49 | 
        win 7 x64     | |||
| 3
    
        izekia 05.07.12✎ 17:49 | 
        (1) а на 32-битном пройдет?     | |||
| 4
    
        izekia 05.07.12✎ 17:49 | 
        (2) а эксель 32бита     | |||
| 5
    
        Dmitry77 05.07.12✎ 17:50 | 
        правильнее сказать на клиенте все работает, на сервере нет.
  соответсвенно смотри, что б на сервере бил офис + права что бы были на офис | |||
| 6
    
        Живой Ископаемый 05.07.12✎ 17:50 | 
        2(2) а офис тоже 64-битный?     | |||
| 7
    
        vde69 05.07.12✎ 17:51 | 
        пользователь под которым запущена служба 1с должен иметь права на DCOM в целом и на ексель в частности     | |||
| 8
    
        LadukOpiat 05.07.12✎ 17:52 | 
        да офис тож 64     | |||
| 9
    
        LadukOpiat 05.07.12✎ 17:52 | 
        (7) как посмотреть права на DCOM и ексель для конкретного пользователя ?     | |||
| 10
    
        vde69 05.07.12✎ 17:55 | 
        (9) в целом - это группа "пользователи DCOM"
  в частности екселя - у конкретного обьекта com/dcom вкладка свойств/безопасность (только эти права (при изменении) вступают в силу после перезагрузки сервера) | |||
| 11
    
        Dmitry77 05.07.12✎ 17:56 | 
        (9) посмотри под кем работает служба "Агент сервера 1С:Предприятия 8.2".
  Лучше всего запусти ее под доменным админом или хортябы под локальным админом. | |||
| 12
    
        Serginio1 05.07.12✎ 18:49 | 
        Как вариант попробуй ADO v8: ADO 8.2 x 64. Загрузка ДБФ. Регламетное задание.
  c АДОСоединение.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+СокрЛП(ИмяФайла)+";Extended Properties=""Excel 8.0;IMEX=1;"""; IMEX=1 Правда там ограничение на количество колонок но можно считывать нужную область АДОЗапись.Open("Select * from ["+ИмяЛиста+"$A16:AI41]"); | |||
| 13
    
        LadukOpiat 05.07.12✎ 22:14 | 
        (11) добавил пользователя в группу Администраторы, теперь ошибка в следующей строке:
  Excel.WorkBooks.Open(ВыбФайл.ПолноеИмя); по причине: Произошла исключительная ситуация (Microsoft Excel): Приложению Microsoft Excel не удается получить доступ к файлу "D:\1C\DataBases\E_130612.xls". Это может быть вызвано одной из следующих причин. • Указан несуществующий файл или путь. • Файл используется другой программой. • Имя книги, которую вы пытаетесь сохранить, совпадает с именем другой книги, открытой в данный момент. ВыбФайл типа Файл, на Существует() проверку проходит Не понятно какой программой он может быть открыт.... | |||
| 14
    
        эцп 05.07.12✎ 22:57 | 
        (13) А файл есть на СЕРВЕРЕ?     | |||
| 15
    
        LadukOpiat 05.07.12✎ 23:02 | 
        Файл.Существует() = Истина     | |||
| 16
    
        vde69 05.07.12✎ 23:38 | 
        (13) это боян...
  екселю кроме файлового доступа к указаному каталогу нужен еще и доступ к временным файлам, а они лежат (тссс не скажем где), но винда по умолчанию сильно сопротивляется именно доступу к темпам | |||
| 17
    
        LadukOpiat 06.07.12✎ 09:31 | 
        На самом деле проблема была в пользователе DCOM, хотя сервер и работает под пользователем винды, в DCOM он почему то пустой, пришлось принудительно установить все запуски DCOM под определенным пользователем и все заработало.
  помог партнерский форум 1С | |||
| 18
    
        vde69 06.07.12✎ 10:49 | 
        (17) о чем и было написано в (7)....
  еще про временные файлы почитай, там то-же засада есть | |||
| 19
    
        Serginio1 06.07.12✎ 11:01 | 
        (18) Помню бился с Экселем v8: Ошибка Сохранения Ексель Регламентное задание
  никак не смог победить. причем в 2003 все проходило, а в 2008 была засада. Запускалось все под админом DCOM все было выставлено и доступ соответственно без ограничений | |||
| 20
    
        LadukOpiat 13.07.12✎ 17:25 | 
        Блин, у меня на win 7 +Office 2010 все заработало, у клиента 2008 сервер и офис 2007 и опять ошибка доступа....     | |||
| 21
    
        LadukOpiat 13.07.12✎ 17:26 | 
        хотя DCOM установил пользователя с админ правами, где еще можно порыть по поводу пользователя DCOM ?     | |||
| 22
    
        LadukOpiat 15.07.12✎ 01:23 | 
        ПРава на временный файлы есть     | |||
| 23
    
        LadukOpiat 16.07.12✎ 17:09 | 
        Где еще можно рыть ?     | |||
| 24
    
        el-gamberro 16.07.12✎ 17:13 | 
        (23) ты ошибку то напиши?     | |||
| 25
    
        LadukOpiat 16.07.12✎ 20:52 | 
        Excel.WorkBooks.Open(ВыбФайл.ПолноеИмя); 
  по причине: Произошла исключительная ситуация (Microsoft Excel): Приложению Microsoft Excel не удается получить доступ к файлу "D:\1C\DataBases\E_130612.xls". Это может быть вызвано одной из следующих причин. • Указан несуществующий файл или путь. • Файл используется другой программой. • Имя книги, которую вы пытаетесь сохранить, совпадает с именем другой книги, открытой в данный момент. | |||
| 26
    
        vde69 17.07.12✎ 08:14 | 
        (25) ексель такую ошибку дает в 2х случаях
  1. действительно нет доступа к указаному файлу 2. ексель не может создать ВРЕМЕННЫЙ файл (это скорее всего) | |||
| 27
    
        dk 17.07.12✎ 08:28 | 
        Excel.WorkBooks.Open(ВыбФайл.ПолноеИмя, 0 , 0); 
  ? | |||
| 28
    
        LadukOpiat 17.07.12✎ 12:35 | 
        (26) доступ к файлу есть у всех пользователей win ( я проверил )
  так же проверил доступ к переменным средам винды, тоже все есть. Где ексель создает свой временный файл, может я не то проверяю ? | |||
| 29
    
        LadukOpiat 17.07.12✎ 12:47 | 
        (27) ничего не изменилось в результате     | |||
| 30
    
        LadukOpiat 17.07.12✎ 12:49 | 
        для win 7 and office 2011 проблему решило указание конкретного пользователя для запуска DCOM, в win2008server+office 2003 провел те же действия - не помогло     | |||
| 31
    
        LadukOpiat 17.07.12✎ 12:55 | 
        я подозреваю что проблема все таки остается в том что DCOM запускается с пустым пользователем, но не знаю как можно это поправить
  Я сделал следующее в настройках DCOM: Администирование-СлужбыКопонентов-Компютеры-МойКомпютер-настройка DCOM-Microsoft Excel application- Свойства-Удостоверение: Указанный пользователь - выбрал администратора сервера и ввел его пароль. | |||
| 32
    
        LadukOpiat 17.07.12✎ 22:00 | 
        Подсказали решение на SQL.ru
  На сервере необходимо было еще установить в локальных политиках право на запуск DCOM для конкретных пользователей. и, о чудо, все заработало :-) | |||
| 33
    
        vde69 18.07.12✎ 08:21 | 
        (32) тебе еще в (10) об этом сказали... почему люди не читают то что им советуют?     | |||
| 34
    
        vde69 18.07.12✎ 08:22 | 
        а вообще за твои настройки - поубивать мало... по существу ты 1с сделал всемогущим на сервере и любой человек который может открыть конфигуратор - является админом сервера....     | |||
| 35
    
        LadukOpiat 18.07.12✎ 11:45 | 
        (33) в (10) указаны совсем другие настройки, которые помогли на win 7 но не на win server.
  Там помогли только донастроки учетных политик. | |||
| 36
    
        LadukOpiat 18.07.12✎ 11:48 | 
        (34) - тут согласен, буду теперь забирать права у пользователя сервера 1С     | |||
| 37
    
        LadukOpiat 18.07.12✎ 11:54 | 
        (33) кроме того в (10) вообще ничего не сказано про то что 1С запускает DCOM без пользователя. 
  я внимательно прочитал то что Вы советовали, и в результате добавил пользоваля сервера 1С в группу Пользовтелей DCOM - только это не решило проблемы из-за некорректной работы 1С с DCOM на сервере (17). К сожалению я не настолько глубоко разбираюсь в администировании win server, что б по термину 'DCOM' понять все возможные проблемы и где их искать, в противном случае этот вопрос не выносился бы на обсуждение в текущем форуме. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |