Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 05:18

Создание макетов на основе OpenOffice

Автор anyut_ka, 22 июн 2011, 20:14

0 Пользователей и 1 гость просматривают эту тему.

anyut_ka

Подскажите пожалуйста, очень нужна Ваша помощь...
Необходимо создать макет типа ActiveDocument на основе OpenOffice (из готового шаблона, созданного в OpenOffice). Но 1С пишет, что неизвестный формат, а при создании нового макета нет даже выбора OpenOffice...в случае Word проблем нет...1c вообще может взаимодействовать с OpenOffice? Или если это невозможно, то как можно вывести данные из 1С в OpenOffice? Может с помощью двоичного файла? Помогите пожалуйста...кучу сайтов уже пересмотрела!

Шурыгин Иван Сергеевич

года полтора назад находил конфигурацию, которая называется взаимодествие с OpenOffice. что то такое, попробуйте поискать ее... там примеры как из 1С вызывать все документы опена
===================================
жизнь надо прожить так, чтоб вверху посмотрели.
и сказали "А ну ка повтори"
===================================

cska-fanat-kz

Погуглите - море информации на тему экспорта в ОпенОффис!
Делается не через АктивДокумент, а через КОМОбъект.
Примерно так же, как и выгрузка в Эксель, только свои нюансы...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

anyut_ka

Спасибо! Я обязательно прочитаю про КомОбъект. Т.е. я правильно понимаю, в самой 1С макетов не будет...будет открываться файл (мой шаблон), заполняться и записываться...так?

cska-fanat-kz

Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Шурыгин Иван Сергеевич

единственно можно будет еще и макеты загрузить в саму конфу... в хранилище значения, чтобы они были не зависимы...
===================================
жизнь надо прожить так, чтоб вверху посмотрели.
и сказали "А ну ка повтори"
===================================

anyut_ka

Получилось дойти до этапа открытия созданного документа в OpenOffice...подскажите пожалуйста какими методами осуществляется поиск закладок в OpenOffice, в Word там свойство Bookmarks...а здесь не могу никак найти...

cska-fanat-kz

Какие закладки?
Обычно в тексте места для замены значениями из 1С отмечаются опеределенным образом (например в квардартных скобках), а потом после открытия файла командами самого ОО вышеупомянутые места заменяются на значения из 1С...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

anyut_ka

Нашла методы SearchDesc = Объект.createReplaceDescriptor();
SearchDesc.SearchString = "zakl";
SearchDesc.ReplaceString = "ку";
В файле создана закладка zakl...хочу заменить на ку...не заменяет...Вставляю этот фрагмент после
Объект = ОбъектДесктоп.LoadComponentFromURL(ИмяФайлаДляЗагрузки, "_default", 0, МассивТипа);

anyut_ka

Вот весь тект процедуры
Попытка
ОбъектОО = Новый COMОбъект("com.sun.star.ServiceManager");
Исключение
Предупреждение("Невозможно загрузить OpenOffice.org !!!" + Символы.ПС + ОписаниеОшибки(), 10, "Ошибка");
Возврат;
КонецПопытки;

PropertyValue = ОбъектОО.Bridge_GetStruct("com.sun.star.beans.PropertyValue");

ОбъектДесктоп = ОбъектОО.CreateInstance("com.sun.star.frame.Desktop");
МассивТипа = Новый COMSafeArray("VT_VARIANT", 1);
CoreReflection = ОбъектОО.CreateInstance("com.sun.star.reflection.CoreReflection");
CoreReflection.forName("com.sun.star.beans.PropertyValue").createObject(PropertyValue);
PropertyValue.Name = "Hidden";
PropertyValue.Value = true;
МассивТипа.SetValue(0, PropertyValue);
ПутьКФайлу = "C:\Klient_kd_ex\1.odt";
ФлагТолькоЗаписать=Ложь;
ИмяФайлаДляЗагрузки = СтрЗаменить(ПутьКФайлу, "\", "/");
ИмяФайлаДляЗагрузки = "file:///" + ИмяФайлаДляЗагрузки;
Попытка
Объект = ОбъектДесктоп.LoadComponentFromURL(ИмяФайлаДляЗагрузки, "_default", 0, МассивТипа);
Исключение
Предупреждение("Невозможно открыть файл " + ИмяФайлаДляЗагрузки + " !!!" + Символы.ПС + ОписаниеОшибки(), , "Ошибка");
Возврат;
КонецПопытки;
SearchDesc = Объект.createReplaceDescriptor();
SearchDesc.SearchString = "[" + "root" + "]";
SearchDesc.ReplaceString = "ку";
ОбъектДесктоп = NULL;
ОбъектОО = NULL;

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск