Word - 1C - OLE Отловить закрытие документа #3075


#0 by Oilman
В Ворде через OLE открывается документ Word, заполняется, пользователь с ним поработал и закрывает. Как можно отловить закрытие документа и при этом вызвать что либо из 1С? Проблема с определением той базы которая открыта
#1 by Поп Гапон
А если он не закрывает, а просто переключился обратно в 1С? И считает что в Ворде он все уже сделал? Тогда придется отлавливать потерю фокуса? Сильно это мудрено. Могу предложить такой вариант: Чтобы форма в 1С вызывающая Ворд была модальной. Еще сделать так, чтобы после того как был вызван Ворд любые действия с элементами формы вызывали процедуру контроля приложения Ворда по ОЛАЙ-ссылке на предмет - Закончил ли пользователь работать с Вордом (если ссылка пустая, или он уже ввел все что надо, и т.д.). Если поняли, что пользователь закончил с Вордом, тогда и делаем все что надо. Это я предлагаю как человек, а не как символ провокации.
#2 by Oilman
На самом деле важно не закрытие, а сохранение документа по Save или SaveAs или сохранение при выходе. Надо хранить все изменения документа, при сохранении в Wordе надо в 1С сохранять в другое место, грубо говоря в архив и в справочнике фиксировать путь к версии. Фокус не важен - важны именно события сохранения и закрытия. Может можно как нибудь из Word сделать чтобы в 1С сработала ОбработкаВнешнегособытия что типа ExternalEvent?
#3 by Поп Гапон
А проще - каждые 5 секунд в 1С проверять дату-время отслеживаемого Вордовского файла. Если он сохранялся (дата-время поменялись), то - в архив его. В глобальном файле сделать экспортируемый СписокОтслежФайлов. Ну и перед выходом из 1С проверить список файлов, ругнуться если чего.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С