jueves, 9 de febrero de 2012

MS2010: Integración con Project

A estas alturas todos conoceréis el listado de “tareas de proyecto” que SharePoint puede crear para hacer diagramas de Gantt similares a las de Project Professional, pero con mucha menor funcionalidad. En estas listas solo podemos crear tareas, con data de inicio, data de fin, % de completado, asignarlas a un usuario concreto y crear hitos (milestones) o tareas de agrupación. Poco más.


Sin embargo, muchas veces uno se habrá preguntado: Y estas listas no tienen ningún tipo de integración con Project? La respuesta es afirmativa.

De hecho, se puede tanto crear Projects a partir de una lista de SharePoint, como crear una lista de Sharepoint a partir de un Project, y en ambos casos, mantener el sincronismo posterior entre ambos.

Para crear un Project a partir de una lista que ya tengamos creada en SharePoint, se puede hacer de dos formas distintas:

1.- Desde el propio Project Professional. Cuando abrimos Project Professional en modo local (no conectado a Project Server), podemos ir a la pestaña "File" de la Ribbon, y seleccionar en "New" la opción "New from SharePoint task list".


Nos aparecerá entonces una ventana donde tendremos que introducir primero la URL de nuestro site de SharePoint, y posteriormente, la lista de tareas con la que queremos sincronizar.


Esto nos generará el proyecto en Project aprovechando toda la información que proviene de la lista de tareas en diagrama de Gantt de SharePoint.

2.- Desde el propio SharePoint, en el listado de tareas, en la pestaña "Lista" de la Ribbon, pulsando en la sección de "Conectar y exportar" el botón de "Abrir programación".


Esto nos abrirá el Project Professional y cargará automáticamente en él los datos del proyecto que tengamos definidos en la lista.

Tanto usando el camino 1 como el 2, llegamos a tener un proyecto en Project Professional conectado con nuestra lista de SharePoint.


A partir de aquí, podemos realizar cambios en el proyecto, tanto a nivel del listado de SharePoint como del proyecto de Project Professional y posteriormente volverlos a sincronizar mediante la opción que encontraremos en Project Professional en la pestaña "File" de la Ribbon, sección "Info" y botón de "Sync to Tasks List".

Pulsando este botón se re-sincroniza el proyecto de Project Server con la lista de SharePoint, de forma que si en SharePoint hemos informado del grado de avance de una tarea, por ejemplo, tras esta acción, se verá reflejado dicho avance en el Project Professional. ¿Qué ocurre si hay conflicto porque una tarea se ha modificado en ambos lados? El sincronismo funciona a nivel de tarea, así que para cada una de ellas comprueba los cambios realizados, y en caso de conflicto, aparecerá una ventana donde nos informará del mismo, y nos permitirá elegir con cual de los 2 cambios nos quedamos.


Además, bajo el botón de Sincronizar, veremos que hay otra opción de "Manage Fields", que nos permite establecer un mapeo personalizado campo a campo entre las columnas de nuestra lista de SharePoint con los campos de Project Professional, de forma que puedo generar columnas personalizadas en SharePoint (para dar una descripción de la tarea, por ejemplo), que luego también se sincronicen con el Project Professional.

Otra forma de establecer la conexión con SharePoint sería primero generar un proyecto en Project Server, que podríamos tener ya creado o ampliamente desarrollado durante varios días, y en un determinado momento, ir a la pestaña "File", sección de "Save & Send" y pulsar en la opción de "Sync with Tasks List". Aquí nos pedirá la URL del sitio de SharePoint en el campo "Site URL", y una vez pulsemos el botón "Validate URL" y Project detecte que efectivamente es correcto, nos dejará seleccionar una lista de Tareas existente o introducir un nombre nuevo (en cuyo caso Project se encargará de generar una lista nueva).

Al pulsar en el botón de "Sync" Project conectará con la lista (si ya existía) o la creará (si no existía) y almacenará todos los datos en ella, quedando a partir de ese momento vinculada, y por tanto, igualmente sincronizable siempre que queramos a través de "File --> Info --> Sync".


Como veis, a pesar de que inicialmente la lista de tareas de Gantt de SharePoint 2010 nos pueda parecer poca cosa (comparada con la funcionalidad de Project), el hecho que esta se pueda sincronizar con Project Professional le da un gran valor añadido, pues podemos tener, por ejemplo, al Jefe de proyecto trabajando rutinariamente con su Project Professional y al equipo de desarrollo informando del avance de las tareas desde una lista sencilla de SharePoint que el Jefe de Proyecto va sincronizando periódicamente...

Una pega importante es que las opciones de sincronismo SharePoint/Project desaparecen en la versión Server. Si abrimos Project en conexión con un servidor, no encontraremos ninguna de las opciones para crear o vincular listas de SharePoint ni sincronizar con ellas. Algunos os preguntaréis: "¿Por qué? ¡¡Si la opción de Server es más cara, debería tener más funcionalidad!!". Sin duda Project Server tiene más funcionalidad y de hecho tanto es así que es puramente un servicio de SharePoint, que crea un site collection de SharePoint y que tiene un montón de webparts y opciones especiales para la gestión del proyecto de SharePoint. En este caso, si quisieramos tener una lista de tareas desde la que nuestro equipo pudiera ir informando del grado de avance de las mismas, se podría hacer directamente desde el sitio raiz de project server, en la sección de "Tasks", o en el espacio colaborativo que se genera vinculado al proyecto, añadiendo alguno de los WebParts que Project Server puede añadir en su Site Collection de SharePoint. Pero, eso es otra historia, y podría ser contada en otra ocasión...

¡Salud!

1 comentario:

Anónimo dijo...

"... y al equipo de desarrollo informando del avance de las tareas desde una lista sencilla de SharePoint..."

Prueba el OWA (Office web Apps) en Project Server. Te monta una aplicación de servicios de Project Server y puedes ver en el Sharepoint, una especie de cliente project, sin necesitar el cliente pesado. (a parte se puede integrar con reporting y analisis services de sql, pero eso ya no es cosa mía). Felicidades por lo de la criatura.