Имя: Пароль:
1C
 
1с81 Можно ли в регламентном задание создавать COM объекты?
0 stariyN
 
24.04.08
14:25
1с81 Можно ли в регламентном задание создавать COM объекты?
Пытаюсь выполнить следующее в общем модуле(процедура которая содержит этот текст запускается регламентным

заданием):

Word = Новый COMОбъект("Word.Application","Terminal1");    
COMОбъект = Новый COMObject("V77.Application","Terminal1");

в консоли заданий пишет регламентное задание завершено с ошибками
Ошибка при вызове конструктора (COMОбъект): Invalid class string

суть задачи такая - регламентное задание запускается на сервере 1с81 и должно на сервере 1с77 создать

comobject 1с77 чтобы обмениваться кое-какой информацией по расписанию
пользователь от которого происходит запуск админ на обоих серверах.
1 stariyN
 
24.04.08
14:34
из 1с предприятия под этим пользователем это работает
2 MaxS
 
24.04.08
14:52
;) Я обманываю так:

#Если Сервер Тогда
//ЗапуститьСистему
Попытка
V81 = Новый COMObject("V81.Application");
Открыта = V81.Connect(СтрокаСоединенияИнформационнойБазы());
Исключение
глЗаписьВЖР(ОписаниеОшибки(),,"РегламентныеПроцедуры.ЗапускИБ");
V81 = 0;
КонецПопытки;
ОбработкаЗагрузкиКурсовВалют = V81.Обработки.КурсыВалютРБК.Создать();
#КонецЕсли
#Если Клиент Тогда
ОбработкаЗагрузкиКурсовВалют = Обработки.КурсыВалютРБК.Создать();
#КонецЕсли
//...
//не забыть в конце:
V81 = 0;
3 stariyN
 
24.04.08
15:27
COMОбъект = Новый COMObject("V77.Application","Terminal1");
Попытка
Если COMОбъект.Initialize(COMОбъект.RMAccount,СтрокаПодключения,"NO_SPLASH_SHOW") Тогда
//действия
Иначе
//сообщение в журнал обмена(РС)
КонецЕсли;    
Исключение
//сообщение в журнал обмена(РС)
КонецПопытки;
4 stariyN
 
24.04.08
15:29
2
#Если Сервер Тогда

не помогло попробовал таже ошибка
5 MaxS
 
24.04.08
15:41
(4) ну мне весь код писать, что ли? ;)

#Если Сервер Тогда
V81 = Новый COMObject("V81.Application");
Открыта = V81.Connect(СтрокаСоединенияИнформационнойБазы());
COMОбъект = V81. НеПомнюКак COMObject("V77.Application","Terminal1");
#КонецЕсли
#Если Клиент Тогда
COMОбъект = Новый COMObject("V77.Application","Terminal1");
#КонецЕсли
6 stariyN
 
24.04.08
15:54
мысль твою понял спс

то это как-то если честно через одно место...
создавать 1с8 и от нее 1с77

хотя работать думаю будет
7 igork1966
 
24.04.08
15:56
(0) Остается выяснить... установлен ли у тебя word и 1C 7.7 на сервере....
8 igork1966
 
24.04.08
15:58
(7) + и имеются ли достаточные права у пользователя под которым крутится сервер приложения...
9 stariyN
 
24.04.08
16:17
да
из 1с8 предприятия все запускается и работает
10 stariyN
 
24.04.08
16:18
пользователь от которого крутится сервер приложения админ на обоих серверах
11 stariyN
 
24.04.08
16:19
V81. НеПомнюКак COMObject("V77.Application","Terminal1");

вот с этим пока не нашел как правильно писать ???

{ОбщийМодуль.ОбменФО(68,26)}: Процедура или функция с указанным именем не определена (COMObject)
       COMОбъект = V81.New(<<?>>COMObject("V77.Application","Terminal1"));
{ОбщийМодуль.ОбменФО(68,25)}: Ожидается символ ';'
       COMОбъект = V81.New<<?>> COMObject("V77.Application","Terminal1");
12 stariyN
 
24.04.08
16:23
???
ТДокумент = V81.NewObject("ТекстовыйДокумент");
COMОбъект = V81.NewObject("COMОбъект");???
13 stariyN
 
24.04.08
16:28
COMОбъект = V81.New("COMObject(V77.Application,Terminal1)");

вроде работает
14 MaxS
 
24.04.08
16:35
(12) нет под рукой 1С-ки... и времени ;) но можно например создать функцию в 1С 8
Функция V77Application() Экспорт // в глобальном модуле
Возврат Новый Новый COMObject("V77.Application","Terminal1");
КонецФункции

и тогда в (5)
COMОбъект = V81.V77Application();  по моему так

да должно быть решение (11) может ещё кто знает? ;)
15 stariyN
 
24.04.08
16:38
понял спс