|
Word программно открывается только в режиме чтения | ☑ | ||
---|---|---|---|---|
0
Cancell
06.12.16
✎
11:41
|
Всем привет, такая проблема, есть внешняя обработка с макетом active document, при открытии сохраняю макет в файл:
Если ЗначениеЗаполнено(Каталог) Тогда Попытка ПолноеИмяФайла = Каталог; Макет = РеквизитФормыВЗначение("Объект").ПолучитьМакет("ПФ_MXL_МОЛ"); Макет.Записать(ПолноеИмяФайла); Возврат ПолноеИмяФайла; Исключение Сообщение = Новый СообщениеПользователю; Сообщение.Текст = "Не удалось записать файл в каталог пользователя "+ОписаниеОшибки(); Сообщение.Сообщить(); Возврат Неопределено; КонецПопытки; Иначе Сообщение = Новый СообщениеПользователю; Сообщение.Текст = "Не указан каталог. Сохранение файла невозможно"; Сообщение.Сообщить(); Возврат Неопределено; КонецЕсли; Потом открываю файл - Попытка ШаблонВорд = Word.Documents.Open(МакетВорд);//ПолучитьCOMОбъект(МакетВорд); Исключение Сообщение = Новый СообщениеПользователю; Сообщение.Текст = ОписаниеОшибки(); Сообщение.Сообщить(); Возврат; КонецПопытки; После этого пытаюсь делать замену в документе через закладки - КомОбъект.Bookmarks("ДатаДоговора").Select(); КомОбъект.Application.Selection.TypeText(Формат(ПолучитьДату(СсылкаДок),"ДЛФ=DD")); И выдается ошибка - Произошла исключительная ситуация (Microsoft Word): Метод или свойство недоступны, поскольку эту команду нельзя использовать в режиме чтения. В настройках ворда поотключал все режимы безопасности, но даже если я не программно открываю этот файл то он все равно открывается в режиме только чтение. |
|||
1
MUXACb
06.12.16
✎
11:54
|
(0) А не повис-ли у вас, абсолютно случайно, лишний процесс Word, связанный с открываемым файлом?
|
|||
2
Cancell
06.12.16
✎
11:55
|
(1) те что виснут обрубаю потом и пробую заново.
|
|||
3
Cancell
06.12.16
✎
11:56
|
(1) файл каждый раз создается новый, так что блокировок не должно быть
|
|||
4
Масянька
06.12.16
✎
11:56
|
(2) Уверен? Что Word не висит?
Права на док-т, папку...? |
|||
5
Масянька
06.12.16
✎
11:56
|
(3) Проверь все-таки.
|
|||
6
Cancell
06.12.16
✎
11:58
|
(5) файл задается так -
//задаем имя сохранения на диск КлючУникальности = Новый УникальныйИдентификатор; Каталог = "C:\Temp\"+КлючУникальности+"MOL.doc"; каждый раз файл точно новый. (2) права на папку у сервера 1С есть тут на самом деле даже когда я просто открываю этот файл он уже в режиме только чтения, после того как его из макета сохраняю |
|||
7
Cancell
06.12.16
✎
11:59
|
(2) - > (4)
|
|||
8
Vladal
06.12.16
✎
12:01
|
(6) А в самом макете он у тебя случаем не read-only? Или макет - это табличный документ?
|
|||
9
Cancell
06.12.16
✎
12:01
|
(8) макет это active document, грузил из ворда вроде не было таких ограничений...
|
|||
10
Масянька
06.12.16
✎
12:02
|
(7) Три кнопки нажми и посмотри не висит Word.
(8) Вариант... |
|||
11
Vladal
06.12.16
✎
12:03
|
(9) Сохрани его еще раз, проверь атрибуты, загрузи.
|
|||
12
Vladal
06.12.16
✎
12:03
|
(9) Стопни отладчиком место открытия Word, посмотри файл - он у тебя с каким атрибутами?
|
|||
13
devpro100
06.12.16
✎
12:07
|
(3) Это ведь не важно - новый, не новый. Если после записи макета активный документ остался открытым, то при новом открытии конечно он будет только в режиме чтения. Попробуй записать, вырубить все процессы в менеджере задач и открыть. Если пройдет, значит процесс таки блокирует твой документ и не дает с ним работать.
|
|||
14
Cancell
06.12.16
✎
14:33
|
(11) перезагрузил документ в макет - без изменений
(12) отладчиком увидел:ШаблонВорд.ReadOnly = Истина ... как с этим быть? |
|||
15
Cancell
06.12.16
✎
14:34
|
это после ШаблонВорд = Word.Documents.Open(МакетВорд);
|
|||
16
Cancell
06.12.16
✎
15:32
|
(15) проверил на всяк, но не прокатило =\
{Форма.Форма.Форма(56)}: Поле объекта недоступно для записи (ReadOnly) ШаблонВорд.ReadOnly = Ложь; |
|||
17
Масянька
06.12.16
✎
15:43
|
(16) У тя сам макет ReadOnly. Сохрани макет нормально.
|
|||
18
Cancell
06.12.16
✎
17:23
|
(17) в итоге нашел рабочую обработку через двоичные данные.
Всем спасибо! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |