Catégorie : pear (2 billets)

Générer un fichier Excel avec PEAR

22/03/06 à 21:32 :: Yannick Torrès
Catégorie : pear

Certains vont sûrement se reconnaître dans la réflexion que j'ai eue il y a quelques semaines au boulot...
Lors de diverses évolutions du logiciel utilisé au boulot, j'ai du générer un fichier "Excel" en Php.
Jusqu'à présent, lorsque ce genre de besoin se présentait, la seule et unique solution que je m'autorisais, c'était un fichier csv, formaté de telle sorte qu'Excel n'y voyait "presque" que du feu...
Et là, un de mes collègues de travail me dit simplement ceci :

"C'est génial l'export Excel !! Reste à ce que le titre soit centré, en bleu et en gras et ce sera parfait... au boulot !"

Gniiiiiiiiiii. Inutile de dire qu'il ne savait pas ce qu'était un fichier csv...

Bref, je me lance à la recherche d'une belle classe qui génère un vrai fichier Excel et je tombe, évidemment, sur une classe PEAR, j'ai nommé : Spreadsheet_Excel_Writer

Je parcours rapidement la documentation et me lance directement dans la réalisation de mon export Excel. J'ai vraiment été épaté par la simplicité de mise en place et la qualité du résultat. D'ailleurs, malgré le nom de la classe, le fichier produit s'ouvre sans problème avec OpenOffice.

J'ai donc décidé de traduire en priorité la documentation de cette classe en français, ce qui est chose faite ! (D'ailleurs, si malgré mon bon françois et mon talent inné pour l'orthographe, vous repérez ce qui ne peut être qu'une faute de frappe (!), n'hésitez pas à me la faire remarquer par email ou via un rapport de bogue).

Voici un exemple que vous retrouverez dans la documentation sur le site de PEAR :

<?php
require_once 'Spreadsheet/Excel/Writer.php';
$workbook = new Spreadsheet_Excel_Writer();

$format_bold =& $workbook->addFormat();
$format_bold->setBold();

$format_title =& $workbook->addFormat();
$format_title->setBold();
$format_title->setColor('yellow');
$format_title->setPattern(1);
$format_title->setFgColor('blue');

// Fusion
$format_title->setAlign('merge');

$worksheet =& $workbook->addWorksheet();
$worksheet->write(00"Bénéfices trimestriels de Dotcom.Com"$format_title);

// Plusieurs cellules vides pour rendre le tout plus jolie
$worksheet->write(01""$format_title);
$worksheet->write(02""$format_title);
$worksheet->write(10"Trimestres"$format_bold);
$worksheet->write(11"Bénéfices"$format_bold);
$worksheet->write(20"Q1");
$worksheet->write(210);
$worksheet->write(30"Q2");
$worksheet->write(310);

$workbook->send('test.xls');
$workbook->close();
?>



Cet exemple montre tout ce dont on a besoin lors de la création d'un document avec un minimum de formatage : mise en gras, changement de la couleur du texte, fusion de cellule, etc. (manque la modification de la taille des caractères qui est tout aussi simple à implémenter).

Bref, cette classe manque à être plus connue (à moins que je ne sois le seul à être passé à côté).

Et pourquoi pas Pear...

10/07/05 à 02:01 :: Yannick Torrès
Catégorie : pear

Oui ! Pourquoi la documentation Php en français est traduite à plus de 96% presque en permanence et pourquoi celle de Pear a du mal à franchir les 40% ?

Pear est pourtant utilisé par énormément de francophones. Alors... pourquoi ?!

Je vois plusieurs réponses à cela.

1°) les développeurs préfèrent utiliser la version anglaise, qui, en général, est plus fidèle qu'une traduction. Et donc, personne ne veut contribuer à la traduction.

2°) les traducteurs qui ont accès au cvs de Pear, ont aussi accès, en général, au cvs de Php et trouvent donc plus important de travailler sur Php que sur Pear.

Voilà deux excellentes raisons, vous ne trouvez pas ? [clin d'oeil]

Mais voilà. J'ai quelques raisons qui me semblent bien plus correspondre à cet état de fait.

La documentation Php, c'est ~ 631 dossiers et ~ 5 940 fichiers.
La documentation Pear, c'est ~ 719 dossiers et ~ 3 581 fichiers.

Vous ne voyez pas comme un... problème ? [sourire] L'arborescence de la documentation est confuse, lourde... on s'y paume !
Avec 2 fois moins de fichiers que Php, la doc de Pear comporte 100 dossiers de plus [sourire]

Et si l'on rajoute le fait que tous les accents doivent être convertis en leur entité html (par exemple, é doit être écrit &eacute;), ça devient un véritable parcours du combattant.
(c'était le cas avant en Php mais le souci a vite été réglé. J'ai soulevé le problème pour Pear mais visiblement, ses responsables pensent que c'est un détail...)

Bref... on parle de plus en plus d'un wiki pour la documentation de Pear. J'espère que ça va résoudre ces problèmes, parce que 40% de traduit, c'est 60% de t'avais qu'à écouter en cours d'anglais [clin d'oeil]

Nous sommes motivés pour traduire Pear. Messieurs les responsables de la documentation Pear, aidez-nous ! .

promotion

Ne remet pas à demain un noyau que tu pourrais recompiler aujourd'hui.

Geek

Tribune

  • 21:16 lapin!!!
  • 14:04 galette
  • 09:14 22:37 :
  • 14:01 Vu le nombre de messages en tribune, j'ai l'impression de prendre 2 ans d'un coup, là !!;)
  • 14:00 merci Gui (car je suppose que c'est toi :) )
  • 10:54 Bon anniversaire à Madame (un peu en retard, pour la deuxième année consécutive) :)
  • 15:29 salut, ca farte ?
  • 23:21 window.location = "URL
  • 10:26 Hello. It is very kind for you to allow guests to post here (if it *is* possible) :)
  • 14:25 salut