Имя: Пароль:
1C
 
1c +Libreoffice
0 azeml
 
02.09.16
15:56
Здравствуйте! Подскажите почему не меняет параметры пытаюсь через LibreOffice . Формат файла odt .

&НаКлиенте
Процедура Команда1(Команда)
КомандаНаСервере();
ЗапуститьПриложение("C:\Temp\Новая папка\MAKET.odt");
КонецПроцедуры
&НаСервере
Процедура КомандаНаСервере()
ПутьКФайлу = "C:\Temp\MAKET.odt";
Макет = РеквизитФормыВЗначение("Объект").ПолучитьМакет("Макет");
Макет.Записать(ПутьКФайлу);
ServiceManager = Новый COMОбъект("com.sun.star.ServiceManager");
Desktop = ServiceManager.createInstance("com.sun.star.frame.Desktop");
Scr = Новый COMОбъект("MSScriptControl.ScriptControl");
Scr.Language="javascript";
Scr.Eval("Args=new Array()");
Args = Scr.Eval("Args");
Scr.AddObject("ServiceManager", ServiceManager);

Попытка
FileNameSh = СокрЛП("C:\Temp\MAKET.odt");
URL = СтрЗаменить(FileNameSh," ","%20");
URL = СтрЗаменить(URL,"\","/");
URL ="file://localhost/" + URL;

OpenOffice = Desktop.LoadComponentFromURL(URL, "_blank", 0, Args);

Исключение
Сообщить("Ошибка при попытке создать объект ", СтатусСообщения.Внимание);
Возврат;
КонецПопытки;

Replace =OpenOffice.CreateReplaceDescriptor();
Replace.SearchString = "[paramNumber]";
Replace.ReplaceString = "111111";
OpenOffice.ReplaceAll(Replace);
Scr = "";
OpenOffice = "";
ServiceManager = "";
//ЗапуститьПриложение(ПутьКФайлу);
КонецПроцедуры

возможно проблема в том, что когда я открываю макет вручную он пишет, что файл заблокирован и возможность открыть только для просмотра. Захожу внутрь нажимаю разрешить доступ тогда могу его редактировать