Aller à l'accueil Le poste de travail libre

Développement OpenOffice, LibreOffice, Lotus Symphony

OpenOffice.org intègre non seulement un langage de macros pour développer de petites applications sur la base d’un document bureautique, mais permet également de créer des interfaces avec votre système d’informations. Plusieurs technologies sont disponibles : L’utilisation du format de fichier XML d’OpenOffice.org et une interface de programmation (API) dénommée UNO (pour Universal Network Object), utilisable pour ajouter des composants à OpenOffice.org ou pour développer une application pilotant OpenOffice.org.

Dynamiser les documents

Les macros peuvent s’appuyer sur l’ensemble des objets d’OpenOffice.org et permettent donc de manipuler le contenu d’un document (cellules, formulaire, ...), d’automatiser des opérations et de créer des interfaces utilisateurs supplémentaires. Ce développement se fait avec le langage StarBasic, dans un IDE (environnement de développement) intégré à OpenOffice.org, qui facilite la saisie du code et le débogage. La structure du langage StarBasic est celle du Basic, donc identique au VBA (Visual Basic for Application) de Microsoft.

Qu’en est-il du portage de macros MSOffice vers des macros OpenOffice.org ?

Bien que la structure des langages soit identiques, il existe une différence entre les macros sous OpenOffice.org et les macros sous MS Office qui est le modèle objet sous-jacent. Or, il faut s’appuyer sur ce modèle pour toutes les interactions avec le document ou l’utilisateur. Les deux modèles objets ne sont pas "superposables", c’est à dire qu’on ne trouve pas directement un objet MSOffice correspondant à un objet UNO. La migration de l’un vers l’autre demande donc une intervention humaine, même si plusieurs projets d’outil de migration se développent.

Communiquer avec vos applications métiers avec UNO

L’API UNO supporte les langages Java, Python, C++. Dans le monde Windows, elle peut également être appelée depuis un objet COM OLE Automation, donc depuis toute application développée avec un outil supportant ce modèle (tout langage des suites Visual Studio ou .net, Delphi, ...). Cette API permet de piloter toutes les fonctionnalités d’OpenOffice.org à partir d’une application externe, qui peut être distante ou locale. Il est ainsi possible de générer ou modifier des documents bureautiques à partir des applications métiers (en mode batch ou interactif), de développer des applications graphiques proposant une valeur ajoutée à OpenOffice.org (Ex : Ecrire un fax qui sera ensuite automatiquement envoyé par l’application). L’API permet également d’étendre les fonctionnalités d’OpenOffice.org en créant de nouveaux composants, directement intégrés dans l’interface graphique d’Openoffice.org.

Manipuler les documents avec XML/XSL

Le contenu des documents OpenOffice.org est stocké au format XML, selon une grammaire (DTD) publiée. Il est donc possible de le manipuler par des transformations XSL, permettant de créer de nouveaux documents ou d’en extraire du contenu, de supprimer des éléments non indispensables pour la publication ou au contraire d’en ajouter. Le format XML d’OpenOffice.org offre donc une autre manière d’intégrer la manipulation de documents bureautiques au sein des applications métiers, dès lors que ces applications utilisent une technologie intégrant un parseur XML et un processeur XSLT (Java, PHP, Perl, Python, ...). OpenOffice.org contient nativement un environnement d’exécution XSLT, permettant d’intégrer des transformations XSL à appliquer lors de l’ouverture et de l’enregistrement d’un document. Il est ainsi facile d’utiliser une DTD spécifique d’une organisation pour le stockage des documents bureautiques.

Le développement OpenOffice vous intéresse ? Contactez-nous


© 22 décembre 2011 - StarXpert - tous droits reserves - Espace privé - mentions legales