Objeto dictionary

09/03/2008 - 17:31 por Alfonso | Informe spam
Hola:
Tengo este codigo que no me funciona cuando leo los valores:

set objProvincias = Server.CreateObject("Scripting.Dictionary")

set objMunicipios01 = Server.CreateObject("Scripting.Dictionary")
objMunicipios01.Add 0014,"Alegría-Dulantzi"
objMunicipios01.Add 0029,"Amurrio"
objMunicipios01.Add 0493,"Añana"
objMunicipios01.Add 0035,"Aramaio"
objMunicipios01.Add 0066,"Armiñón"
objMunicipios01.Add 0376,"Arraia-Maeztu"
objMunicipios01.Add 0088,"Arrazua-Ubarrundia"

set objMunicipios02 = Server.CreateObject("Scripting.Dictionary")
objMunicipios02.add 0019, "Abengibre"
objMunicipios02.add 0024, "Alatoz"
objMunicipios02.add 0030, "Albacete"
objMunicipios02.add 0045, "Albatana"
objMunicipios02.add 0058, "Alborea"
objMunicipios02.add 0061, "Alcadozo"
objMunicipios02.add 0077, "Alcalá del Júcar"

objProvincias.Add 1,objMunicipios01
objProvincias.Add 2,objMunicipios02

hasta aqui funciona bien pero no se como se hace para que me devuelva
el nombre de la provincia


set objPueblos = Server.CreateObject("Scripting.Dictionary")

For each clave in objProvincias
response.write ("<b>"& clave &"</b><br>")
objPueblos=objProvincias.Item(clave)
Next

Sabreis como puedo acceder al nombre y al codigo del pueblo.

Gracias

Saludos
 

Leer las respuestas

#1 Matias Iacono
01/04/2008 - 14:40 | Informe spam
Lo que estas haciendo es colocar un objeto dentro de otro objeto.

Basicamente lo que necesitas es hacer otro for each dentro de tu for each
inicial que recorra cada uno de los items retornados por la primer coleccion.

For each clave in objProvincias
response.write ("<b>"& clave &"</b><br>")
objPueblos=objProvincias.Item(clave)
for each clave2 in objPueblos
response.write ("<b>"& clave2 &"</b><br>")
response.write(objPueblos.Item(clave2))
next
Next

Simplemente estas recuperando los mismos objetos que colocaste en el
diccionario principal.

DiccionarioPrincipal
Diccionario1
Dato
...
...
Diccionario2
Dato
...
...

Lo que estas armando al principio es un arbol como el que te planteo antes.

Saludos.



Matías Iacono
Microsoft MVP
Orador Regional INETA
http://mvpfiles.spaces.live.com


"Alfonso" wrote:

Hola:
Tengo este codigo que no me funciona cuando leo los valores:

set objProvincias = Server.CreateObject("Scripting.Dictionary")

set objMunicipios01 = Server.CreateObject("Scripting.Dictionary")
objMunicipios01.Add 0014,"Alegría-Dulantzi"
objMunicipios01.Add 0029,"Amurrio"
objMunicipios01.Add 0493,"Añana"
objMunicipios01.Add 0035,"Aramaio"
objMunicipios01.Add 0066,"Armiñón"
objMunicipios01.Add 0376,"Arraia-Maeztu"
objMunicipios01.Add 0088,"Arrazua-Ubarrundia"

set objMunicipios02 = Server.CreateObject("Scripting.Dictionary")
objMunicipios02.add 0019, "Abengibre"
objMunicipios02.add 0024, "Alatoz"
objMunicipios02.add 0030, "Albacete"
objMunicipios02.add 0045, "Albatana"
objMunicipios02.add 0058, "Alborea"
objMunicipios02.add 0061, "Alcadozo"
objMunicipios02.add 0077, "Alcalá del Júcar"

objProvincias.Add 1,objMunicipios01
objProvincias.Add 2,objMunicipios02

hasta aqui funciona bien pero no se como se hace para que me devuelva
el nombre de la provincia


set objPueblos = Server.CreateObject("Scripting.Dictionary")

For each clave in objProvincias
response.write ("<b>"& clave &"</b><br>")
objPueblos=objProvincias.Item(clave)
Next

Sabreis como puedo acceder al nombre y al codigo del pueblo.

Gracias

Saludos


Preguntas similares