Libreoffice rapports.

Bonjour,

J'ai besoin de produire des rapports mettant en page des données collectées
dans une base de données.

J'utilise à ce jour des scripts PHP qui produisent un fichier Excel (via la
classe phpexcel <http://phpexcel.codeplex.com/>). La solution fonctionne
plutôt bien.

Pour chaque rapport, un certains nombre de paramètres permettent de
préciser les données à collecter/mettre en page, ils sont passés en
argument.

Cependant, la modification de ces scripts est réservé à un public avisé

J'ai étudié la migration de mes quelques 7 ou 8 rapports vers la solution
BO Crystal Report quand j'ai découvert que mon fidèle écuyer libreOffice
disposait d'un module de génération de rapport.

Mon problème est simple : mes rapports sont utilisés plusieurs centaines de
fois par jour via des scripts "cronifiés". Bilan, l'utilisation de
libreOffice n'a un sens dans mon contexte que si un rapport peut être
produit en ligne de commande.

Quelqu'un ici à t'il déjà mis en place ce type de fonctionnement?

Bonne soirée.

Bonjour Sébastien,

J'ai étudié la migration de mes quelques 7 ou 8 rapports vers la solution
BO Crystal Report quand j'ai découvert que mon fidèle écuyer libreOffice
disposait d'un module de génération de rapport.

Les rapports au format RTF produits par Crystal Reports sont connus pour poser des problèmes à l'ouverture par LO...

Mon problème est simple : mes rapports sont utilisés plusieurs centaines de
fois par jour via des scripts "cronifiés". Bilan, l'utilisation de
libreOffice n'a un sens dans mon contexte que si un rapport peut être
produit en ligne de commande.

Quelqu'un ici à t'il déjà mis en place ce type de fonctionnement?

Le module Rapports de Base utilise une version modifiée du générateur de rapports Pentaho, écrite en Java. Il faudrait donc savoir manipuler cet outil par le biais du langage Java si tu voulais l'utiliser via LO en ligne de commande, ce qui est, à mon sens, un truc à créer une usine à gaz. Mieux vaut faire :

- soit un modèle de document ODF, et l'outil de publipostage, ce qui t'oblige à créer les requêtes ad hoc, déclarer une source de données, et laisser l'utilisateur faire ses choix par l'interface utilisateur de LO, éventuellement avec l'aide de quelques macros LO Basic ;
- soit un modèle de document ODF (Writer ou Calc) et un langage de manipulation qui s'interface avec ta bdd, tel que Perl ou Python, ou encore rester avec tes classes PHP.

Alex