Recuperation de donnée d'un fichier xml pour ajouter dans une BDD sql server 200

Résolu
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006 - 6 janv. 2006 à 17:37
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006 - 12 janv. 2006 à 14:02
Amis du jour, bonjour,

Bon, voila, j'ai un p'tit soucis...
je n'arrive pas à récupérer les bonnes données de mot fichier xml...
en fait, mon fichier xml est directement créé par le logiciel de stat SPSS 13.0 donc ca structure n'est, disons, pas tres lisible...
C'est un grps pavé pas beau quoi....
Et donc j'aimerai importer une certaine partie de ces données pour les inclure dans uns BDD sql server.
Pour l'importation, il n'y a pas de problème, mais pour la recup des données, c'est une autre histoire....
je vous donne une patite partie de mon xml pour vous donner une idée :
En balise, je me retrouve avec <outpouttree <command < pivotTable < dimension < group ... .
dans dimension, j'ai VarName, text qui m'interesse.
Toutes ces balises sont répetés plusieurs centaine de fois.
Comment faire pour recuperer la valeur de text, en fonction de VarName?

Si je ne suis pas clair, c'est normale, j'ai moi meme du mal à me suivre....

Merci bien :)

23 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
12 janv. 2006 à 12:51
euh, oui ? mais tu veux qu'on fasse quoi avec tout ca ? :p

On t'a donné les méthodes pour y arriver à savoir loader ton dataset à partir de ton fichier xml :)

Pour faire ca vu qu'il n'y a aucun rapport avec asp, tu peux aussi utiliser visual C# express .... mais une chose de sur si tu veux faire du .net oublie dream et passe à web express qui est gratuit et beaucoup mieux :p


<HR>
Cyril - MVS - MCP ASP
3
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
6 janv. 2006 à 17:52
Bonjour,

A mon avis tu as un problème dans ton import de données, comment celui ci est fait ? tu charges à dataset à partir de ton fichier xml que tu envoies dans la base de données ? ou alors tu fais du parsing ? ou il existe une fonction dans sql server que je ne connaitrais pas ?


<HR>
Cyril - MVS - MCP ASP
0
cs_azra Messages postés 425 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 13 juillet 2007 1
6 janv. 2006 à 20:33
Dans le pire des cas, oublies le format XML et extraits tes données avec des bonnes vieilles expressions régulières, ca fonctionne toujours.


<HR>
Azra (Florent) - MVS - MCAD.NET
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
6 janv. 2006 à 21:02
dans le pire des cas only !!! car les regexp pour parser du xml c'est crade (oui je sais t'aime bien ce qui est crade azra ;))

Mais normalement, si ma mémoire est bonne, en loadant ton XML dans un dataset tout est bon !

Au pire des cas tu fais charger le xml dans VS qui lui te permettra de generer un schéma ce qui est peut etre utile pour le loading du xml dans le dataset sinon tu peux peut etre l'importer dans access avant y'a peut etre plus d'option pour l'import :)


<HR>
Cyril - MVS - MCP ASP
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
9 janv. 2006 à 09:26
Pour mon import, j'ai voulu recupérer le code deja créé par ma collègue, mais la structure du XML étant tout à fait différente, je pense que je vais devoir proceder autrement.
Et l'autres soucis, c'est que je n'ai pas besoin de la totalité des infos....
en fait, le XML est issue des différents tableau résultat de SPSS.
Ce qui m'interesse, c'est le % valide de 1 pour chaque calcul ( environ 2 000).

PAr contre je débute sur my sql alors ma question va sembler simple, mais comment loader mon xml dans un dataset ? (nouveau evidemment.) et est-il possible de restrindre l'importation a certain champ uniquement??

en tt les cas merci bcp pour vos 1eres reponses :)
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
9 janv. 2006 à 09:32
DataSet ds = new DataSet();
ds.ReadXml("file.xml");

s'il te demande le schéma du truc tu peux faire

ds.ReadXmlSchema("fichier.xsd");

si c'est pour récuperer des données d'un site SharePoint tu aurais peut etre pu le faire à partir des nombreux webservice fournis par SPS :)


<HR>
Cyril - MVS - MCP ASP
0
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
9 janv. 2006 à 09:56
merci pour le code, je vais essayer ca rapidement aujourd'hui.
Mais le XML est crée par SPSS, un logiciel de stats, petite confusion la. (ou alors j'ai encore une foisd rien capté) :):):)

Est encore une tite question ( bah oui, chuis un p'tit curieux :) ), comment créer un .xsd?
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
9 janv. 2006 à 10:16
Arf, je pensais qu'il y avait une faute de frappe :p

pour créer un fichier xsd, tu loads le doc xml dans VS et t'as une icone pour créer le XSD correspondant :)


<HR>
Cyril - MVS - MCP ASP
0
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
9 janv. 2006 à 10:21
okay!!!
je m'y atele cette apres midi!
Encore merci pour ton aide précieuse et rapide!!! (même pas le temps d'aller prendre mon p'tit chocolat chaud du matin ).

Je te tiens au courant des évolutions.

Encore merci
0
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
11 janv. 2006 à 09:22
Oula!!!
J'ai pas eu une minute a moi!
je n'est pas encore pu commencer!
Mais j'ai néanmoins une question :)

VS, c'est koi?
j'ai encore du mal à faire le distingo entre entreprise manager, l'analyseur de requete ou service manager.....
Et donc aussi, c'est dans quel partie ou l'on code???
bon, c'est des questions d'ultra débutant mais faut bien commencer un jour ;)

Merci
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
11 janv. 2006 à 13:38
VS = Visual Studio ; a force de passer nos jounrées (et nos nuits ensemble, on se donne des p'ti noms :))

Sinon pour tout le reste, entreprise manager etc... je sais pas exactement, entreprise manager c'est ce qui permet de gerer ton serveur SQL il me semble, mais tu n'as pas besoin de tout ca, car la solution qu'on te propose c'est de passer par du code pour rajouter tes données


<HR>
Cyril - MVS - MCP ASP
0
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
11 janv. 2006 à 14:11
vi, donc tout en asp ;)

Par contre, nous n'avons pas VS ( et oui, maintenant que je connais le sigle, j'vais l'utiliser...) dans la boite...
On passe par dreamweaver.
je vais esseyer qd meme d'épurer mon XML, sinon, il va faire plus de 500 pages...

++ et merci
0
cs_azra Messages postés 425 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 13 juillet 2007 1
11 janv. 2006 à 14:13
Bonjour,

Tu peux télécharger gratuitement (pendant 1 an il me semble), la version Web express de Visual Studio 2005 : http://www.asp.net/default.aspx?tabindex=5&tabid=41


<HR>
Azra (Florent) - MVS - MCAD.NET
0
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
11 janv. 2006 à 14:15
aaahh, ok, interessant ca!
merci azra.

et qu'a de plus interessant Visual Studio par rapport a dreamweaver?
0
cs_azra Messages postés 425 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 13 juillet 2007 1
11 janv. 2006 à 14:20
Euuhhhh :P

Je classe Visual Studio dans la categorie "Environnement de développement" et Dreamweaver dans la categorie "Mise en page de sites web". Cependant je n'ai plus utilisé Dremweaver depuis 3 ans (depuis que je suis passé du php à l'ASP.NET), donc ca à peut être évolué en bien.

