Вход | Регистрация

1С:Предприятие ::

Метки:OLE и COM

Вызов внешнего приложения из 1С

Я
   Вик
 
02.05.04 - 11:42
Добрый день!
Не подскажет ли кто, есть ли возможность выдать команду вызова внешнего приложения из 1С. Ну, например, по принципу команды RUN из фокса, что нибудь типа дос-команды, или START...
 
 
   GrayT
 
1 - 02.05.04 - 11:53
ЗапуститьПриложение(<?>);
   skunk
 
2 - 02.05.04 - 12:13
можно и system(<?>)
   Вик
 
4 - 02.05.04 - 13:18
Кстати, а можно ли сделать так, чтобы это приложение осталось на переднем плане?
А то оно тут же прячется за окном 1С
   427
 
5 - 02.05.04 - 16:00
Поиграйся с обоими вызовами ....
   Вик
 
6 - 02.05.04 - 23:40
Поигрался. ЗапустиьПриложение(?) работает прекрасно!!! только прячет вызванное окно под 1С. Спокойно могу передать просто имя файла достаточно произвольного типа, и эта штука откроет файл хоть вордом, хоть экселем, хоть почтовой программой, и т.д. С System этого не получается...
   skunk
 
8 - 02.05.04 - 23:42
как раз этим и различаються
   Вик
 
9 - 02.05.04 - 23:43
А как же заставить держать открытый файл перед глазами?
   skunk
 
10 - 02.05.04 - 23:45
тогда имей олю
 
 
   Вик
 
11 - 02.05.04 - 23:50
Т.е. анализ типа файла, создание объекта соответствующего типа, активизация, передача команды на вывод окна на передний план...?
а может есть возможность спрятать свое окно на задний план?
   Вик
 
13 - 03.05.04 - 00:07
Ну на ВФП я писал примерно так -
   TmpSheet=CreateObject('Excel.Sheet')
   on error do myerror with ;
        ERROR(),MESSAGE(),MESSAGE(1),PROGRAM(),LINENO()
    if __ij>0
       =__resume([Не могу вызвать EXCEL])
       exit
   endif
   wait wind [Ждите, готовлю прайс-лист] nowait
    xlObj=TmpSheet.Application
    xlObj.WINDOWSTATE=-4140 && minimized
   xlObj.VISIBLE=.T.
   xlObj.ScreenUpdating=.F.
   xlObj.DisplayAlerts=.F.
   xlObj.IgnoreRemoteRequests = .t.
Ну и т.д., в конце
   XlObj.EnableEvents=.T.
   XlObj.ScreenUpdating=.T.
   XlObj.DisplayAlerts=.T.
    XlObj.WINDOWSTATE=-4137 && maximized
    xlObj.IgnoreRemoteRequests = .f.

А здесь, что-то подобное?
   skunk
 
14 - 03.05.04 - 05:21
сорри уснул... первомай... у мамы, денюха ну и все такое...

в ЖКК есть пример с екселем... тут на форуме не один раз приводилось...

к примеру
Загрузка прайса с Nix
   GrayT
 
15 - 03.05.04 - 09:40
   Вик
 
16 - 03.05.04 - 09:58
Большое спасибо, это то, что нужно, но не все.
Если ТипФ="XLS" Тогда
   Док=СоздатьОбъект("Excel.Application");
   Док.Workbooks.Open(ИмяФ); 
   Док.Visible = 1;  
ИначеЕсли ТипФ="DOC" Тогда
   Док=СоздатьОбъект("Word.Application");
   Док.Documents.Open(ИмяФ); 
   Док.Visible = 1;  
ИначеЕсли ТипФ="EML" Тогда 
   Док=СоздатьОбъект("???.Application");
   Док.???.Open(ИмяФ); 
   Док.Visible = 1;  
ИначеЕсли ТипФ="HTM" Тогда 
  Док=СоздатьОбъект("???.Application");
   Док.???.Open(ИмяФ); 
   Док.Visible = 1;  
КонецЕсли
???


Список тем форума
Рекламное место пустует   Рекламное место пустует
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует