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

Messages postés
26
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
16 janvier 2006
- - Dernière réponse : 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 :)
Afficher la suite 

20/23 réponses

Meilleure réponse
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
17
3
Merci
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

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 215 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jesusonline
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
17
0
Merci
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
Commenter la réponse de jesusonline
Messages postés
426
Date d'inscription
mercredi 22 janvier 2003
Statut
Modérateur
Dernière intervention
13 juillet 2007
0
Merci
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
Commenter la réponse de cs_azra
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
17
0
Merci
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
Commenter la réponse de jesusonline
Messages postés
26
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
16 janvier 2006
0
Merci
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 :)
Commenter la réponse de nicko59
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
17
0
Merci
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
Commenter la réponse de jesusonline
Messages postés
26
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
16 janvier 2006
0
Merci
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?
Commenter la réponse de nicko59
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
17
0
Merci
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
Commenter la réponse de jesusonline
Messages postés
26
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
16 janvier 2006
0
Merci
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
Commenter la réponse de nicko59
Messages postés
26
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
16 janvier 2006
0
Merci
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
Commenter la réponse de nicko59
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
17
0
Merci
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
Commenter la réponse de jesusonline
Messages postés
26
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
16 janvier 2006
0
Merci
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
Commenter la réponse de nicko59
Messages postés
426
Date d'inscription
mercredi 22 janvier 2003
Statut
Modérateur
Dernière intervention
13 juillet 2007
0
Merci
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
Commenter la réponse de cs_azra
Messages postés
26
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
16 janvier 2006
0
Merci
aaahh, ok, interessant ca!
merci azra.

et qu'a de plus interessant Visual Studio par rapport a dreamweaver?
Commenter la réponse de nicko59
Messages postés
426
Date d'inscription
mercredi 22 janvier 2003
Statut
Modérateur
Dernière intervention
13 juillet 2007
0
Merci
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
Commenter la réponse de cs_azra
Messages postés
26
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
16 janvier 2006
0
Merci
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!!
Commenter la réponse de nicko59
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
17
0
Merci
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
Commenter la réponse de jesusonline
Messages postés
26
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
16 janvier 2006
0
Merci
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!!!!!!
Commenter la réponse de nicko59
Messages postés
26
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
16 janvier 2006
0
Merci
ooopppsss, apparemment il n'a pas accepté les retrait et les couleurs..... c'est illisible!!!
Commenter la réponse de nicko59
Messages postés
26
Date d'inscription
mercredi 2 novembre 2005
Statut
Membre
Dernière intervention
16 janvier 2006
0
Merci
ooopppsss, apparemment il n'a pas accepté les retrait et les couleurs..... c'est illisible!!!
Commenter la réponse de nicko59