8.х OpenOffice 3.0

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем FLoYD777, 5 авг 2009.

  1. TopicStarter Overlay
    FLoYD777
    Offline

    FLoYD777 Опытный в 1С

    Регистрация:
    4 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    УТ 10.3
    сделал внешнюю обработку, в которой выбирается контрагент, орг8анизация, затем нажимаешь на кнопку и она открывает ВОРД с текстом договора, с заполнеными реквизитами...
    Т.е. в обработки у меня есть форма, макет(ActiveDocument) который ссылается на вордовский документ(это заготовка будущего договора)...

    это необходимо сделать под "OpenOffice 3.0"... а вот как это сделать является вопросом???
    просмотрел темы которые были ранее созданы по этой теме, но так и не разобрался... могли бы по порядку объяснить мне, как это все делается... как можно подробнее... заранее благодарю за помощь)
  2. lazy
    Offline

    lazy Модераторы Команда форума Модератор

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
  3. TopicStarter Overlay
    FLoYD777
    Offline

    FLoYD777 Опытный в 1С

    Регистрация:
    4 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    вот нашел хорошую ссылочку:

    http://triteh.ru/libooo/

    там лежит прога и описание к её подключению к разным версиям 1С'ки...
    но вроде она работает только с Calc...
  4. x_under
    Offline

    x_under Модераторы Команда форума Модератор

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    13
    Баллы:
    29
    На диске ИТС есть хороший пример работы с OO
  5. TopicStarter Overlay
    FLoYD777
    Offline

    FLoYD777 Опытный в 1С

    Регистрация:
    4 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Код:
    СервисМенеджер = Новый COMОбъект("com.sun.star.ServiceManager");
    Десктоп =СервисМенеджер.createInstance("com.sun.star.frame.Desktop");
    
    Путь = "file:///Z:1cВнешние Отчеты и ОбработкиКаталогДляПроб";
    Имя = "ДоговорП.odt";
    ИмяФайла = Путь + Имя;
    Арг = Новый COMSafeArray("VT_DISPATCH", 1);
    
    OOДокумент = Десктоп.loadComponentFromURL(ИмяФайла, "_blank", 0, Арг);
    
    
    выше приведенный код открывает текстовый документ ОО, а вот как сделать замену Зарезервированных слов на определенные данные, разобратся не получилось...
    чтобы понятней было о какой замене я говорю, вот пример который делал для Word'а:
    Код:
    Замена = Документ.Content.Find;
    Замена.Execute("",Ложь, Истина, Ложь, , , Истина, , Ложь,    ВыборкаОрганизации.НаименованиеПолное);
    
    
    
    
    
    подскажите пожалуйста как это делать в данном случае...
  6. TopicStarter Overlay
    FLoYD777
    Offline

    FLoYD777 Опытный в 1С

    Регистрация:
    4 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    разобрался!!! :unsure:
    вот как надо:

    Код:
    ТаблицаЗН = Новый ТаблицаЗначений;
    
    СервисМенеджер = Новый COMОбъект("com.sun.star.ServiceManager");
    Десктоп = СервисМенеджер.createInstance("com.sun.star.frame.Desktop");
    
    Путь = "file:///Z:\1c\Внешние Отчеты и Обработки\КаталогДляПроб\";
    Имя = "ДоговорП.odt";
    ИмяФайла = Путь + Имя;
    
    Арг = Новый COMSafeArray("VT_DISPATCH", 1);	
    ТекстовыйПроцессор = Десктоп.LoadComponentFromURL(ИмяФайла, "_blank", 0, Арг);
    
    //здесь заполняется ТаблицаЗначений, где в которой две колонки, первая "что ищем", вторая "на что меняем"
    
    
    Replace = ТекстовыйПроцессор.CreateReplaceDescriptor();
    Для Каждого Стр ИЗ ТаблицаЗН Цикл
    Replace.SearchString  = "значение из первой колонки";
    Replace.ReplaceString = "значение из второй колонки";
    ТекстовыйПроцессор.ReplaceAll(Replace);
    КонецЦикла;
    
    
    забыл сказать, что для того чтобы это все работало нужно подключить специальную библиотеку, которая есть на ИТС... я брал с ИТС август 2009 (партнерский)
  7. TopicStarter Overlay
    FLoYD777
    Offline

    FLoYD777 Опытный в 1С

    Регистрация:
    4 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26

Поделиться этой страницей