Construyendo un Dataview WebPart para un Banner con contenido dinámico

Existen múltiples maneras de crear banners en SharePoint haciendo uso de variados ejemplos con jquery o javascript que podemos encontrar en Internet.

Construir un Dataview que sea empleado para el banner dinámico puede resultar sencillo si lo único que vamos a mostrar en este es una imagen que irá rotando. Sin embargo, algunos requerimientos comunes es que el banner no solo contenga imágenes que aparezcan dinámicamente, sino también texto que pueda ser modificado a demanda.

Para esto primero necesitamos armar el HTML para el Banner dinámico, algo como este diseño:

A continuación, este HTML lo podemos insertar como el contenido de nuestro Dataview WebPart, ubicamos como ya sabemos la sección <xsl:template name=»dvt_1.rowview» > y aquí insertamos el contenido para después reemplazar las secciones de texto e imágenes por los campos de nuestra lista.

Para que la imagen de fondo sea dinámica y consulte a uno de los campos de nuestra lista deberemos insertar un atributo mediante XSLT tal y como se muestra en la siguiente imagen:

En vez de especificar directamente el atributo background-image dentro de nuestra etiqueta HTML, a continuación de nuestra etiqueta especificamos lo siguiente:

<xsl:attribute name=»style»>background-image:url(‘<xsl:value-of select=»@Imagen» />’)</xsl:attribute>

Y listo, el Dataview esta terminado. Ahora solo debemos insertar el javascript o jquery de nuestra preferencia para dar el efecto de Slider.

 

Mostrando el usuario actual desde un Dataview WebPart

Un requerimiento típico cuando implementamos una Intranet es el de dar un mensaje de bienvenida al usuario actualmente logueado.

Pues para lograr este requerimiento podríamos emplear distintos métodos: Incrustar código Javascript para capturar el usuario actual y mostrarlo en un DIV, desarrollar un WebPart que utilice el modelo de objetos de SharePoint o una manera mas sencilla y rápida, crear un Dataview WebPart que en su contenido muestre al usuario actual.

La tercera alternativa es la propuesta que doy para reducir el tiempo de implementación de este requerimiento.

A continuación los pasos:

1. Crear una página .aspx donde insertaremos nuestro DataView.

2. Insertar un Dataview asociado a una lista donde se encuentre información que queramos mostrar adicionalmente al user name del usuario actual.

3. Ubicar la sección donde se agregarán los parámetros tal y como se muestra en la siguiente imagen:

Ubicar la sección <xsl:decimal-format NaN=»» /> y a continuación se verán algunos parámetros especificados por defecto. Después del último parámetro agregar lo siguiente:

<xsl:param name=»UserID» />.

4. Finalmente ubicar la sección donde insertaremos el contenido tal y como se muestra en la imagen:

Ubicar la sección <xsl:template name=»dvt_1.rowview» /> , borrar el contenido que se encuentra dentro y modificarlo según el contenido que deseemos. Incorporar aquí lo siguiente para mostrar el nombre del usuario actual:

<xsl:value-of select=»$UserID» />.

Y Finalmente el resultado esperado: