Voila j'essaye en vain depuis 2 jours d'utiliser l'objet dictionary ...
Je me demandai si les clé attribuer à ces tableaux associatifs pouvaient etre numérique ?
Voila j'essaye en vain depuis 2 jours d'utiliser l'objet dictionary ...
Je me demandai si les clé attribuer à ces tableaux associatifs pouvaient etre numérique ?
une illustration par un bout de code qui fonctionne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Dim oDic : Set oDic = server.CreateObject("Scripting.Dictionary") oDic.Add "a", " a a a a a" oDic.Add 12, "test sur valeur numérique" oDic.Add "c", "c c c c c " Response.Write oDic(12)
tu n'as pas initialisé la valeur de i à 0 avant d'entrer dans la boucle
vla le mien :
J'vois plus trés bien là ...
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 <% 'Ici la déclaration Dim oDict, aItems, x, i Set oDict = Server.CreateObject("Scripting.Dictionary") oDict.CompareMode = VBBinaryCompare 'Liste des référents responsables de l'activité Set Rs_referent = Server.CreateObject("ADODB.Recordset") qry_referent="exec sp_liste_pi_activite_user @id_activite="&Rs.fields("id_activite") Rs_referent.Open qry_referent, conn WHILE not Rs_referent.eof %> 'Ici l'affectation <% oDict.Add i, Rs_referent.fields("id_user") %> <tr> <td><% response.write(Rs_referent.fields("Nom") & " " & Rs_referent.fields("Prenom"))%></td> <td><a href="#" onClick="SupReferent(<%=Rs.fields("id_activite")%>,<%=Rs_referent.fields("id_user")%>);">Supprimer</a></td> </tr> <% Rs_referent.movenext i = i + 1 Wend 'Ici on met tout dans un tableau aItems = oDict.Items Set oDict = Nothing for x=0 to Ubound(aItems) response.Write aItems(x) & "<br>" ->Une exception s'est produite.(l'erreur que l'on me renvoi next Rs_referent.close set Rs_referent=nothing %>![]()
j'ai localisé l'erreur ... mais je ne comprends tjs pas pourquoi ca ne fonctionne pas ...![]()
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 aItems = oDict.Items <--- cela ne fonctionne pas response.Write(Ubound(aItems)) <-- ici il affiche 0 response.Write(oDict.count) <-- ici il affiche 1
as-tu bien lu mon précédent post?
Assures-toi que
1/i est bien initialisé à 0
2/que ton recordset n'est pas vide
sinon pour ton erreur initiale
c'est normal qu'il y ait une erreur car la cle 0 n'existe pas. Dans le cas où
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 for x=0 to Ubound(aItems) response.Write aItems(x) & "<br>" ->Une exception s'est produite.(l'erreur que l'on me renvoi next
le recordset n'est pas vide la première clef vaut empty et si tu fais
il te renverra bien une valeur pour cette cle
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <%=tonDico(empty)%>
Partager