Générez des documents LibreOffice depuis des templates grâce à Python

Magazine
Marque
GNU/Linux Magazine
Numéro
234
Mois de parution
février 2020
Domaines


Résumé

LibreOffice permet de produire rapidement des documents de bonne qualité. Malheureusement, si l'on veut se servir de LibreOffice pour générer automatiquement des factures par exemple, le passage par LibreOffice Basic peut en refroidir certains… Utilisons donc Python !


Pour cet article, nous allons partir d'un exemple pratique basique (et réel !) pour lequel nous allons tenter de pousser l'automatisation à l'extrême. Imaginons donc une personne éditant des factures avec LibreOffice Writer, au format ODT. Ces factures comportent des champs fixes, qui seront toujours présents, et des champs modifiables. Parmi ces champs modifiables, on retrouvera le prénom et le nom du client, la date du jour et les dates des prestations (qui sont toujours les mêmes). Enfin, les dates des prestations sont présentes dans un Agenda sur Google Calendar et dernière information, la personne qui va utiliser notre programme n'est pas informaticienne… Les contraintes sont posées, comment résoudre le problème ? Nous allons :

  1. Étudier les mécanismes de templating de LibreOffice pour comprendre comment créer un document initial qui pourra être exploité en lui fournissant les valeurs des champs modifiables ;
  2. Générer des documents depuis Python en...
Cet article est réservé aux abonnés. Il vous reste 97% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Flutter : applications mobiles, web et desktop

Magazine
Marque
GNU/Linux Magazine
Numéro
248
Mois de parution
mai 2021
Domaines
Résumé

Flutter est un framework permettant de développer des applications natives pour Linux, Windows, macOS, Android, iOS et le Web à partir du même code source. Un moteur graphique OpenGL ultra performant et la compilation native en ARM, x86-64 ainsi que WebAssembly, associés à un cycle de développement agile et hyper intuitif, en font la solution ultime pour les créateurs d’applications. L’essayer, c’est l’adopter !

Principes de l’orienté objet en C++ : la généricité

Magazine
Marque
GNU/Linux Magazine
Numéro
248
Mois de parution
mai 2021
Domaines
Résumé

La programmation orientée objet obéit à des principes. Les 4 principaux sont l’encapsulation, l’héritage, le polymorphisme et la généricité. Dans un premier article, nous avons évoqué l’encapsulation, puis l’héritage et le polymorphisme dans un deuxième. Ce troisième et dernier article traite de la généricité.

Persistance et objets en C++

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
114
Mois de parution
mai 2021
Domaines
Résumé

Au travers de deux articles [1-2] sur les principes de l’orienté objet en C++, nous avions abordé encapsulation, héritage, et polymorphisme. Nous proposons dans ce nouvel article les classes de base pour gérer la persistance d’objets dans des fichiers. Ces classes utilisent les principes énoncés ci-dessus et présentent des stratégies via la généricité. Un exemple de stratégie pour stocker en binaire pourra être redéfini pour d’autres stratégies, comme un stockage en XML.