| 
    
        
     
     | 
    
  | 
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) в итоге нашел рабочую обработку через двоичные данные.
 
        Всем спасибо!  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |