Выгрузка в формат *.ods (OpenDocument, электр. таблица)

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

tria
постоялец
Сообщения: 401
Зарегистрирован: 03.04.2006 11:24:10
Контактная информация:

Выгрузка в формат *.ods (OpenDocument, электр. таблица)

Сообщение tria »

Никто не встречал компонентов для этих целей?
Или в Делфях?
GodDog
незнакомец
Сообщения: 6
Зарегистрирован: 25.01.2007 18:16:52
Откуда: Россия
Контактная информация:

Сообщение GodDog »

сами по себе опендоки - архив, а в нем xml файлы.

фот с оф форума, оф. ссылка на компоненты http://ooomacros.org/dev.php#133853

Delphi OOo

Author: Bernard Marcelly
This is a toolbox to help programmers drive the application OpenOffice.org from the programming language Delphi using COM Automation technology. It contains:

* A unit with routines similar to some OpenOffice.org Basic routines used to access API,
* A unit which defines all API constants and enumerations
* A Delphi version of the Xray tool
* Typical programming examples and all source code
* A HowTo describing the toolbox

The source code included in the package is released under the LGPL. The instruction document is released under the Public Documentation License version 1.0
tria
постоялец
Сообщения: 401
Зарегистрирован: 03.04.2006 11:24:10
Контактная информация:

Сообщение tria »

Меня вот это вот не устраивает:
>using COM Automation technology
Дело в том, что прогу я пишу кроссплатформенную. А Линуксе, если не ошибаюсь, COM Automation отсутсвует.

А на прямую компонент не пишет, не в курсе?

П.С.
Сори за неточно поставленную задачу.
Аватара пользователя
Attid
долгожитель
Сообщения: 2588
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

теоритически он(формат) может постоянно меняется поэтому компоненты прямого доступа делать бесполезно, или постоянно их подправлять =)
эт лучше покопайся на сайте ОО может у них какие нибуть библиотеки есть, а их уже в свою очередь можно использовать кроссплатформенно.
PublicJoke
новенький
Сообщения: 41
Зарегистрирован: 04.07.2006 12:21:07

Сообщение PublicJoke »

Гляньте http://sourceforge.net/projects/uno-pas-bridge Я - соавтор, вопросы лучше задавать публично, а не в личку.
GigoVich
новенький
Сообщения: 99
Зарегистрирован: 07.11.2005 01:05:02
Откуда: г. Москва
Контактная информация:

Сообщение GigoVich »

PublicJoke
Не могли бы вы по подробней!
PublicJoke
новенький
Сообщения: 41
Зарегистрирован: 04.07.2006 12:21:07

Сообщение PublicJoke »

Да, не углядел за точкой, прошу пардону.
Поподробнее: мост позволяет общаться с OpenOffice (а точнее, с UNO) из Delphi/Kylix напрямую, минуя (в случае Винды) OLE Automation. Мост однонаправленный, т.е. не позволяет писать свои компоненты для UNO (например, обработчики событий).
Во FreePascal мост пока завести невозможно, т.к. а) не полностью поддерживается TCustomVariantType и б) нет пакетов.
CoverStory
новенький
Сообщения: 95
Зарегистрирован: 09.02.2006 17:21:42
Откуда: Семипалатинск

Сообщение CoverStory »

Всем доброго!
Кажется вопрос в тему!
Имеется DBGrid, в нем содержится информация из Sqlite3Dataset. Вопрос следующий как сохранить содержимое DBgrid в файл OpenOffice c расширением ods?
tria
постоялец
Сообщения: 401
Зарегистрирован: 03.04.2006 11:24:10
Контактная информация:

Сообщение tria »

PublicJoke писал(а):Гляньте http://sourceforge.net/projects/uno-pas-bridge Я - соавтор, вопросы лучше задавать публично, а не в личку.


Наконец-то дошли руки посмотреть и занятся вплотную. :)
В делфи 7 при запуске ConsoleTest выдало сообщение: "Приложению не удалось запустится, поскольку sal3.dll не был найден. Повторная установка приложения может исправить эту проблему."

Как ищется sal3.dll? Папке OpenOffice она есть.
И еще.
Возможна ли работа с Вашей программой из FreePascal?
Например, откомпилировать Delphi_uno.dll и OO_delphi_bridge.bpl в Делфи, но обращаться к ним из FreePascal?
Аватара пользователя
Иван Шихалев
энтузиаст
Сообщения: 1138
Зарегистрирован: 15.05.2006 11:26:13
Откуда: Екатеринбург
Контактная информация:

Сообщение Иван Шихалев »

PublicJoke писал(а):Во FreePascal мост пока завести невозможно, т.к. а) не полностью поддерживается TCustomVariantType и б) нет пакетов.

А пакеты-то тут причем?
ssl
новенький
Сообщения: 59
Зарегистрирован: 17.05.2005 11:27:01

AV в uno pascal bridge

Сообщение ssl »

PublicJoke писал(а): Я - соавтор, вопросы лучше задавать публично, а не в личку.


Вопрос соавтору: посвежее чего-нибудь есть? В том 0.9.2, что по ссылке, сильно неряшливый код, смахивает на альфу.
Кроме того, пишу:

var v,x: Variant;
begin
v:= unassigned;
x:= unassigned;
v:= UNOQueryInterface(fDesktop, 'com.sun.star.frame.XDesktop');
x:= v.getCurrentComponent;

и в последней строчке получаю AV в процедуре:

procedure TUNO_Pascal_proxy.acquireInterface; cdecl;
begin
Inc(fReferencesCounter);
pUnoInterface^.acquire(pUnoInterface);
// AV в предыдущей строке
end;

То же самое при x:= v.getCurrentFrame;
а вот, например, getCurrentComponents работает нормально.

Это как-то связано с изменениями API или можно в самом мосте поправить?
PublicJoke
новенький
Сообщения: 41
Зарегистрирован: 04.07.2006 12:21:07

Сообщение PublicJoke »

To Иван Шихалев:
Пакеты уже не причем, мост худо-бедно работает с FreePascal.

To ssl:
Касательно неряшливого кода: мы с коллегой занимались мостом по собственной инициативе, на нас ничего не давило. Не было стимула особо напрягаться. Ваш пост - ПЕРВЫЙ с конкретной критикой моста вообще. Чем больше обоснованной критики, тем выше качество результата, так что не сдерживайте себя :D .
По существу: коллега, занимавшийся собственно кодированием, обещался ответить сегодня вечером.
ssl
новенький
Сообщения: 59
Зарегистрирован: 17.05.2005 11:27:01

uno pascal bridge

Сообщение ssl »

PublicJoke писал(а):Касательно неряшливого кода Ваш пост - ПЕРВЫЙ с конкретной критикой моста вообще.По существу: коллега, занимавшийся собственно кодированием, обещался ответить сегодня вечером.

Вах! -- Первый ...! :)
Не, я не критикую - сами пишем, всё знакомо. Просто альфу использовать где-то кроме теста страшновато :)
Если вы со товарищи проэктец не забросили, давайте свежачок - раскритикую. И почистить помогу.
Контора собирается переезжать на линух, так что актуально..

Если что - sl(собака)nist.ru
Okoshkin
новенький
Сообщения: 10
Зарегистрирован: 09.08.2007 15:33:18

Сообщение Okoshkin »

Зарегистрировался таки ... фух ...

Всем здравствуйте. Я и есть "со товарищи" :)

to ssl:
Признаю - виновен. Bug известный, обнаружен сразу после публикации v.0.9.2 :(
В вашем случае v.getCurrentComponent не должен ничего вернуть:
getCurrentComponent - provides read access to the component inside the tree which has the UI focus

Мост же помещал "ничего" в обертку и вызывал acquire. Уже исправлено.

исправленный вариант (последний, с которым сам работаю) выслал на почту[/quote]
ssl
новенький
Сообщения: 59
Зарегистрирован: 17.05.2005 11:27:01

Сообщение ssl »

Вай, спасибо!
Только как же так - "ничего"?
В ОЛЕ варианте я получаю интерфейс текущего документа - дабы иметь возможность работать со страничкой, в которую ткнул пользователь.
Я только неделю ковыряю ОО, от непривычности доки и самого стиля АРI тихо едет крыша, так что пардон, если вопросы малость дурацкие :)
Ответить