lunes, 21 de julio de 2008

Problemas con My Task en Project Server 2007

Pareciera que esto ocurre a menudo en Project Server 2007, especialmente cuando publicamos los proyectos y hemos hechos muchos cambios. Es importante notar que en Proyect Server cada tarea presenta una fila en base de datos por lo menos y que debemos tener cuidado al modificar el proyecto y publicarlo ya que podemos provocar la corrupción de una o varias tareas de algún proyecto.

El síntoma

Muy posiblemente si no es desplegada las tareas en el link de My Task a todos los usuarios o le de un error desconocido (An unexespected error has occured) a uno de ellos se debe a que algunas filas de las tareas están corruptas.

Ubicando el Error

Para ello debe de ejecutar un query sobre la base de datos Project_Published que le mostrará las filas con problemas y quién es el autor de la misma. El query básicamente verifica si la tabla de las tareas grabadas no exista en la tabla de tareas asignadas que tenga un proyecto y recurso asignado en la tabla de tareas asignadas. Esto debe ejecutar desde el Managment Studio para el caso SQL-Server 2005 y el código es el siguiente:

SELECT MSP_PROJECTS.PROJ_NAME, MSP_ASSIGNMENTS_SAVED.TASK_NAME,
MSP_RESOURCES.RES_NAME, MSP_ASSIGNMENTS_SAVED.ASSN_UID,
MSP_ASSIGNMENTS_SAVED.PROJ_UID,
MSP_ASSIGNMENTS_SAVED.TASK_UID, MSP_ASSIGNMENTS_SAVED.RES_UID
FROM MSP_ASSIGNMENTS_SAVED INNER JOIN
MSP_PROJECTS ON MSP_ASSIGNMENTS_SAVED.PROJ_UID =
MSP_PROJECTS.PROJ_UID INNER JOIN
MSP_RESOURCES ON MSP_ASSIGNMENTS_SAVED.RES_UID =
MSP_RESOURCES.RES_UID
WHERE (NOT EXISTS
(SELECT TASK_UID
FROM MSP_TASKS_SAVED
WHERE (TASK_UID =
MSP_ASSIGNMENTS_SAVED.TASK_UID)))

Por lo menos deberá mostrarle una fila de resultado sino es que mas, si no le muestra nada el error no se debe a una tarea corrupta sino el problema es por otro lado.

La Solución

Dentro de MS Project Professional 2007 (debe de tener derechos de administrador o ser el Project Manager del proyecto) haga lo siguiente:

  1. En la vista Gantt, inserte la columna Publish, y seleccione la tarea o tareas que le mostro el query de arriba y en la columna Publish seleccion "No".
  2. Salve y Publique el Proyecto.
  3. Luego Seleccione "Si" para las tareas que puso "No".
  4. Salve y Publique el Proyecto.

Con ello debería de eliminarse el problema.

Hasta pronto,

Manolo Herrera

No hay comentarios.: