Hace poco implemente Drop Down List utilizando SPServices una opción para poder desarrollar combos encadenados del tipo (pais, ciudad, provincia)
Primero y antes que nada es necesario descargarse las bibliotecas .js de http://spservices.codeplex.com/ (gracias codeplex!!!)
1.- Hacer referencia a las bibliotecas javascript desde la MasterPage o como opcion en el mismo formulario en donde vamos a desarrollar los combos (NewForm.aspx, EditForm.aspx)
2.- Suponiendo que tenemos 3 listas en donde
Lista "nro1" = "pais" en donde tenemos solo usamos una sola columna la del "titulo" para escribir el nombre de los distintos paises
Lista "nro2" = "provincia" en donde tenemos dos columnas
-en la columna "titulo" el nombre de la provincias
-la otra de tipo lookup llamada "paises" haremos una busqueda en el titulo de la lista creada anteriormente (lista "pais")
Lista "nro3" = "ciudad" en donde tenemos tres columnas
-en la columna "titulo" el nombre de la ciudades
-la otra de tipo lookup llamada "provincias" haremos una busqueda en el titulo de la lista creada anteriormente (lista "provincia")
-la tercera columna vamos a hacerla de tipo eleccion llamada "activa" en donde damos la opcion de seleccionar si o no
3) el codigo! Es importante ponerlo en el NewForm.aspx o en el editForm.aspx de la lista a crear en nuestro caso vamos a llamarla listaFinal en la cual tendremos 3 columnas de tipo LookUp
ListaFinal:
1er columna = Pais_listaFinal (lookup a la lista pais)
2da columna = Provincia_listaFinal (lookup a la lista provincia)
3era columna = Ciudad_listaFinal (lookup a la lista ciudad)
<script language="javascript" type="text/javascript" src="../../jQuery%20Libraries/jquery-1.4.2.js"></script>
<script language="javascript" type="text/javascript" src="../../jQuery%20Libraries/jquery.SPServices-0.5.7.min.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function() {
$().SPServices.SPCascadeDropdowns({
//el nombre de la lista que hacemos relacion
relationshipList: "provincia",
//el nombre de la columna padre
relationshipListParentColumn: "pais",
//el nombre de la columna con el texto a mostrar en el combo
relationshipListChildColumn: "Title",
//el nombre a filtrar en nuestra lista
parentColumn: "Pais_listaFinal",
//el nombre de la columna en donde volcamos el resultado del filtro
childColumn: "Provincia_listaFinal",
//debug: true!! es importante si quieren detectar errores por defecto es false si se quita
debug: true
});
$().SPServices.SPCascadeDropdowns({
relationshipList: "ciudad",
relationshipListParentColumn: "provincia",
relationshipListChildColumn: "title",
relationshipListSortColumn: "title",
parentColumn: "Provincia_listaFinal",
childColumn: "Ciudad_listaFinal,"
//texto combo
promptText: "Seleccione una Ciudad...",
//Filtro por activa = 'si' CAMLQuery: "<Eq><FieldRef Name='activa'/><Value Type='Text'>si</Value></Eq>"
});
});
</script>
4.- Consejos - Es muy importante tener en cuanta todas las mayusculas y minusculas ya que es case-sensitive - Es muy importante si usan la columna "titulo" como en este ej. cuando la referencien en el codigo usen "Title"
Espero que les sea de gran ayuda cualquier duda consulten sino la documentación original en ingles esta en el link. Queria compartir mi experiencia con ustedes en castellanohttp://spservices.codeplex.com/ 
0 comentarios:
Publicar un comentario en la entrada