|
Запуск обработки с COM - объектом | ☑ | ||
---|---|---|---|---|
0
ДядяМитяй
22.04.14
✎
13:11
|
Помогите разобраться, добрые люди.
Конфа УТ10,3 безжалостно изуродованная, платформа 8,2 Есть обработка (не внешняя). В обработке такой код: ... Попытка OurExxel = Новый COMОбъект("Excel.Application"); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; Книга = OurExxel.WorkBooks.Add(); // :-( Лист = Книга.WorkSheets(1); .... Когда обработка запускается вручную все работает как надо - в экселевский файл выгружается то, что надо. Попробовал запускать как регламентное задание - выдает в консоли заданий: {Обработка.ВыгрузкаНомВЕксель(62)}: Значение не является значением объектного типа (WorkBooks) - это как раз про строчку, отмеченную смайлом. ЧЯДНТ???? Возможно, я криво написал процедурку в модуле регламентных заданий: Процедура ВыгрузкаНаФтп() Экспорт ОбрВыгр = Обработки.ВыгрузкаНомВЕксель.Создать(); ОбрВыгр.ВыгрузкаНомВЕксель(); КонецПроцедуры Куда мне рыть? |
|||
1
ДенисЧ
22.04.14
✎
13:13
|
на сервере екселя нет, наверное
|
|||
2
Torquader
22.04.14
✎
13:15
|
(1) Да даже если и есть, он там работать не сможет - профайлы нужно настраивать и разрешения.
Хотя, если COM+ будет, то всё можно, даже если Excel на соседней машине - но это там, где настоящие специалисты работают. |
|||
3
ДенисЧ
22.04.14
✎
13:16
|
(2) А если ексель на машине в другом городе? :-)
|
|||
4
ДядяМитяй
22.04.14
✎
13:20
|
Все крутится на сервере через удаленные раб. столы
|
|||
5
Torquader
22.04.14
✎
13:22
|
(3) Ну, если VPN для сети, а поверх его DCOM через Tcp-Ip, то почему бы и нет.
Вот на другой планете не получится - время ответа будет больше таймаута. |
|||
6
ДядяМитяй
22.04.14
✎
13:22
|
А кроме того, если б оно не находило екселя, вылетало бы на строчку раньше
|
|||
7
Torquader
22.04.14
✎
13:23
|
(4) Регламентное задание выполняется от имени какого пользователя ? - вот ему нужно дать право на запуск Excel и создать для Excel папки.
(Наиболее удачно сделать один интерактивный вход под этим пользователям и открыть Excel хоть один раз). |
|||
8
Torquader
22.04.14
✎
13:24
|
(6) Оно Excel находит, но он не готов к работе, так как не созданы служебные папки и т.п.
|
|||
9
ДядяМитяй
22.04.14
✎
13:24
|
в процессе отладки пока рег задание выполняется от того же меня, от которого запускается обработка вручную с удачным результатом
|
|||
10
hhhh
22.04.14
✎
13:25
|
(9) Сообщить() в регламентном задании вы не увидите. Кому вы там его показываете? Пяному админу, который там спит на раскладушке в серверной?
|
|||
11
ДядяМитяй
22.04.14
✎
13:26
|
а в консоли заданий не увижу?
|
|||
12
ДенисЧ
22.04.14
✎
13:26
|
(10) А я увижу... :-Ь
|
|||
13
hhhh
22.04.14
✎
13:26
|
(12) вы - пяный админ?
|
|||
14
Torquader
22.04.14
✎
13:27
|
(11) Если вместо сообщить поставить Возврат, то будет всё понятно, что Excel - не создалась.
|
|||
15
ДядяМитяй
22.04.14
✎
13:27
|
да даже если не увижу - исключение-то сработает
|
|||
16
ДенисЧ
22.04.14
✎
13:28
|
(13) Я трезвый (к сожалению) программист, владеющий инструментом...
|
|||
17
ДядяМитяй
22.04.14
✎
13:29
|
(15) не считается ))
|
|||
18
hhhh
22.04.14
✎
13:29
|
(15) исключение отработало и пошло дальше. Следующая команда
Книга = OurExxel.WorkBooks.Add(); |
|||
19
ДядяМитяй
22.04.14
✎
13:32
|
Регламентное задание можно выполнять от того же пользователя, от которого уже запущен 1С или обязательно робота создавать?
|
|||
20
Ненавижу 1С
гуру
22.04.14
✎
13:34
|
так Excel стоит на сервере приложений или нет?
|
|||
21
Ненавижу 1С
гуру
22.04.14
✎
13:34
|
(19) от того пользователся Windows, от которого работает сервер приложений
|
|||
22
ДядяМитяй
22.04.14
✎
13:37
|
(21) вот это уже пища для размышлений. то есть надо сделать робота с аутентификацией Windows для входа в 1С?
|
|||
23
Ненавижу 1С
гуру
22.04.14
✎
13:38
|
(22) ты на вопросы отвечаешь? см (20)
|
|||
24
hhhh
22.04.14
✎
13:39
|
(22) так у вас файловая что ли?
|
|||
25
Torquader
22.04.14
✎
13:42
|
(24) Судя по всему, у них терминальный сервер и файловая 1С.
|
|||
26
Ненавижу 1С
гуру
22.04.14
✎
13:42
|
(25) и на терминальном сервере не стоит Excel ))
|
|||
27
Torquader
22.04.14
✎
13:45
|
(26) Ну и как тогда она локально исполняется на том же терминальном сервере ?
|
|||
28
Ненавижу 1С
гуру
22.04.14
✎
13:47
|
(27) а тут надо читать локально, как "не в терминале"
вообще ХЗ, что имеет ввиду автор |
|||
29
ДядяМитяй
22.04.14
✎
14:00
|
База SQL, но мне никак не дадут доступ ни к SQL серверу, ни к серверу 1С. Поэтому приходится извращаться.
|
|||
30
Torquader
22.04.14
✎
14:01
|
(29) Тогда - нет доступа - нет и файла.
|
|||
31
ДядяМитяй
22.04.14
✎
14:06
|
А при ручном доступе почему тогда все работает? И файло создает и на удаленный ftp его закидывает?
|
|||
32
hhhh
22.04.14
✎
14:12
|
(31) под другим пользователем вручную входишь. Войди под пользователем сервера 1с.
|
|||
33
Ненавижу 1С
гуру
22.04.14
✎
14:15
|
(31) потому что на клиенте есть Excel, а на сервере приложений 1С его нет, сколько повторять?
|
|||
34
ДядяМитяй
22.04.14
✎
14:24
|
(32) пользователь сервера 1с это тот, который по умолчанию USR1CV82?
|
|||
35
Torquader
22.04.14
✎
16:16
|
(34) Да, только у тебя же терминальный сервер (где работают клиенты) и сервер приложений (где работает 1С) разнесены на разные машины.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |