Bonjour à tous.
Je tombe sur une truc incompréhensible : 2 codes quasiment identiques mais je ne comprends pas pourquoi le 2ème ne fonctionne pas.
Voici le code que j'utilise et qui fonctionne nickel
Le code ci-dessus me renvoi bien WFichierXML à true puisque le fichier existe bel et bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 function Recup_Valeurs_Vols(P_Annee, P_Mois, P_Jour) { WNomFichierXML = ""; WNomFichierXML2 = ""; var WNoeud_DATE = "VOLS/DATES/LISTE/*"; var WNoeud_NbTraj = "VOLS/DATES/LISTE/J" + P_Annee + P_Mois + P_Jour + "/NB_TRAJ"; var WNoeud_TotTraj = "VOLS/DATES/LISTE/J" + P_Annee + P_Mois + P_Jour + "/TOT_TRAJ"; WFirFabec = window.Form_CARPEDIEM.C_Fabec.checked; var XML_Vols = new ActiveXObject("Microsoft.xmldom"); XML_Vols.async = false; WNomFichierXML = G_RepXML + "Vols_" + P_Annee + ".xml"; WFichierXML = XML_Vols.load(WNomFichierXML); WFichierXML2 = XML_Vols.load(WNomFichierXML2); alert(WNomFichierXML + " --- "+ WFichierXML + G_CrLf + WNomFichierXML2 + " --- "+ WFichierXML2); if (WFichierXML == true) { WIndex = 0; var WTotal = XML_Vols.selectNodes(WNoeud_DATE).length; WDate = new String(P_Annee + P_Mois + P_Jour); WNode = XML_Vols.selectSingleNode("VOLS/DATES/LISTE/J" + WDate); if (WNode != null) { WNbTraj = XML_Vols.selectNodes("VOLS/DATES/LISTE/J" + WDate + "/NB_TRAJ").item(0).text; WTotTraj = XML_Vols.selectNodes("VOLS/DATES/LISTE/J" + WDate + "/TOT_TRAJ").item(0).text; } else { WNbTraj = "Data not available" WTotTraj = "Data not available" }; } else { WNbTraj = "NOK" WTotTraj = "NOK" }; }
Par contre, j'utilise le code suivant, plus rien ne fonctionne.
A noter que la seule différence est l'ajout du test "if (WFirFabec)" et rien d'autre.
Je n'ai plus rien qui fonctionne et les 2 variables WFichierXML et WFichierXML2 sont à false.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 function Recup_Valeurs_Vols(P_Annee, P_Mois, P_Jour) { WNomFichierXML = ""; WNomFichierXML2 = ""; var WNoeud_DATE = "VOLS/DATES/LISTE/*"; var WNoeud_NbTraj = "VOLS/DATES/LISTE/J" + P_Annee + P_Mois + P_Jour + "/NB_TRAJ"; var WNoeud_TotTraj = "VOLS/DATES/LISTE/J" + P_Annee + P_Mois + P_Jour + "/TOT_TRAJ"; WFirFabec = window.Form_CARPEDIEM.C_Fabec.checked; if (WFirFabec) { WNomFichierXML2 = G_RepXML + "Vols_FABEC_" + P_Annee + ".xml"; } else { WNomFichierXML2 = G_RepXML + "Vols_FRANCE_" + P_Annee + ".xml"; }; var XML_Vols = new ActiveXObject("Microsoft.xmldom"); XML_Vols.async = false; WNomFichierXML = G_RepXML + "Vols_" + P_Annee + ".xml"; WFichierXML = XML_Vols.load(WNomFichierXML); WFichierXML2 = XML_Vols.load(WNomFichierXML2); alert(WNomFichierXML + " --- "+ WFichierXML + G_CrLf + WNomFichierXML2 + " --- "+ WFichierXML2); if (WFichierXML == true) { WIndex = 0; var WTotal = XML_Vols.selectNodes(WNoeud_DATE).length; WDate = new String(P_Annee + P_Mois + P_Jour); WNode = XML_Vols.selectSingleNode("VOLS/DATES/LISTE/J" + WDate); if (WNode != null) { WNbTraj = XML_Vols.selectNodes("VOLS/DATES/LISTE/J" + WDate + "/NB_TRAJ").item(0).text; WTotTraj = XML_Vols.selectNodes("VOLS/DATES/LISTE/J" + WDate + "/TOT_TRAJ").item(0).text; } else { WNbTraj = "Data not available" WTotTraj = "Data not available" }; } else { WNbTraj = "NOK" WTotTraj = "NOK" }; }
Donc le simple fait d'ajouter ces lignes fait que le fichier n'est plus trouvé.
Pourtant le nom des fichiers XML à utiliser à changer et à la place de "Vols_2011.xml", il faut maintenant que j'utilise "Vols_FRANCE_2011.xml".
Je ne comprends pas ce qui ne fonctionne pas.
Merci d'avance pour votre aide.
Partager