Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

26 Февраль 2017, 19:47 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Вы можете задать вопрос по LibreOffice или Apache OpenOffice  без регистрации, используя форму
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1 2 »   Вниз
  Печать  
Автор Тема: Ошибки при использовании API  (Прочитано 5459 раз)
0 Пользователей и 1 Гость смотрят эту тему.
DartSegius
Новичок
*
Offline Offline

Сообщений: 11


« Стартовое сообщение: 1 Октябрь 2014, 11:45 »

Доброе время суток.
Столкнулся я с такой проблемой - как rtf. И было понятно что средствами с++ нормально с этим форматом сделать ничего не получиться. И увидал я LibreOffice, и возрадовался я, да рано.
Не смотря на то что тут мелькает с++, дополнение пишеться на питоне, как не странно.
Ну так хватит лирики, давайте код: http://pastebin.com/re06NVLe
Ну и uno.RuntimeException.
Подскажите - что за проблема. Из чтения туторов, интернетов я вкурил что параметры передаю не те, но проверку они, как не странно, проходят, и illegalArguments мне не приходит. Интернеты ещё говорят что мб мост между питоном и офисом упал, но мне это кажется маловероятным.
Мб у вас будут предложения?

ps надо взять данные из базы данных и создать на их основе документ.

pss Поколдовал ещё немного, решил потестировать removeTextContent, и был ошарашен, что при вызове
Код:
doc.Text.removeTextContent( txt ) #названия и инициализацию переменных смотрите в ссылке выше
объект txt становиться невалидным, а текст в документе остается таким же как и был...
« Последнее редактирование: 1 Октябрь 2014, 17:13 от DartSegius » Записан
DartSegius
Новичок
*
Offline Offline

Сообщений: 11


« Ответ #1: 6 Октябрь 2014, 14:29 »

Никто что ли не использовал API офиса?
Записан
Hasim
Ветеран
*****
Offline Offline

Сообщений: 754


Woe from wit


« Ответ #2: 6 Октябрь 2014, 15:38 »

Питоновская программа в терминале запускается?
И что надо сделать с созданным им файлом Writer?
Выложить файлы не досуг?
Записан
Yakov
Администратор
*
Offline Offline

Сообщений: 2 178


WWW
« Ответ #3: 6 Октябрь 2014, 15:39 »

Код можно прикрепить к тексту сообщения на форуме (Нажимаете "предварительный просмотр", а затем кнопку "Обзор")
И не совсем понятно из текста, как вы запускали код.
Записан

Yakov
Администратор
*
Offline Offline

Сообщений: 2 178


WWW
« Ответ #4: 6 Октябрь 2014, 15:44 »

Питон должен быть обязательно из состава LibreOffice, в противном случае его надо специальным образом настраивать.
Записан

DartSegius
Новичок
*
Offline Offline

Сообщений: 11


« Ответ #5: 7 Октябрь 2014, 10:26 »

Ну наконецц то  Всё хорошо
Питон из офиса с прикрепленной https://pypi.python.org/pypi/mysql-connector-python которая идеально работает вместе с тем питоном.
Офис установлен в папку : "C:\Program Files (x86)\LibreOffice 4\" выбрана была по дефолту.
В PATH прописана папка : c:\Program Files (x86)\LibreOffice 4\program
Код:
c:\Program Files (x86)\LibreOffice 4\program>python --version
Python 3.3.5

код, который запускаю - выложен в первом сообщении ссылкой на pastebin. Если надо, переложу и сюда.

Требуется взять из базы данных некоторые данные, и записать их по шаблону в rtf файл. rtf файл такого вида:

{{{DESKS
[[startTime]] - [[endTime]]
[[title]]
}}}

Требуется взять из базы "desks" - массив из n элементов, записать все элементы по шаблону приведенному выше, сохраняя форматирование, заданное в файле, и выделив при этом жирным кое-что внутри.

Запускал код я просто: копировал в интерпретатор, или запускал такой командной строкой:
python -u <адрес до моего модуля, который сейчас лежит на pastebin>
Ни 1 из вариантов не дал положительного результата.
« Последнее редактирование: 7 Октябрь 2014, 10:30 от DartSegius » Записан
Hasim
Ветеран
*****
Offline Offline

Сообщений: 754


Woe from wit


« Ответ #6: 7 Октябрь 2014, 11:18 »

код, который запускаю - выложен в первом сообщении ссылкой на pastebin. Если надо, переложу и сюда.
Надо в виде файла test.py
Требуется взять из базы данных некоторые данные, и записать их по шаблону в rtf файл. rtf файл такого вида:

{{{DESKS
[[startTime]] - [[endTime]]
[[title]]
}}}

И этот файл нужно выложить.

Чтобы запустить и проверить, открывается ли  rtf файл и пишется ли в него что-нибудь.

Вытягивание же Питоном данных из MySQL - это уже не наши заморочки.
Записан
DartSegius
Новичок
*
Offline Offline

Сообщений: 11


« Ответ #7: 7 Октябрь 2014, 12:30 »

Ловите. Сайт не съел расширение *.py, потому дописал txt.
Пути до файла думаю подправите сами?

* template_n.rtf (4.18 Кб - загружено 6 раз.)
* test.py.txt (2.26 Кб - загружено 18 раз.)
Записан
Hasim
Ветеран
*****
Offline Offline

Сообщений: 754


Woe from wit


« Ответ #8: 7 Октябрь 2014, 23:51 »

Выдало ошибку на сокете:


* err.jpg (44.67 Кб, 1072x245 - просмотрено 21 раз.)
Записан
DartSegius
Новичок
*
Offline Offline

Сообщений: 11


« Ответ #9: 9 Октябрь 2014, 11:55 »

Ну как бы запустить офис надо. Есть такая штука - как unoconv.
Так чтобы работать с API офиса, можно запустить её так:
Код:
$ unoconv -l
или запустить soffice самостоятельно(пути до офиса должны быть прописаны в PATH):
Код:
$ soffice --headless --invisible --nocrashreport --nodefault --nologo --nofirststartwizard --norestore --accept="socket,host=localhost,port=2002;urp;StarOffice.ComponentContext"
Записан
Hasim
Ветеран
*****
Offline Offline

Сообщений: 754


Woe from wit


« Ответ #10: 9 Октябрь 2014, 12:42 »

Выложить unoconv для Windows можно?
Записан
DartSegius
Новичок
*
Offline Offline

Сообщений: 11


« Ответ #11: 9 Октябрь 2014, 12:49 »

Выложить unoconv для Windows можно?
А напрямую не пробовали? Я ведь даже команду дал...
В случае чего: http://www.sql.ru/forum/1048604/unoconv-pod-windows 3-я ссылка в гугле по запросу "unoconv windows"
Записан
Hasim
Ветеран
*****
Offline Offline

Сообщений: 754


Woe from wit


« Ответ #12: 9 Октябрь 2014, 13:47 »

Рушится LibreOffice при старте в Windows 7.
Записан
DartSegius
Новичок
*
Offline Offline

Сообщений: 11


« Ответ #13: 9 Октябрь 2014, 14:17 »

Рушится LibreOffice при старте в Windows 7.
когда рушится? Во время исполнения моего скрипта, или запуска его на прослушивание ?  + какая версия офиса и какая битность винды?
Записан
Hasim
Ветеран
*****
Offline Offline

Сообщений: 754


Woe from wit


« Ответ #14: 9 Октябрь 2014, 14:33 »

LO 4.3.2.2
Windows 7 32-bit
Во время исполнения скрипта

Но смотрю урывками, основательно ковырять пока недосуг.
Записан
Страниц: 1 2 »   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!