Propagando contenidos de listas entre diferentes sites

Buenas a todos.

Uno de los mayores problemas al trabajar con listas de SharePoint es el problema de la reutilización.

Cuando trabajamos en desarrollo normal ( lo cual no quiere decir que SharePoint sea anormal! … si no diferente ) una de las cosas que solemos hacer es preparar una serie de tablas de soporte que utilizaremos para ayudarnos a lo largo de la aplicación.

Por ejemplo, la típica tabla de países o idiomas que terminamos utilizando en casi el 60% de la aplicación.

En SharePoint reutilizar listas no ha sido una tarea sencilla hasta ahora, hace poco me preguntaban cual es el truco para hacer esto. Mi respuesta es sencilla. Publicar contenidos por medio de las columnas de sitio ( Site Columns ).

En el ejemplo de los países, si en una lista creásemos una columna de tipo Lookup apuntando a otra lista que contiene países obtendríamos el país para seleccionar … pero … qué pasaría si la lista de países no está en este mismo site, si no que está en un site de nivel inferior a este … o en otro site aunque esté a 10 niveles por debajo.

No podríamos acceder a los contenidos …

Vamos a seguir con este ejemplo de países para que veáis lo sencillo que es propagar la lista por todo el portal.

 

Lo primero que hacemos es crearnos una lista ( Custom List ) en el Site Principal ( Site Collection ) y la llamamos ‘Países’.

Una vez creada la lista la rellenamos con los países que deseemos que sean públicos a lo largo de todo el portal.

 

Bien, ya tenemos nuestra tabla de ‘soporte’ como teníamos cuando desarrollábamos con bases de datos y no con SharePoint. ( Por cierto, esta misma solución se podría hacer con Bussiness Data Connection! … pero ahí tengo material para otro post que os tengo muy abandonados 😛 ).

Vamos a crearnos una columna de Sitio ( Site Column ) que nos permita propagar este contenido.

Para ello vamos a la página de Configuraciones del Site Collection y en la sección de Galleries seleccionamos Columnas de Sitio ( Site Columns ).

Una vez en la galería de Columnas de Sitio ( Site Column Gallery ) vamos a crear una nueva columna de sitio con el nombre País, tipo LookUp. En la lista de contenidos seleccionamos ‘Países’ ( que es la lista que hemos creado anteriormente y desde la cual vamos a mantener nuestro repositorio de países para todo el portal ) y en el nombre de columna seleccionamos ‘Título’ ( Title ).

En caso de que queramos que esta columna se comporte de forma multiselección solo tendríamos que seleccionar el check ‘Allow multiple values’ ( Permitir múltiples valores ). Y aceptamos la creación.

Bueno, la propagación ya la tenemos preparada. Ahora solo queda reutilizar estos valores a lo largo del portal.

Vamos a crearnos un nuevo site y una lista de contactos a la que vamos a agregar nuestra columna de países para seleccionar.

Para ello, una vez creada la lista entramos en la configuración y pulsamos en ‘Agregar de Columnas de Sitio Existentes’ ( Add from existing site columns ). De la lista de las columnas que tenemos seleccionamos País para agregarla a la lista. y Pulsamos en aceptar.

Bien, pues ya tenemos la lista preparada para hacer uso de nuestra lista ‘Maestra’ de países. Si agregamos un nuevo contacto, al final del formulario podréis ver como aparece un desplegable que os muestra la lista de países que hemos configurado.

Esta es una manera sencilla de poder reutilizar contenido de un site en otro sin tener que hacer complejos flujos de trabajo que mantengan el mismo contenido en diferentes listas.

Espero que os sirva de ayuda!

Un Saludo!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *