Bonjour Bob,
From: Bob <[EMAIL PROTECTED]>
Reply-To: [email protected]
To: [email protected]
Subject: Re: [users-fr] import de données xml dans un document open office
Date: Sat, 21 Apr 2007 23:58:16 +0200
Bonsoir Anne,
Comme promis, la nouvelle version du filtre xslt de fusion peut être
téléchargée ici :
http://ooo.bobiciel.com/filtres_xslt/MaXOOoFusionWriter124.jar
à installer avec la procédure décrite sur le site :
http://www.bobiciel.com/maxopeninfo/default_zone/fr/html/page-35.html
rmq : ces filtres s'appuient sur le format xml d'origine de OOo, mais
fonctionnent sans problème avec OOo 1 et OOo 2.
Oui effectivement ça fonctionne avec OOo2 aussi, super !
Je t'ai préparé une maquette pour ta fusion xml. Je n'ai pas eu grand
chose à retoucher dans le modèle que tu as construit. J'ai simplement
modifié le nom des sections texte et du tableau de la façon suivante :
{/ImprRelvFact}
{Client}
{Periode}
{Factures/Facture}
Rmq : La section {/ImprRelvFact} enveloppe toutes les autres sections,
ainsi que le tableau (conformément au schéma du fichier xml source).
Le modèle modifié est ici :
http://ooo.bobiciel.com/filtres_xslt/documents/uti_ImprRelvFact_10_Bob.sxw
Tu peux y intègrer la macro présente dans l'exemple que tu as
téléchargé, ou bien utiliser la procédure en 3 étapes
La source xml avec laquelle j'ai fait le test :
http://ooo.bobiciel.com/filtres_xslt/documents/uti_ImprRelvFact_10.xml
Et le résultat enregistré au format ODF :
http://ooo.bobiciel.com/filtres_xslt/documents/uti_ImprRelvFact_10_resultat_fusion.odt
Le principe de fonctionnement de MaxFusion est le suivant :
1) créer un document modèle sous OOo en y intègrant le paramètrage xpath
adéquate
2) enregistrer ce document au travers le filtre "Fusion MaXOpenInfo
(writer)" et en écrasant le fichier .../xslt/Fusion MaXOpenInfo
(writer)/FusionXmlToWriter.xsl
En fait, le filtre xslt d'import "FusionXmlToWriter.xsl" qui va servir à
la fusion est créé automatiquement. C'est vrai que ça peut sembler tordu,
mais ça
fonctionne à merveille ;-) en en plus la méthode est on ne peut plus
générique.
3) ouvrir le fichier source xml au travers du filtre "Fusion MaXOpenInfo
(writer)"
On obtient un document OOo qui est le résultat de la fusion des données
xml dans le modèle Writer.
La macro inclue dans le document rend l'opération 2) totalement
transparente pour l'utilisateur final.
A ce sujet, si un spécialist des applications packagées pouvait me donner
un petit coup de main pour finaliser ce travail d'intégration, ce serait
sympa. Il
est déja bien avancé, mais je bute sur des problèmes qui semblent être
des bogues d'OOo. Il faudra que je me penche à nouveau sur le sujet un de
ces jours
pour voir si ces problèmes sont règlés avec les nouvelles versions.
Rmq : d'après les commentaires présents dans le fichier xml source, tu
envisages de gèrer la mise en page à la source. Pourquoi ne pas laisser
ce travail à OOo ? Tu peux paramètrer ton tableau de sorte que les
titres de colonnes soient répétés lors d'un changement de page et pour
les totaux, il doit exister une solution automatique.
Oui, c'est vrai si OOo peut faire ce travail, autant le laisser faire !
Pour les totaux, on peut faire une somme en utilisant la fonction somme. Le
problème, c'est que je ne sais pas si c'est possible de sélectionner
automatiquement toutes les cellules d'une colonne, mon nombre de lignes est
variable !
Si ça t'interesses, tu peux également télécharger des versions du filtre
de fusion qui fonctionnent avec Calc et Draw :
http://ooo.bobiciel.com/filtres_xslt/MaXOOoFusionDraw124.jar
http://ooo.bobiciel.com/filtres_xslt/MaXOOoFusionCalc124.jar
Merci mais pour l'instant ça ira, je me concentre sur writer.
------------------------------------------------------------------------------------------------------------
C'est vrai que le paramètrage est un peu rustique, mais pour l'import de
données xml dans OOo, ça permet de faire (presque) aussi bien qu'avec MS
Office 2007.
Ce qui semble la moindre des choses, vu qu'OOo avait 7 ans d'avance en
adoptant dès sa naissance an l'an 2000 xml comme format pour ses documents.
Même si le paramètrage est un peu rustique, tant qu'il permet de faire ce
que l'on souhaite, c'est bien :) J'ai un autre doc dans lequel j'aimerais
faire un import de données xml et là ça me semble moins évident (données qui
doivent continuer à s'écrire dans une autre colonne, affichage d'un texte en
gras suivant la valeur d'un attribut xml ...) Je verrai par la suite. En
tout cas, merci beaucoup Bob d'avoir pris le temps de regarder mes fichiers,
de m'avoir envoyé une correction, d'avoir mis en ligne le nouveau filtre
XSLT ...
Bonne journée
Anne
_________________________________________________________________
Windows Live Messenger sur i-mode : dialoguez avec vos amis depuis votre
mobile comme sur PC ! http://mobile.live.fr/messenger/bouygues/
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]