Информационный поток
Задания вакансии материалы разработки сообщения форума
Форум

Не ловит обработчик MSWord.DocumentBeforeClose , хотя MSWord.DocumentChange отрабатывает верно.

    • #1
    • 02.05.2015 23:19
    • Отредактировано: 02.05.2015 23:22:48
    0
    Проблема - не уходит в обработчики при закрытии или сохранении документа в ворде (Хранится в базе в хранилищеЗначений). Надеюсь, все просто и я что-то проспал.

    *****************************************

    заранее спасибо.
    • #2
    • 02.05.2015 23:22
    0
    
     &НаСервере
      Процедура ОткрытьДокументНаСервере()
    	ИмяФайла = ПолучитьИмяВременногоФайла("doc");
    	  Doc =  Объект.Ссылка.ХранилищеРедакции.Получить();///ХранилищеРедакции - тип ХраилищеЗначений
    	  Если Doc <> Неопределено Тогда
    		  Doc.Записать(ИмяФайла);
    		 MSWord = Новый COMОбъект("Word.Application"); 		     
                   Документ =  MSWord.Documents.Open(ИмяФайла); 
    		 msWord.Visible = Истина;
    		  msWord.Application.WindowState = 2;
    		 msWord.Application.WindowState = 1;  		  
    		  ДобавитьОбработчик MSWord.DocumentChange, ПриИзмененииДокумента;
    		   ДобавитьОбработчик MSWord.DocumentBeforeClose, ПередЗакрытиемДокументаWord;
    		 ДобавитьОбработчик MSWord.Quit,ВыходИзWord;
    	 КонецЕсли;		
      КонецПроцедуры
    
     Процедура ПередЗакрытиемДокументаWord(Документ, Отмена)
    	   Сообщить("Документ закрыт");    
    	 Документ.Save();	
     КонецПроцедуры
     Процедура ПриИзмененииДокумента()    
    	 Сообщить("Документ изменен");
     КонецПроцедуры
     
     Процедура ВыходИзWord()
    	   Сообщить("выход");
      КонецПроцедуры  
Яндекс-директ
Для участия в обсуждении Вам необходимо авторизоваться либо   зарегистрироваться