Los manejadores de eventos constituyen una de las funcionalidades más sencillas de utilizar a la hora de extender nuestras aplicaciones de SharePoint a través del desarrollo. Básicamente permiten agregar comportamiento a nuestra aplicación e implementar reglas de negocio.
Este post pretender describir todos los aspectos de esta técnica, desde la parte conceptual hasta la parte de código con algunos ejemplos en Visual Studio. Está basado en el webcast que dicté el 16/12/2009. Como siempre, espero que les sea útil.

WebCast

Si desean ver el webcast, pueden hacerlo desde:

Si desean ver la presentación que utilicé en el webcast pueden verla aquí:

Introducción

Los manejadores de eventos permiten extender a través de desarrollo una aplicación SharePoint. Agregan comportamiento a listas e ítems entre otros. Un manejador de evento se ejecuta automáticamente como respuesta a un evento como agregar una columna en una lista o modificar un ítem en una lista. Pueden servir para:

  • Validaciones de datos
  • Control de integridad referencial
  • Control de unicidad
  • Ejecución de procesos de negocio
  • Lo que no puede resolver un campo calculado
  • Protección de la parametrización
  • Cambios en la seguridad
  • Controles de seguridad funcional

Si conocen triggers de base de datos, verán que tienen un cierto parecido. Si bien son más potentes, podríamos decir que todo lo que se hace con un trigger, puede hacerse con un evento en SharePoint. Esto puede darles una idea del potencial de esta técnica.

¿Qué eventos maneja SharePoint?

El siguiente gráfico resume los eventos soportados por SP. Pueden observar que existen eventos a nivel de ítems de lista (los que se parecen a los triggers), pero también eventos a nivel de lista, sitio, colección de sitio o característica:
image

Imaginen lo que se puede hacer…

A continuación les daré algunas ideas de lo que se puede hacer con eventos. Son sólo ideas. Es mucho más lo que se puede hacer, pero les servirá de inspiración. Lo importante es que realmente resuelven temas que no existen en SP “out of the box”, en forma bastante sencilla:
image

Tipos de eventos ¿antes o después? ¿sincrónicos o a-sincrónicos?

Es importante aclarar que existen dos tipos de eventos, los que se ejecutan antes de que se efectúe el “commit” de la transacción en la base de datos de contenido y los que se disparan luego de que se ejecute el “commit”. Los primeros son sincrónicos, los segundos a-sincrónicos (en SP 2007, en 2010 es configurable).
image
El siguiente es el mapa completo de todos los eventos que SP 2007 maneja, incluye sus variantes sincrónicas y a-sincrónicas:
image

Evento o Flujo de Trabajo

Por sugerencia de Angel Acha Lizama luego del webcast, me pareció importante incluir una breve comparación entre Eventos y Flujos de trabajo porque son técnicas que tienen algún punto en común y el lector podría encontrar difícil la decisión de cuál usar en cada caso.
En líneas generales tengan en cuenta que un flujo de trabajo suele tener interacción con los usuarios a través de pantallas, puede perdurar en el tiempo (días, semanas, meses, etc.) y requiere persistir la información.
Un evento responde a una transacción y se ejecuta en el momento, no tiene pantallas asociadas, su duración es breve y no debe ser retomado luego de un tiempo, como sucede con un flujo de trabajo.
Les dejo este enlace que me pasó Angel, si quieren ampliar el tema: http://msdn.microsoft.com/en-us/library/ee413841.aspx

Pasos para crear un evento

La siguiente lámina muestras los pasos que se deben seguir para crear un evento. No estamos usando ninguna herramienta, ni extensión para SharePoint que nos facilite la creación, con el fin de explicar los conceptos básicos.
image

Paso 1: crear el proyecto

Si necesitan ayuda con este paso, les dejo este enlace que lo explica en forma detallada: http://sharepoint-puntodeencuentro.blogspot.com/2008/09/registrar-un-evento-mediante-una.html

Paso 2: definición de una clase

Ejemplo muy sencillo de definición de clase, cuyo objetivo es impedir que un administrador agregue columnas en una lista:
image

Paso 3: binding

Existen dos formas de vincular la definición de una clase de un evento a una entidad (lista, característica, etc): 1) a través de XML dentro de una característica y 2) programáticamente. Estas dos formas apuntan a objetivos distintos. A continuación veremos dos ejemplos:

Binding XML
image


Observaciones

  • Sólo pueden registrarse en características cuyo ámbito sea «site».
  • Sólo se puede registrar el evento para un «tipo de lista», no para una lista en particular.
  • También se puede registrar eventos para tipos de contenidos o features.
  • «SequenceNumber» indica el órden cuándo tengo más de un evento.
Binding en forma programática

A diferencia de la opción vía XML, nos permite vincular un evento a una lista específica, en lugar de a un tipo de lista. Ejemplo:

image

Demostraciones

A continuación dejamos el código fuente de las demostraciones que presentamos en el webcast. Tengan en cuenta que se trata de un prototipo, no una aplicación final, por lo cual nos hemos tomados algunas licencias para escribir código y notarán algunas desprolijidades.

Demo 1: completando una columna en un evento de ítem

Este ejemplo muestra como completar un campo dentro de un evento. En el código pueden ver dos ejemplo, un caso común para el campo “Proyecto” y otro para un campo de tipo URL, el campo “Actividad”.

image 

Demo 2: validando integridad en un evento de ítem

El siguiente ejemplo muestra cómo validar “unicidad” de una columna y cancelar la operación, emitiendo un mensaje al usuario, en caso que no se cumpla esta restricción.

imageimage 

image 

Demo 3: ejecutando un proceso de negocio en un evento de ítem

Este ejemplo muestra cómo a partir de la creación de un ítem, se dispara la creación de ítems en otra lista. Muestra cómo se leen los datos de la lista origen, cómo se recorren esos datos y como se crean los ítems en la lista destino.

imageimage image

Demo 4: ejecutando un evento al instalar una característica

Este último ejemplo nos muestra un ejemplo de evento para una característica. El objetivo es hacer cambios de estilos en SharePoint. Para una explicación más amplia pueden consultar este enlace: http://surpoint.blogspot.com/2009/07/cambios-de-estilos-en-sharepoint.html.

image

Paso 4: instalar

No voy a bajar a detalle con este paso, pero quería dejarles el contenido del .”bat” en dónde se muestra la instalación de la dll en la GAC, el copiado de los archivos XML y la instalación de la característica en SharePoint:

image

SharePoint 2010

El siguiente gráfico resume las novedades en SharePoint 2010 respecto a eventos. Lo más importante es saber que hay algunos eventos nuevos, pero fundamentalmente que los eventos “before” pueden ser sincrónicos o a-sincrónicos. Al final de este artículo les dejo un enlace por si necesitan ampliar este tema.

image

Un tema relacionado que no debemos dejar pasar es que SP 2010 agrega el concepto de validación de campos “Out of the box”. Esto es mucho más sencillo de usar que programar un evento para validar de datos. La validación se arma con fórmulas similares a la de los campos calculados y es posible especificar el mensaje de error para el usuario. Estas validaciones se pueden crear a nivel de columnas de sitio, o columnas dentro de una lista.

image

Fin

Aquí termino. Espero que les haya sido útil y lo hayan disfrutado. Hasta la próxima!

Bibliografía y enlaces interesantes

image Libros

  • Inside Microsoft Windows SharePoint Services 3.0 (Chapter 6)
  • By Ted Pattisonand & Daniel Larson (Microsoft Press)

Artículos

por Juan Pablo Pussacq Laborde , el 17.12.09 0 comentarios

Click on pen to Use a Highlighter on this page
Tagged with:
 

1. Agregar la Solucion ArchivoWSP
stsadm -o addsolution -filename {ArchivoWSP}
2. Deploy the solution
stsadm -o deploysolution -name {ArchivoWSP} -url {URLDELSITIO}
3. Instalar la Caracteristica (feature)
stsadm -o installfeature -filename {CARPETADELACARACTERISTICA}\feature.xml
4. Activar la Caracteristica (feature)
stsadm -o activatefeature -id {IDCARACTERISTICA} -url {URLSITIO} -force
5. Desactivar la Caracteristica (feature)
Stsadm.exe -o deactivatefeature -filename “C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\FEATURES\{CARPETADELACARACTERISTICA}\feature.xml” -ur http://servername/
6.Desintalar la Caracteristica (feature)
stsadm -o uninstallfeature -filename
7.Retractar la Solucion
stsadm -o retractsolution

