SharePoint 2010: Creación de KPIs (I)

SharePoint 2010 es sin duda una plataforma perfecta sobre la que añadir elementos que faciliten la toma de decisiones empresariales. Entre estos elementos que simplifican esta toma de decisiones, tenemos los indicadores claves de rendimientos más conocidos como KPIs que nos permiten de un sólo vistazo como de bien o mal estamos en aspectos claves para una organización. A la hora de crear KPIs en SharePoint 2010 tenemos varias posibilidades:

  • Mediante la DataFormWebPart y un poco de XSLT, de forma similar a lo que ya teníamos para SharePoint 2007:
  • Mediante SSRS 2008 R2 integrado con SharePoint 2010.
  • Utilizando los KPIs que de forma nativa incorpora SharePoint Server 2010.
  • Creando KPIs con PerformancePoint, capacidad sólo disponible en SharePoint Server 2010.

De todas las opciones que os he comentado, las dos primeras están disponibles tanto para SharePoint Foundation como para SharePoint Server 2010. En este primer post vamos a ver como podemos crear un KPI con la DataFormWebPart y un poco de XSLT:

  • Creamos una lista de ejemplo que nos permita modelar los KPIs.
  • Nos vamos a SharePoint Designer 2010 (SPD 2010) y creamos una página de WebParts en el sitio. En una de las zonas de la página, insertamos una vista de datos a través de la opción correspondiente de la Ribbon. Si la vista de datos se basa en una lista (como es el caso) se genera una XsltListViewWebPart. La eliminamos.
image image image
  • A través del panel “Detalles del origen de datos”, insertamos en la página los campos de la lista que nos interesan de forma que ahora si se genera una DataFormWebPart.

image

  • Añadimos una nueva columna a la vista de datos utilizando los menús visuales disponibles. En la vista de código de la página, buscamos el código que se ha generado para la DataFormWebPart y localizamos la sección en la que tenemos las columnas correspondientes a la cabecera de la vista de datos (etiqueta <th>). Añadimos una nueva línea de cabecera correspondiente a la nueva columna añadida y que identifica el KPI.
   1: <tr valign="top">

   2:     <xsl:if test="$dvt_1_automode = '1'" ddwrt:cf_ignore="1">

   3:         <th class="ms-vh" width="1%" nowrap="nowrap"></th>

   4:     </xsl:if>

   5:     <th class="ms-vh" nowrap="nowrap" style="text-align: center">Título</th>

   6:     <th class="ms-vh" nowrap="nowrap" style="text-align: center">Valor</th>

   7:     <th class="ms-vh" nowrap="nowrap" style="text-align: center">Objetivo</th>

   8:     <th class="ms-vh" nowrap="nowrap" style="text-align: center">Evolucion</th>

   9: </tr>

  • Lo siguiente que tenemos que hacer es localizar dentro del código de la DataFormWebPart la parte correspondiente a la generación dinámica de las celdas de contenido en base al origen de datos. Esta parte la podremos encontrar en una porción de código XSL identificado por <xsl:template name=”dvt_1.rowview”>. Si inspeccionamos el código XSL, podremos localizar como se están añadiendo los valores de cada fila de datos de la vista.
  • Siguiendo la misma filosofía, añadimos en la celda que identifica a nuestro KPI el código XSL que nos permita simular el KPI. En este caso, utilizaremos la etiqueta <xsl:choose> que nos permite bajo una cierta condición especificar el valor o imagen (en este caso) a mostrar).
   1: <xsl:template name="dvt_1.rowview">

   2:     <tr>

   3:         <xsl:if test="position() mod 2 = 1">

   4:             <xsl:attribute name="class">ms-alternating</xsl:attribute>

   5:         </xsl:if>

   6:         <xsl:if test="$dvt_1_automode = '1'" ddwrt:cf_ignore="1">

   7:             <td class="ms-vb" width="1%" nowrap="nowrap">

   8:                 <span ddwrt:amkeyfield="" ddwrt:amkeyvalue="ddwrt:EscapeDelims(string(''))" ddwrt:ammode="view"></span>

   9:             </td>

  10:         </xsl:if>

  11:         <td align="center" class="ms-vb">

  12:             <xsl:value-of select="@Title"/>

  13:         </td>

  14:         <td align="center" class="ms-vb">

  15:             <xsl:value-of select="@Valor"/>

  16:         </td>

  17:         <td align="center" class="ms-vb">

  18:             <xsl:value-of select="@Objetivo"/>

  19:         </td>

  20:         <td align="center" class="ms-vb">                

  21:  

  22:       <xsl:choose>

  23: <xsl:when test="number(@Valor) &gt;= number(@Objetivo)"><img src="/_layouts/images/Green_icon.png" alt="Vamos bien"></img></xsl:when><xsl:otherwise ><img src="/_layouts/images/Red_icon.png"  alt="Vamos mal"></img></xsl:otherwise>                   

  24: </xsl:choose>

  25:  

  26:     

  27:         </td>

  28:  

  29:     </tr>

  30: </xsl:template>

  • Finalmente, guardamos los cambios realizados hasta el momento y comprobamos en la visualización de la página que el KPI se genera de forma correcta.

 

image image

Y hasta aquí llega este primer post sobre creación de KPIs en SharePoint 2010.

SUGES & HISPAPOINT: Como migrar a SharePoint 2010 y no morir en el intento!

Migración a SharePoint 2010

Para comenzar el año, los grupos de usuarios de SharePoint de Costa Rica y España (SUGES) bajo el paraguas de la Comunidad de SharePoint de habla hispana (HISPAPOINT) os proponemos un webcast en el que se aprenderá sobre la migración  a SharePoint 2010, se analizaran las mejores prácticas así como los tipos de migración disponible en esta nueva versión, todo esto en conjunto con consejos y tips para llevar a cabo exitosamente un procedimiento de este tipo.

Datos de interés:

  • Audiencia: Information Workers, administradores de IT, desarrolladores.
  • Requisitos previos: Conocimientos de la plataforma SharePoint 2007.
  • Fecha: miércoles 12 de enero (hoy mismo Guiño).
  • Hora: 16:00 a 17:30 (Hora de España, UTC+1).
  • Ponente: Ricardo es Ingeniero en computación especialista en el área de tecnologías de información. Ha trabajado con tecnologías SharePoint por más de 5 años, implementando y desarrollando Intranets y Portales corporativos en importantes empresas de la región. Adicionalmente es un experto certificado en herramientas EPM (Enterprise Project Management) y Project Server para el manejo de proyectos empresariales. Actualmente es Consultor en Tecnologías  Microsoft y uno de los cofundadores y administrador de la Comunidad de SharePoint Costa Rica (https://ug.culminis.com/sites/CRC-SPS/default.aspx  )  así como miembro del Speaker Group de Microsoft CA .Desde este año es Instructor de Cursos Microsoft  en Centros Certificados Microsoft en Costa Rica. Desde 2008 ha sido MVP en SharePoint Server.
  • Enlace de inscripción: Pincha aquí.

Evento Migración SharePoint 2010