Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» OpenOffice & Delphi

Автор: Varenik
Дата сообщения: 05.08.2003 05:31
Как передать данные (текст, таблицу) из программы на Delphi в OpenOffice? Может, кто знает, подскажите или хотя бы где есть какая-л. инфа
Автор: redp
Дата сообщения: 05.08.2003 08:06
c OpenOffice никогда не работал
Но
посмотри наличие у этого зверя OLE objects - если такая мулька есть, можно заюзать его через OLE Automation (помнитца мне что с Word & Excel никаких особых напрягов не было)
Автор: vserd
Дата сообщения: 05.08.2003 09:13
Сходи на openoffice.org и openoffice.ru там есть дока по программированию.
Не знаю как сейчас, а полгода назад были полезная информация в обеих доках.
Автор: Varenik
Дата сообщения: 05.08.2003 15:00
redp

Цитата:
OLE objects

В том-то и дело, что нету
Автор: ironwit
Дата сообщения: 06.08.2003 08:13
Varenik
ты если способ найдешь, свисни сюда плс.
Автор: abzac
Дата сообщения: 06.08.2003 13:36
а чем вам это не нравится?

Automating OpenOffice
http://udk.openoffice.org/common/man/tutorial/office_automation.html


Цитата:

Introduction
The OpenOffice (OO) supports Microsoft's Automation technology on different Windows platforms ( Windows 95,98, ME, 2000, NT4). It enables clients to control the office externally. Client programs can be contained within executables or scripts. In order to make use of the Automation capability, a client must be coded in a programming language that supports Automation. There are a variety of appropriate languages and development environments available, such as Visual C++, Visual Basic, Delphi, VBScript and JScript. In order to use a scripting language one needs a script controller that executes the script. Common controllers are the Internet Explorer as well as the Windows Script Host (WSH).

To give you an impression on how Automation works with OO, here is a quick example:

'The service manager is always the starting point
'If there is no office running then an office is started up
Set objServiceManager= WScript.CreateObject("com.sun.star.ServiceManager")
'Create the Desktop
Set objDesktop= objServiceManager.createInstance("com.sun.star.frame.Desktop")
'Open a new empty writer document
Dim args()
Set objDocument= objDesktop.loadComponentFromURL("private:factory/swriter",_
"_blank", 0, args)
'Create a text object
Set objText= objDocument.getText
'Create a cursor object
Set objCursor= objText.createTextCursor
'Inserting some Text
objText.insertString objCursor, "The first line in the newly created text document."&_
vbLf, false


This script opens a new writer document and inserts some text. If OO is not already running, then an instance is started up automatically.
To run this example put the code into a file named test.vbs and run it with the Windows Script Host (WSH). That can be done by entering the command line:

cscript test.vbs

in a command line window. Alternatively one can double click the file entry in the Explorer (if in doubt, look at the documentation at http://msdn.microsoft.com/scripting/default.htm). As you might have noticed, this examples is written in VBScript but you can also use JScript with the WSH.
Автор: ironwit
Дата сообщения: 06.08.2003 13:41
Тем, что например для меня этот язык неизвестен. И учить нет большого желания, и применять нужно в своих программах а не просто так.
Автор: redp
Дата сообщения: 06.08.2003 13:51
2ironwit
ты слово такое слышал - OLE Automation ? Если нет - свободен. Язык ему неизвестен, панимаешь...

Вот и выяснилось, што есть таки для OpenOffice OLE объекты. Так что можно заюзать хоть из Delphi, хоть из VB, хоть из ActiveState Perlа
Автор: ironwit
Дата сообщения: 06.08.2003 13:55
redp

Цитата:
OLE Automation

слышал, но не сталкивался. Просветишь?
Автор: redp
Дата сообщения: 06.08.2003 14:05
эта
не проктолог я и не рентгенолог, просвечивать не обучен
книжки читай, что-нть типа Inside OLE
Автор: ironwit
Дата сообщения: 06.08.2003 14:14
redp
ну-ну. Но все равно спасибо
Автор: Varenik
Дата сообщения: 07.08.2003 04:58
abzac
Пасибки, это уже лучше
ironwit
В любом букваре по Delphi или СBuilder есть описание с примерами. Изложить же здесь - долго и утомительно
Автор: vserd
Дата сообщения: 07.08.2003 10:20
ironwit
Ты доку скачивал?
Там есть пример по работе в Delphi.
Читай доку, она рулез
Автор: hamelion2006
Дата сообщения: 23.11.2006 09:04
Люди, помогите.

1. Проблема с форматом чисел в Excel;
{For fr:=1 to ExRows do
begin
Range:=E.ActiveSheet.Range['B'+IntToStr(fr)];
Range.NumberFormat:='0.00';
end;}
Цикл должен просматривать стобец Б в таблице и менять формат числа. Но почему не работает.

2. Не получается сделать границы ячейки;
//Range.Borders[xlEdgeTop].LineStyle:=xlContinuous;
Автор: Okon
Дата сообщения: 24.01.2007 10:51
Оля (OLE Automation) хороша, когда wind-овое приложение собираешь, а когда кросплатформенное?! На этот случай есть материал http://sourceforge.net/projects/uno-pas-bridge/
Вопросы приветствуются
Автор: oan42
Дата сообщения: 24.01.2007 13:30
Okon
Kylix, CrossKylix как-то не шибко поддерживаются собственными производителями.

Страницы: 1

Предыдущая тема: DBGrid?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.