-name

[-url]

[-allcontenturls]

[-time]

[-immediate]
8.Eliminar Solucion
stsadm -o deletesolution

Click on pen to Use a Highlighter on this page
Tagged with:
 
Descripción rápida
El complemento Microsoft SQL Server 2005 Reporting Services para las tecnologías de Microsoft SharePoint es una descarga de Web que proporciona las características necesarias para ejecutar un servidor de informes en una implementación más amplia de Windows SharePoint Services 3.0 o Microsoft Office SharePoint Server 2007.

Información general

Microsoft SQL Server 2005 Reporting Services para las tecnologías de SharePoint (complemento Reporting Services) permite aprovechar las capacidades de administración y procesamiento de informes del SP2 de SQL Server 2005 en Windows SharePoint Services 3.0 o Microsoft Office SharePoint Server 2007. La descarga proporciona esta funcionalidad:

  • Un elemento Web Visor de informes que permite ver informes, exportar a otros formatos de representación, explorar páginas, buscar, imprimir y aplicar zoom.
  • Páginas de aplicación Web para crear suscripciones y programaciones, y administrar informes, modelos y orígenes de datos.
  • Compatibilidad con el uso de características estándar de Windows SharePoint Services, incluidas la administración de documentos, la colaboración, la seguridad y la implementación con los tipos de contenido del servidor de informes.

El complemento Reporting Services funciona junto con el SP2, necesario para el servidor de informes. El SP2 proporciona la siguiente funcionalidad para un servidor de informes configurado para el modo integrado de SharePoint:

  • Sincronización de la base de datos de contenido de SharePoint con la base de datos del servidor de informes.
  • Una extensión de seguridad personalizada que usa permisos de SharePoint para controlar el acceso a las operaciones del servidor de informes.
  • Una extensión de entrega nueva que puede usar en las suscripciones para entregar informes a las bibliotecas de SharePoint.
  • Una herramienta de configuración de Reporting Services revisada que puede usar para configurar un servidor de informes para las operaciones integradas de SharePoint.
  • Un extremo SOAP nuevo para administrar el contenido del servidor de informes en el modo integrado de SharePoint.

Advertencia: requiere el boletín de seguridad de Microsoft MS08-052
Para usar esta versión del complemento Reporting Services, la implementación del servidor SQL Server Reporting Services usada junto con el complemento Reporting Services debe revisarse con las actualizaciones enumeradas en la sección Microsoft SQL Server en el boletín de seguridad de Microsoft MS08-052

Advertencia: no se permite la actualización automática
Las versiones preliminares (CTP) del complemento Reporting Services no pueden actualizarse a esta versión de lanzamiento.

 Principio de página

Requisitos del sistema

  • Sistemas operativos compatibles: Windows Server 2003 Service Pack 1
  • Microsoft .NET Framework 3.0.
  • 40 MB de espacio disponible en disco duro.
  • 2 gigabytes de RAM.

El equipo debe cumplir los siguientes requisitos de software:

  • Microsoft Office SharePoint Server 2007 o Windows SharePoint Services 2007 con Compatibilidad con programación de .NET.
  • Microsoft Windows Server 2003 con los Service Pack más recientes (sólo x86), configurado para ejecutarse como un servidor de aplicaciones con ASP.NET 2.0 habilitado.
  • SP2 de SQL Server 2005 Reporting Services. (Las ediciones de SQL Server compatibles son Standard, Evaluation, Developer y Enterprise. La integración del servidor no es compatible con la versión Workgroup Edition de Reporting Services o SQL Server 2005 Express con Advanced Services.)
  • SP2 de SQL Server 2005 Reporting Services se debe revisar con las actualizaciones que se enumeran en Microsoft SQL Server en el boletín de seguridad de Microsoft MS08-052
  • Windows SharePoint Services 3.0 u Office SharePoint Server 2007. El complemento Reporting Services no es compatible con versiones anteriores de Windows SharePoint Services.
  • Los sitios Web no se pueden habilitar para el acceso anónimo.
  • Microsoft Internet Explorer 6.0 con SP2 o posterior. Se recomienda encarecidamente Microsoft Internet Explorer 7.0.

 Principio de página

Instrucciones

Puede instalar o configurar los servidores en cualquier orden, pero las operaciones integradas sólo estarán disponibles cuando se hayan completado los pasos de configuración en los dos servidores. Para obtener información detallada acerca de los pasos de la instalación, vea el archivo Léame del complemento Reporting Services.

    Paso 1: instalar una instancia de la tecnología de SharePoint.

    Paso 2: instalar Reporting Services, aplicar Service Pack 2 de SQL Server 2005 y aplicar actualizaciones que se enumeran en Microsoft SQL Server en el boletín de seguridad de Microsoft MS08-052.

    Paso 3: configurar Reporting Services.

    Paso 4: descargar el complemento Reporting Services haciendo clic en el vínculo SharePointRS.msi, más adelante en esta página. Para iniciar la instalación inmediatamente, haga clic en Ejecutar. Para instalar en otro momento, haga clic en Guardar.

    Paso 5: instalar el complemento Reporting Services y configurar el servidor de informes en la instancia de la tecnología de SharePoint.

    Paso 6: establecer permisos y agregar tipos de contenido de Reporting Services.

    Paso 7: comprobar la instalación.

Click on pen to Use a Highlighter on this page
Tagged with:
 
Integración de Reporting Services con SharePoint (I)

Articulos

Articulo de Pablo Sousa Lastra sobre Reporting Services y SharePoint 2007
Autor: Pablo Sousa Lastra
Nota: Articulo de Pablo Sousa Lastra publicado en el Blog del Centro de Innovacion en Integracion – CIIN.En este post vamos a explicar los pasos a seguir para la instalación y el uso de Microsoft SQL Server 2005 Reporting Services en sitios SharePoint, ya sean WSS 3.0 o MOSS. Esta configuración la conseguimos gracias a que Microsoft ha publicado recientemente la versión definitiva del Service Pack 2 de SQL Server que entre una de sus muchas novedades, habilita dentro de la configuración del Reporting Services una nueva opción para poderlo integrar con sitios SharePoint y a los también publicados Add-in de SQL Server 2005 Reporting Services para SharePoint, que nos incluyen:

· Dos Web Part, Report Explorer y Report Viewer que nos permiten visualizar informes, exportarlos con otros formatos, imprimir y realizar zoom
· Tres content types, Report Builder Model, Report Builder Report y Report Data Source con las que podemos diseñarnos informes desde el propio SharePoint conociendo el origen de los datos
· Nuevas opciones en la administración central de SharePoint para administrar el acceso y la seguridad al servidor de Reporting Services

Antes de empezar a configurar el servidor de Reporting Services y el de SharePoint, tenemos que estar seguro de que nuestro escenario tengamos instalados todos estos componentes:

· SQL Server 2005 Reporting Services
· SQL Server 2005 Service Pack 2
· Office SharePoint Server 2007 ó Windows SharePoint Services 3.0
· Microsoft SQL Server 2005 Reporting Services Add-in for Microsoft SharePoint Technologies

Configuración del servidor de Reporting Services

Lo primero que vamos a realizar es la configuración del servidor de Reporting Services para poderlo integrar con sitios SharePoint. Para ello vamos a realizar los siguientes pasos:

· Configurar los parámetros del IIS para definir un sitio web en el que alojar los Reporting Services

   · Accedemos a la administración del IIS
   · Normalmente, veremos que el Default Web Site está parado, ya que SharePoint utiliza el puerto 80 en un sitio web diferente y deshabilita este sitio, por eso vamos modificarle especificando un puerto diferente, ej. 8080, y después lo habilitamos para que así esté disponible en la configuración de Reporting Services

· Vamos a la pantalla de administración de Reporting Services pulsando sobre Start à All Programs à Microsoft SQL 2005 à Configuration Tools à Reporting Services Configurations
· El primer paso que realizamos para la configuración es entrar en la opción de Report Server Virtual Directory y crear un nuevo directorio virtual en nuestro sitio web, seleccionando el Default Web Site y estableciendo un nombre del directorio virtual, por defecto ReportServer

