Quoi, tu ne connais pas PB ? Va falloir parcourir tout le forum alors !

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 19-08-2008 10:59:04

thezerg  
Modérateur
Award: calimero
Lieu: Bordeaux
Date d'inscription: 12-09-2006
Messages: 966
Pépites: 22,449
Banque: 154,120,629,477,379,100

Merge Fichiers XML

Bonjour,
Quelqu'un a-t-il déjà fait un merge rapide de fichiers XML ?

Merci !

Hors ligne

 

#2 19-08-2008 11:56:19

Cortex  
Modérateur
Lieu: Arlon
Date d'inscription: 08-02-2008
Messages: 194
Pépites: 6,904
Banque: 2,109,818,425,070

Re: Merge Fichiers XML

Oula, merge, rapide et XML dans la meme phrase?! Ca doit etre une erreur...

Sinon, j'ai deja fait pas mal de trucs en PB avec XML, tout depend de ce que tu cherches...
Si tes XML a merger ont le meme schema, et qu'ils n'ont pas plus de 2 niveau d'imbrication hierarchique, la technique rapide et pas cher, c'est le template XML de la dw.

Et dans tout les autres cas, faut s'attaquer au PBDOM.

...et si ta question sous entendait un truc du genre "z'avez pas un bout de code qui traine pour le faire", ben malheureusement je n'en ai pas ici...

Hors ligne

 

#3 19-08-2008 11:59:54

thezerg  
Modérateur
Award: calimero
Lieu: Bordeaux
Date d'inscription: 12-09-2006
Messages: 966
Pépites: 22,449
Banque: 154,120,629,477,379,100

Re: Merge Fichiers XML

Cortex a écrit:

Oula, merge, rapide et XML dans la meme phrase?! Ca doit etre une erreur...

Sinon, j'ai deja fait pas mal de trucs en PB avec XML, tout depend de ce que tu cherches...
Si tes XML a merger ont le meme schema, et qu'ils n'ont pas plus de 2 niveau d'imbrication hierarchique, la technique rapide et pas cher, c'est le template XML de la dw.

Et dans tout les autres cas, faut s'attaquer au PBDOM.

...et si ta question sous entendait un truc du genre "z'avez pas un bout de code qui traine pour le faire", ben malheureusement je n'en ai pas ici...

En fait ce que je viens de faire c'est prendre chacun de mes N XML générés et ensuite je parcours chaque ligne et forme écris les lignes dans un fichier XML destination.. mais le parcours des lignes de chaque XML est vraiment très long..

Hors ligne

 

#4 19-08-2008 12:14:07

Cortex  
Modérateur
Lieu: Arlon
Date d'inscription: 08-02-2008
Messages: 194
Pépites: 6,904
Banque: 2,109,818,425,070

Re: Merge Fichiers XML

Oooh.

Tu t'es bricolé une routine qui fait ça? Ben au moins, ça a le mérite de marcher, alors je me tracasserais pas de la vitesse de traitement si j'étais toi...
Parce que si tu te fais une routine en PBDOM ta vitesse va diminuer exponentiellement avec la taille des fichiers en mémoire, et si tu fais du XML DW template, tu vas te casser les c___ pour qu'il marche bien et que toutes les balises soient a la bonne place...

Reste la soluce de faire une XSLT. Mais la, sans mes bouquins je ne peux rien faire, et il te faudra un processeur XSLT et un outil pour l'appeler (exit PB)...

Hors ligne

 

#5 19-08-2008 12:16:41

thezerg  
Modérateur
Award: calimero
Lieu: Bordeaux
Date d'inscription: 12-09-2006
Messages: 966
Pépites: 22,449
Banque: 154,120,629,477,379,100

Re: Merge Fichiers XML

Cortex a écrit:

Oooh.

Tu t'es bricolé une routine qui fait ça? Ben au moins, ça a le mérite de marcher, alors je me tracasserais pas de la vitesse de traitement si j'étais toi...
Parce que si tu te fais une routine en PBDOM ta vitesse va diminuer exponentiellement avec la taille des fichiers en mémoire, et si tu fais du XML DW template, tu vas te casser les c___ pour qu'il marche bien et que toutes les balises soient a la bonne place...

Reste la soluce de faire une XSLT. Mais la, sans mes bouquins je ne peux rien faire, et il te faudra un processeur XSLT et un outil pour l'appeler (exit PB)...

Oui j'ai fait ça, ça fonctionne bien alors on va rester sur ça je ne pensais pas qu'en PBDOM ce serait plus long.

Merci

Hors ligne

 

#6 19-08-2008 12:22:16

Cortex  
Modérateur
Lieu: Arlon
Date d'inscription: 08-02-2008
Messages: 194
Pépites: 6,904
Banque: 2,109,818,425,070

Re: Merge Fichiers XML

thezerg a écrit:

Oui j'ai fait ça, ça fonctionne bien alors on va rester sur ça je ne pensais pas qu'en PBDOM ce serait plus long.

C'est toujours un peu la surprise avec le DOM (que ce soit en PB, Java ou n'importe quoi d'autre... ), il faut un objet en memoire par balise, un par attribut de ta balise, un pour ceci ou cela... Bref, quand tu sort des fichiers a quelques centaines de Ko, ca devient vite gourmant en memoire, et en temps...

Faudrait un jour que quelqu'un se decide a adapter un des moteur SAX du marché pour PB, comme certains l'ont fait pour DOM en creant PBDOM...

Hors ligne

 

#7 19-08-2008 12:35:12

thezerg  
Modérateur
Award: calimero
Lieu: Bordeaux
Date d'inscription: 12-09-2006
Messages: 966
Pépites: 22,449
Banque: 154,120,629,477,379,100

Re: Merge Fichiers XML

Cortex a écrit:

thezerg a écrit:

Oui j'ai fait ça, ça fonctionne bien alors on va rester sur ça je ne pensais pas qu'en PBDOM ce serait plus long.

C'est toujours un peu la surprise avec le DOM (que ce soit en PB, Java ou n'importe quoi d'autre... ), il faut un objet en memoire par balise, un par attribut de ta balise, un pour ceci ou cela... Bref, quand tu sort des fichiers a quelques centaines de Ko, ca devient vite gourmant en memoire, et en temps...

Faudrait un jour que quelqu'un se decide a adapter un des moteur SAX du marché pour PB, comme certains l'ont fait pour DOM en creant PBDOM...

Ok ! En fait c'est à cause de la mémoire qu'on découpe le fichier principal en plusieurs autres car le Retrieve prends énormément de mémoire et fait planter PB, même en faisant des Destroy et des GarbageCollector() rien ne change...

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22