La creación de Timer Jobs en SharePoint es una potente herramienta para el desarrollo de aplicaciones personalizadas en SharePoint, gracias a los cuales, podemos ejecutar de forma desatendida y planificada el código que deseemos, y además, ejecutarlo fuera del IIS (interesante para código que pueda necesitar ejecuciones de larga duración). El presente artículo describe cómo crear un Timer Job de SharePoint 2010 paso a paso con Visual Studio 2010. |
Un Timer Job es una tarea ejecutable que corre sobre uno o varios servidores de forma desatendida en base a una planificación, un concepto similar a los Jobs del Agente de SQL Server. Los Timer Jobs resultan de gran utilidad para descargar al IIS de las tareas de larga ejecución y de las tareas periódicas, que pasarán a ser gestionadas por el servicio SharePoint 2010 Timer. Existen multitud de Timer Jobs que vienen OOB con el propio producto, que varían en función de la edición de SharePoint que se trate, y adicionalmente, podemos desarrollar nosotros nuestros propios Timer Jobs, por lo que en consecuencia también podremos encontrar muchos Timer Jobs correspondientes a aplicaciones de terceros. Cada Timer Job tiene un alcance (Scope), es decir, un tipo de objeto que indica a qué nivel jerárquico trabajará el Timer Job, existiendo tres posibilidades:
Creación de un Timer Job paso a paso con Visual Studio 2010En el siguiente ejemplo, vamos a crear paso a paso un Timer Job que se ejecutará una vez por Granja (Scope Farm), utilizando Visual Studio 2010.Crearemos un nuevo Proyecto en Visual Studio 2010 de tipo Empty SharePoint Project, asegurándonos de seleccionar el Net Framework 3.5 y asignaremos el nombre que deseemos para el Proyecto (en nuestro caso, lo llamaremos MyTimerJob). En el Wizard para la creación del Proyecto, seleccionaremos la opción Deploy as a farm solution. Seguidamente crearemos una nueva clase pública (no olvidar añadir el modificador de acceso public) que herede de SPJobDefinition, para lo cual deberemos crear un par de constructores y sobrescribir el método Execute(), además de añadir al menos un par de sentencias using.
Despliegue del Timer JobUna vez que ya hemos desarrollado la clase de nuestro Timer Job, tenemos que preparar su despliegue. Para ello, añadiremos una Característica (Feature) a nuestro Proyecto de Visual Studio 2010, la configuraremos con un alcance a nivel de Aplicación Web (Scope Web Application), y añadiremos un Event Receiver a nuestra Característica, donde incluiremos el código para el despliegue y eliminación de nuestro Timer Job (FeatureActivated y FeatureDeactivating).Despedida y CierreHasta aquí llega el presente artículo, en el cual hemos intentado presentar la forma de desarrollar un Timer Job de SharePoint 2010 con Visual Studio 2010, una tarea que puede resultarnos de utilidad en multitud de ocasiones. Por último, antes de acabar, aprovecho para añadir algunos enlaces de interés, para quien desee ampliar más información:
|
No hay comentarios:
Publicar un comentario