Mais pour moi, les deux n'ont rien à voir!


<HR>
Azra (Florent) - MVS - MCAD.NET
0
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
11 janv. 2006 à 14:26
ok, je V tenter l'instal de visual studio, je verrai bien :)

la j'essaie d'y voir un peu plus clair dans mon XML qui est, il faut bien le dire, assez incompréhensible!!
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
11 janv. 2006 à 22:38
La version Web Dev Express n'est pas Visual Studio, celle si ne permet seulement de faire du web "grand public" avec ASP.net il y' a des fonctionnalités que tu n'as qu'avec VS mais que tu ne te serviras surement pas si tu n'es pas un pro confirmé d'asp.net :p

Pour ce qui est de dream, je suis pas d'accord avec Azra, je ne le classe pas dans cette catégorie moi, mais plutot logiciel à éviter ;) j'ai vu une démo présentant la nouvelle gamme et ca m'a plutot donné envie de ne surtout pas y toucher ...


<HR>
Cyril - MVS - MCP ASP
0
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
12 janv. 2006 à 09:10
certes, mais n'ayant pas vraiment le choix du matos.... faut que je fasse avec ce que j'ai ;)

j'ai enfin capter la structure de mon fichier XML.


<LI>Command -</LI>

<LI>PivotTable text = c1_5944_52</LI>

<LI>Dimension text = c1_5944_52</LI>

<LI>Grouptext = valide</LI>

<LI>Group text = dummy ???</LI>

<LI>Category text = .00</LI>

<LI>Dimension text = statistique</LI>

<LI>Category text = frequence</LI>









<LI>Cell text = 6524</LI>








<LI>Category text = pour cent</LI>









<LI>Cell text = 85.3</LI>








<LI>Category text = pourcentage valide</LI>









<LI>Cell text = 91.6</LI>








<LI>Category text = pourcentage cumulé</LI>









<LI>Cell text = 91.6</LI>






<LI>Category text 1.00 varname c1_5944_52</LI>

<LI>Dimension text = statistique</LI>

<LI>Category text = frequence</LI>









<LI>Cell text = 598</LI>








<LI>Category text = pour cent</LI>









<LI>Cell text = 7.8</LI>
<LI>Category text = pourcentage valide</LI>

<LI>Cell text = 8.4</LI>








<LI>Category text = pourcentage cumulé</LI>









<LI>Cell text = 100</LI>
§Category text = total


·Dimension text = statistique


oCategory text = frequence


·Cell text = 7122


oCategory text = pour cent


·Cell text = 93.1


oCategory text = pourcentage valide


·Cell text = 100






<LI>Group text = manquante</LI>

<LI>Category text = systeme manquant</LI>

<LI>Dimension text = statistique</LI>

<LI>Category text = frequence</LI>

<LI>Cell text = 528</LI>
<LI>Category text = pour cent</LI>

<LI>Cell text = 6.9</LI>
<LI>Category text = total</LI>

<LI>Dimension text = statistique</LI>

<LI>Category text = frequence</LI>

<LI>Cell text = 7650</LI>
<LI>Category text = pour cent</LI>

<LI>Cell text = 100</LI>
Et je n'arrive pas a avoir acces au noeuds surlignés en jaune. car plusieurs balises ont le meme nom dans le même degré de la hiérarchie

De plus cette hiérarchie représente 1 seul tableau de calcul. Dans le fichier final, il y en aura plus de 25.000 qui se distinguerons par le code present dans la balise pivotTable.
Donc le but final est de récupérer le % valide de 1 ( ou dee 0) en fonction du code genre c1_5922_52.

Je galere depuis hier avec les node.... dur dur d'être un newbie!!!!!!
0
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
12 janv. 2006 à 09:11
ooopppsss, apparemment il n'a pas accepté les retrait et les couleurs..... c'est illisible!!!
0
nicko59 Messages postés 26 Date d'inscription mercredi 2 novembre 2005 Statut Membre Dernière intervention 16 janvier 2006
12 janv. 2006 à 09:11
ooopppsss, apparemment il n'a pas accepté les retrait et les couleurs..... c'est illisible!!!
0
Rejoignez-nous