· Después pulsamos sobre la opción Database Setup para crear una nueva base de datos de Reporting Services y la vinculamos con nuestro sitio SharePoint realizando los siguientes pasos:

   · Seleccionamos el servidor SQL Server donde queramos guardar la base de datos
   · Pulsamos sobre New para crear esta base de datos, especificamos las credenciales con permisos necesarios en el SQL Server para crear bases de datos y establecemos un nombre a la base de datos, ReportServer
   · Por último seleccionamos la opción Create the report server database in SharePoint integrated mode para integrarlo con SharePoint y pulsamos Ok.

   · Nos aparecerá una pantalla en la que volveremos a especificar las credenciales de un usuario con privilegios administrativos que el servidor usará para acceder a la base de datos.

· Por último, pulsamos sobre Web Service Identity y seleccionamos el application pool que queremos que tenga asociado nuestro sitio web ReportServer.


Ahora que ya tenemos configurado todos los parámetros del Reporting Services, pulsamos sobre la opción de SharePoint Integration y vemos que aparece un enlace que nos abrirá la administración central de SharePoint para poder seguir con la configuración.

Nota: Una consideración a tener en cuenta, es que si instalamos el servidor de Reporting Services en una maquina diferente a donde tenemos instalado SharePoint, tendremos que realizar una instalación básica de SharePoint en este servidor para que tenga disponible el modelo de objetos de SharePoint.

Configuración del servidor SharePoint

Una vez que ya tenemos configurado nuestro servidor de Reporting Services y después de ejecutar el programa de instalación de Microsoft SQL Server 2005 Reporting Services Add-in para Microsoft SharePoint Technologies en el servidor de SharePoint, vamos a configurar nuestro servidor SharePoint. Para ello, si vamos a la administración central de SharePoint y pulsamos sobre la ficha de Application Management podremos ver el nuevo menú de Reporting Services que nos ha añadido estos add-in.

Este menú está compuesto por tres apartados diferentes que tendremos que configurar uno a uno para terminar de configurar nuestro servidor, y que sirven para:

· Manage integration settings: Configurar la URL de acceso al servidor de Reporting Services (ej. http://ServerName:8080/reportserver) y su modo de auntentificación (Windows o trusted account)

Grant database Access: Configurar el nombre del servidor donde se encuentra la base de datos de Reporting services y las credenciales necesarias para poder acceder a ella.


Set Server defaults: Modificar otros parámetros de la configuración como los timeout de acceso, habilitar los logs, …

Una vez que hayamos terminado de realizar todos estos pasos, ya tendremos configurado nuestro servidor SharePoint para poder utilizar Reporting Services.

Links de descargas:

Microsoft SQL Server 2005 Reporting Services Add-in para Microsoft SharePoint Technologies.  -  Novedades

Microsoft SQL Server 2005 SP 2.  -  Novedades

http://www.gavd.net/servers/sharepointv3/spsv3_item.aspx?top=art&itm=430

Click on pen to Use a Highlighter on this page
Tagged with:
 

Tutoriales de Reporting Services

Tutoriales de Reporting Services

Actualizado: 17 de julio de 2006Microsoft SQL Server 2005 Reporting Services (SSRS) incluye tutoriales que puede usar para adquirir conocimientos básicos paso a paso.

Herramientas de Reporting Services
Proporciona una introducción a la herramienta de configuración de Reporting Services, el Administrador de informes, el Generador de informes, el Diseñador de informes y el Diseñador de modelos al mostrar cómo se encuentra y se abre cada herramienta.

Crear un informe básico
Siga los pasos de este tutorial para aprender a crear su primer informe. Este tutorial muestra cómo trabajar con el Diseñador de informes para crear una conexión de origen de datos, definir una consulta sencilla y crear un diseño que contenga sus datos.

Agregar características de agrupación, ordenación y formato a un informe básico
Este tutorial sirve de complemento al tutorial anterior y muestra cómo agrupar, ordenar y asignar formato a un informe.

Agregar parámetros a un informe tabular básico
Este tutorial se basa en el tutorial anterior al mostrar cómo agregar parámetros que controlan la apariencia y el contenido de un informe.

Características avanzadas mediante el uso de parámetros
Este tutorial muestra cómo agregar parámetros en cascada, cómo trabajar con parámetros con varios valores y cómo pasar parámetros a informes integrados, informes vinculados e informes de obtención de detalles.

Usar datos XML en un informe
Puede generar informes que recuperen datos de un servicio Web XML. En este tutorial se explica cómo configurar la conexión, definir el conjunto de datos y devolver resultados de consulta.

Tutoriales para la administración del servidor de informes
Estos tutoriales son para administradores del servidor de informes y administradores de contenido:

Crear una suscripción controlada por datos muestra cómo crear una suscripción controlada por datos, que es una forma especializada de entrega de informes que utiliza una consulta para obtener preferencias y datos de suscripción.

Establecer permisos en Reporting Services muestra cómo crear asignaciones de funciones que controlan el acceso al contenido del servidor de informes.

Tutoriales de informes ad hoc
Los informes ad hoc comienzan con modelos que proporcionan los metadatos requeridos para crear informes con el Generador de informes. Estos tutoriales muestran cómo generar modelos con el Diseñador de modelos y las herramientas de administración disponibles, y cómo crear informes con el Generador de informes:

Crear un modelo de informe muestra cómo crear su primer modelo de informe utilizando datos de la base de datos AdventureWorks, configurar la información de conexión, definir una vista del origen de datos, definir un modelo de informe y publicar el modelo en un servidor de informes.

Perfeccionar un modelo de informe en el Diseñador de modelos muestra cómo modificar el modelo para facilitar su uso en el Generador de informes. En este tutorial organizará y aplicará formato a los datos y creará campos.

Crear un modelo de informe basado en un cubo de Analysis Services muestra cómo crear un modelo de informe basado en su cubo de Analysis Services.

Aplicar filtros de seguridad a elementos del modelo de informe muestra cómo aplicar seguridad de nivel de fila a elementos del modelo.

Tutorial: Crear informes basados en modelos en el Diseñador de informes usa el Diseñador de consultas del modelo de informe en el Diseñador de informes para generar consultas con modelos de informes.

Personalizar informes click-through del Generador de informes muestra cómo crear sus propios informes y asociarlos a los informes del Generador de informes como informes click-through personalizados.

Tutoriales para el desarrollo de Reporting Services
En estos tutoriales se muestran las características básicas de programación de Reporting Services:

Obtener acceso al servicio Web del Servidor de informes mediante Visual Basic o Visual C# muestra cómo tener acceso al servicio Web del servidor de informes para recuperar propiedades de los elementos.

Generar RDL mediante .NET Framework utiliza el XmlTextWriter y datos de ejemplo para crear una definición de informe mediante programación.

Actualizar informes con clases generadas a partir del esquema RDL utiliza la herramienta xsd para generar clases de C# o VB a partir del esquema RDL, lo que le permite actualizar definiciones de informe mediante programación.

ms170246.note(es-es,SQL.90).gifNota:
Algunos tutoriales requieren ediciones específicas de SQL Server. Por ejemplo, la funcionalidad de modelos está disponible en las ediciones Standard, Developer y Enterprise, pero no en SQL Server 2005 Express with Advanced Services. Los requisitos de la edición se indican en la sección de requisitos de cada tutorial. 

 

Algunos tutoriales utilizan las bases de datos y los informes de ejemplo de Reporting Services. Los ejemplos no se instalan automáticamente durante la ejecución del programa de instalación, pero puede instalarlos en cualquier momento. Para obtener información acerca de cómo instalar los ejemplos, vea Instalar ejemplos.

Click on pen to Use a Highlighter on this page
Tagged with:
 

Skype Online Status 

Contáctanos por Skype Call me! - Rolando Escobar: Offline
» Get Skype, call free! Servicios en Línea
 
 
Servicios Interdata Ltda. Colaboración e Inteligencia de Negocios, SQL Server 2008, Analysis Services, SharePoint, Excel Services, Reporting Services

Switch to our mobile site