¡Bienvenido! al foro de consultas y comentarios de Ms Project

Envía a imartin@epmconsultores.com a través de mi perfil tus consultas sobre Microsoft Project, Professional, Server, etc ... o bien añade respuestas y comentarios a los temas ya publicados. Ignacio Martín
http://www.epmconsultores.com/cursomicrosoftproject2013.html
http://www.epmconsultores.com/cursomsproject2013.html
http://www.epmconsultores.com/cursodeproject.html


29 julio 2011

Fórmula para Calcular % Completado Previsto a una Fecha y ¡Cambios de Nombre de Campos en Project 2010!


Buenos Días.

Estoy tratando de utilizar la fórmula siguiente:

Str(IIf([Fin de línea base]<=[Fecha de estado],100,IIf([Comienzo de línea base]>[Fecha de estado],0,Round((100*(Val(ProjDateDiff([Comienzo de línea base],[Fecha de estado],"Calendario 1"))/[Duración])))))) & "%"

con algunos datos diferente a los que en un foro definiste, me ha servido mucho, pero no sé por qué ahora cuando ingreso a la fórmula me envía un error que dice “La fórmula contiene un error de sintaxis o una referencia a un nombre de campo o función desconocidos.”, y no puedo hacerle ningún cambio. La fórmula me calcula cuando hago cambios, pero me doy cuenta que cuando hago el seguimiento y varía la duración el porcentaje que calcula es en base a esa duración y no a la duración de la línea base, por lo tanto me envía un error en el porcentaje donde a veces me sube al 100%.

¿Sabrías la razón por la cual me envía este mensaje de error?

¿Cómo podría solucionarlo?

Saludos
Johanny

Respuesta [Ignacio Martín]:

Hola Johanny,

antes de nada comentar que la denominación de algunos campos de Project 2010 y 2013 han cambiado respecto a versiones anteriores, por lo que tablas, fórmulas, macros, etc. diseñadas para versiones anteriores de Project 2010 y que incluyen alguno de esos campos, puede dar error. De manera recíproca, si fueron diseñadas para 2010, pueden dar error en Project 2007.

En concreto:

Antes de Project 2010       Project 2010
---------------------------      -----------------------------
Duración prevista           Duración de línea base
Comienzo previsto          Comienzo de línea base
Fin previsto                     Fin de línea base

También es distinto el separador dentro de una fórmula personalizada,

Antes de Project 2010       Project 2010
---------------------------      -----------------------------
 ;  (punto y coma)               ,  (coma)

Respecto a tu consulta de error y optimización de la fórmula para calcular el % completado del plan previsto o Línea de base a una Fecha de estado, incluida en un campo personalizado de Texto de tarea, siendo la que originalmente me envías la siguiente:

Str(IIf([Fin de línea base]<=[Fecha de estado],100,IIf([Comienzo de línea base]>[Fecha de estado],0,Round((100*(Val(ProjDateDiff([Comienzo de línea base],[Fecha de estado],"Calendario 1"))/[Duración])))))) & "%"

debes considerar y revisar estos puntos,

1. ¿Existe el “Calendario 1” en el proyecto al que se hace referencia en la fórmula?, de lo contrario se muestra #ERROR en el resultado, y si no crearlo o cambiarlo por otro, el del proyecto es el “Estándar”. Si no se pone nada (borrar “;Calendario...” en la fórmula), la función (ProjDateDiff) usa el calendario asignado al proyecto (por defecto Estándar).

2. En la fórmula, para calcular el % completado previsto de una tarea a la fecha de estado (último condicionante de los tres que considera la fórmula) aparece el campo “Duración”, pero como tu bien apuntas, lo correcto es hacer referencia a la “Duración prevista” ó “Duración de línea base” según la versión.

3. Así pues, dependiendo de la versión de Project la fórmula es distinta en lo referente a los campos Comienzo, Fin y Duración prevista, y los separadores entre campos, estando correctas las siguientes:

Anterior Project 2010 (2007, 2003, 2002, 2000):

Str(IIf([Fin previsto]<=[Fecha de estado],100,IIf([Comienzo previsto]>[Fecha de estado],0,Round((100*(Val(ProjDateDiff([Comienzo previsto],[Fecha de estado],"Calendario 1"))/[Duración prevista])))))) & "%"

Project 2010:

Str(IIf([Fin de línea base]<=[Fecha de estado];100;IIf([Comienzo de línea base]>[Fecha de estado];0;Round((100*(Val(ProjDateDiff([Comienzo de línea base];[Fecha de estado];"Calendario 1"))/[Duración de línea base])))))) & "%"

Project 2013:

IIf(ProjDateValue("NOD")=[Comienzo previsto];"";Str(IIf([Fin de línea base]<=[Fecha de estado];100;IIf([Comienzo previsto]>[Fecha de estado];0;Round((100*(Val(ProjDateDiff([Comienzo previsto];[Fecha de estado]))/[Duración de línea base])))))) & "%")

Nota.- En esta última fórmula para la versión de Project 2013 se ha incluido la condición de que el campo % completado vacío se muestre en blanco si no existe valor en el campo Comienzo de línea base, que por cierto, sorprendentemente y quizás por un error en esta versión 2013 ¡aparece como Comienzo previsto! y no como Comienzo de línea base!

4. Podría ocurrir un error debido a una función desconocida cuando el ordenador no tiene instalado los complementos Visual Basic para Aplicaciones de Office. En este caso la función Round incluida en las fórmulas es desconocida para Ms Project y dará un error. Como alternativa se podría sustituir por la función Int (integer o parte entera) que si reconoce Project, aunque asumiendo un pequeño error de truncamiento en la parte decimal.

Importante.- Como he comentado en otras ocasiones, estas fórmulas que calculan el avance previsto o % completado de la línea de base a una fecha de estado, son aproximaciones que pueden no coincidir con los valores esperados cuando por ejemplo los calendarios de los recursos asignados si los hubiera, no coinciden con el calendario del proyecto y sus jornadas de trabajo, o la línea de base se estableció sobre tareas divididas, discontinuas o interrumpidas, y quizás en algún otro caso relativamente infrecuente.

Nota.- Al abrir un proyecto 2007 o anterior con campos personalizados y fórmulas, en Project 2010 y 2013, estos últimos lo convierten automáticamente a sus nuevas características, sin necesidad de editarlo, no así a la inversa de 2010 o 2013 a 2007, en cuyo caso Project 2007 no podrá siquiera abrir el archivo 2010 o 2013.

Espero haberte ayudado,

un saludo.

27 julio 2011

Parada y Ajuste de Obra

Hola,

estoy en una obra en construcción cuyo inicio fué el 4 de abril, el cronograma esta montado pero apenas va siendo revisado por el ing. residente; el asunto es que la la obra fue paralizada por organismos públicos durante varias semanas. El ing va a revisar duraciones y prelaciones del cronograma para ver si hay cambios. El asunto es que de no haber cambios y de mantener oficialmente la fecha de inicio del proyecto al 4 de abril, serian muchas las partidas retrasadas. si se llega a tomar en cuenta el lapso de paralización ¿hay alguna manera de reflejar eso en Project o hay que reprogramar a partir del reinicio?. El otro problema es que si no se puede variar la fecha fin del proyecto  ¿qué puedo hacer?.

Gracias nuevamente.

Respuesta [Ignacio Martín]:

Hola Jose Francisco:

Lo primero es que puedes crear opcionalmente una línea de base o plan inicial antes de actualizar el proyecto, que es una copia del plan programado (como una foto), y que sirve para comparar variaciones entre previsto y programado actualmente, después de introducidos los datos reales de ejecución. Esto se hace con Menú/ Proyecto/ Programación/ Establecer línea de base en la versión 2010 o Menú/ Herramientas/ Seguimiento/ Establecer Línea de base, en versiones anteriores. En la vista Gantt de seguimiento se muestra las barras del Plan previsto o Línea de base y en paralelo para cada tarea las del plan programado actualmente.

Una manera recomendable y sencilla de incluir el tiempo de parada del proyecto es modificar su Calendario incluyendo esos días no laborables. De esta forma quedará una sombra en el Gantt por detrás de las tareas que indicará los días no trabajados. Además se desplazará automáticamente todas las tareas que no han podido hacerse, a partir del último día no laborable, manteniendo la lógica de precedencias existente. El Calendario se modifica creando un período de excepciones (días no laborables) en Menú/ Proyecto/ Propiedades/ Cambiar tiempo de trabajo en la versión 2010 o Cambiar Calendario laboral en las versiones anteriores.

Las posibilidades que propone Project para acortar el plazo de un proyecto son prácticamente las mismas que las que se nos pueden ocurrir en la vida real, con la ventaja de que al disponer de una herramienta informática podemos comprobar de manera inmediata el impacto que tendría cada una de las hipótesis en el proyecto. Lo ideal es que el usuario sea buen conocedor de la herramienta y de las buenas prácticas, de manera que por ejemplo su proyecto reflejara el camino crítico, es decir, el conjunto de tareas que están interviniendo en la duración del proyecto, y que normalmente ¡son sólo algunas! Para ello, principalmente hay que tener una correcta red de precedencias y ausencia de fechas delimitadas o restrictivas, error muy corriente por escribir las fechas programadas de las tareas en lugar de dejar que calcule Project. Otra cuestión importante es considerar la disponibilidad de los recursos. Dicho esto, para acortar el plazo se trataría de ir reduciendo la duración del camino crítico (tareas críticas) hasta nuestro objetivo:

- Incluyendo más recursos (rendimiento) en tareas del camino crítico de tipo esfuerzo, equivalente a reducir su duración.

- Revisar los enlaces entre tareas del camino crítico, por si pudieran solaparse y empezar o terminar antes.

- Trabajar en días no laborables, convirtiéndolos en el calendario del proyecto o recurso, para aquellos días en que están programadas tareas del camino crítico.

- Desagregar tareas que puedan liberar recursos para ser usados en otras tareas del camino crítico, o simplemente para que empiecen antes sus sucesoras.

...y como no, dejar de hacer algún trabajo, eliminar del proyecto...aunque esto suele ser más difícil en la realidad.

Espero haberte ayudado,

un saludo

08 julio 2011

Zoom del Gantt Manteniendo la Escala Temporal en días


Hola Ignacio, como siempre mi gratitud a la ayuda que nos presta, quería trasmitirle dos consultas del software MSProject.

Primero: ¿Es posible modificar el ZOOM en la vista Diagrama de Gantt sin que la Escala Temporal se modifique?., le ejemplifico, esta es una vista con la escala temporal a dos niveles (días – meses),

 pero yo quisiera poder ahora aumentar el tamaño del esquema desde project, para verlo como le muestro a continuación, pero que no me varíe la escala temporal. ¿Es posible?


Segundo: ¿Sería posible que un día Microsoft nos permita migrar el formato de una vista a otra, así mismo como nos permite migrar las personalizaciones de un proyecto a otro usando la herramienta Organizador?, es que resulta muy incómodo dar formato a una vista y después hacer lo mismo en otra. Quizás exista la vía y yo no la he encontrado, le agradecería si así fuera me dijera cómo lograrlo.

Siempre agradecida por su atención

Delma

Respuesta [Ignacio Martín]:
Hola Delma

Primero: al aplicar el Zoom de Acercar(+) y Alejar (-) sólo se consigue aumentar o reducir la escala de la Fase Temporal. Podrías aumentar el tamaño de la fuente de la Escala Temporal y conseguirías aumentar la imagen manteniendo la escala de días, en Menú / Formato /  Estilos de texto / Cambiar Escala Temporal...

Adicionalmente puedes cambiar el ancho de la Escala modificando el campo Tamaño que aparece al editar la Escala Temporal: doble clic sobre la zona gris de la Escala Temporal en el Gantt o Menú / Formato / Escala temporal.


Finalmente es posible ampliar el grosor de las barras del Gantt con: Menú / Formato / Diseño / Alto de barras..., como creo ya estás aplicando en tu ejemplo.

Nota: para hacer lo anterior más operativo, se podría copiar la Vista inicial (sin aumento) y modificarla con las opciones descritas, de manera que se llamaría a una vista u otra en función del tamaño deseado. Tanto la nueva vista de ampliación como el conjunto de opciones también se podrían incluir en una macro asociada a un nuevo botón en la barra de herramientas.

Segundo: No conozco otra forma de migrar las personalizaciones de una vista que la de Copiarla previamente con otro nombre, y a partir de ella continuar con la entrada de la información, como me imagino ya conoces, a traves de Menú/ Ver/ Más vistas... Copiar...

Espero haberte ayudado.
Un saludo

07 julio 2011

Imprimir un Calendario con los Festivos del Recurso

Estimado Sr :

Estoy trabajando con MS Project 2010 Professional y tengo asignadas una serie de excepciones en el calendario laboral de cada uno de los recursos que intervienen en mi proyecto. En estas excepciones se plasman los periodos vacacionales de cada recurso. En el proyecto intervienen una serie de jefes de equipo que no tienen MS Project 2010 instalado en sus ordenadores, pero necesitan conocer estos periodos vacacionales. He estado intentando buscar algún Visor de Project libre pero los que he encontrado no muestran las excepciones de calendario. Otra opción sería exportar estás excepciones a un Excel y que los jefes de equipo puedan consultar esta Excel, pero no veo manera de exportar esta información. ¿Me puedes dar alguna orientación para resolver este problema?

Gracias

Nacho de la Mora

Miembro PMI
Gerente Proyectos

Respuesta [Ignacio Martín]:

Hola tocayo,

en el siguiente video se muestra como sacar calendarios de festivos recursos, espero te ayude.



Si no se ve el video puedes intentarlo a través de este enlace:

http://www.youtube.com/watch?v=LtnLlHTZFKI&feature=player_embedded

06 julio 2011

Dudas reprogramación

Buen día.
Encontre su pagina en la red, debido a que estoy tratando de consultar como hacer una reprogramación de un programa de trabajo y me tome la molestia de escribir para solicitar su ayuda.
Estoy controlando un proyecto el cual ya tiene un desfase en programación del 42%, me están pidiendo hacer una reporgramacion.
¿Esto se debe hacer sobre la línea base o sobre una versión anterior a la definición de la línea base?
¿Que lineamientos me recomienda debo seguir para hacer la reprogramación?

Quedo muy agradecido si me puede ayudar
Cordialmente,

Ing. Carlos Eduardo Rivera
Bogotá (Colombia)


Respuesta [Ignacio Martín]:
Hola Carlos,

no es una cuestión simple de explicar de manera breve lo que estás planteando. Primero habría que conocer como está realizada esa programación, si es “dinámica”, como digo yo, es decir si cumple con las buenas prácticas del uso de la herramienta: incluye dependencias entre tareas, no existen fechas obligadas o delimitadas más que las realmente necesarias, se le ha hecho un seguimiento al proyecto y sus tareas introduciendo las fechas de comienzo y fin real y % completado,...fundamentalmente. Si esto fuera así, todo es más fácil y explicable. Existirá un camino crítico calculado por Project que nos informará de por donde se puede acortar plazo hasta llegar al objetivo buscado. Se podrá “reprogramar el trabajo no realizado a la fecha de estado o control después de esa fecha de estado”, y los adelantos o retrasos de una tarea adelantarán o empujarán automáticamente al resto que tenga vinculadas. La línea de base poco importa para este fin, simplemente es una copia/foto de nuestra programación tomada antes de “despegar”, para que al final del período de revisión/actualización/ejecución... podamos ver lo que nos hemos desviado respecto a ella, para bien o para mal. Puede haber una línea de base inicial, o se puede volver a crear reemplazando la existente, o manteniendo varias con distintos nombres a lo largo del ciclo del proyecto, podríamos decir que no es necesario que exista, solo para análisis de variaciones.

Nota.- Puedes consultar también el post "Reprogramación" en este mismo FORO DE PROJECT.

Un saludo

24 junio 2011

Sobreasignación del Recurso Supervisor en Microsoft Project

Saludos, por favor necesito ayuda con la asignación de recursos, estoy realizando la asignación de recurso humano, el proyecto ya terminó por ejemplo en tres tareas y se terminaron en 8 horas, pero de esas tres o más bien en las tres estuvo la misma persona supervisando, y en cada una tenía ayudantes. Al asignar los porcentajes y obtener el informe de costos me toma como si las 8 horas hubiese trabajado esa persona y por lo tanto aparece una sobreasignación cuando no es así,  ¿cómo configuro eso?
Cindy M.
Respuesta [Ignacio Martín]:

Hola Cindy, en el siguiente video se explica como resolver es sobreasignación del supervisor


Si no se ve el video puedes intentarlo a través de este enlace:

http://www.youtube.com/watch?v=DhVBGmxd7A8&feature=player_detailpage#t=62s

Espero te resulte útil.
Un saludo.

16 junio 2011

Variación entre lo Planificado y lo Real en Microsoft Project

Ignacio,
Felicitaciones por tu blog ya que es un gran aporte a la comunidad.

Te pido me ayudes con un par de dudas:
Estoy llevando un proyecto con Ms Project, ya le ingresé los datos de duración, comienzo, fin y predecesoras (lo planificado), sin embargo mi interés es poder llevar también el registro del comienzo real y fin real así como la variación entre lo planificado y lo real.

Le agregue las dos columnas (comienzo real y fin real), pero, cuando ingreso las fechas reales el sistema lo que hace es cambiarme también los datos de las columnas (comienzo y fin) cuando mi interés es tener en pantalla las dos fechas para ver los retrasos.
¿Cuál sería la mejor forma para lograr esto?

Muchas gracias de antemano por tu ayuda.
Saludos
Lenin


Respuesta [Ignacio Martín]:

Hola Lenin
Durante el ciclo de vida del proyecto se manejan tres grupos de datos:
1.Programados o actuales 2. Reales o ejecutados 3. Previstos o Línea de base.

Los datos Programados en Microsoft Project son entre otros: Comienzo, Fin, Duración, Trabajo, Costo.
Los datos Reales son entre otros: Comienzo real, Fin real, Duración real, Trabajo real y Costo real.
Y los Previstos: Comienzo previsto (Comienzo de línea de base en Project 2010), Fin previsto (Fin línea de base en Project 2010), Duración prevista, trabajo previsto, Costo previsto.

Los datos Programados se mantienen vivos (actuales) durante todo el ciclo y los calcula el Project según los datos introducidos por el usuario al estimar las tareas. Cuando el proyecto empieza a ejecutarse, estos datos programados toman el valor de los datos reales introducidos manualmente.
Los datos Reales (Comienzo real, Fin real,…) se escriben manualmente en los campos correspondientes cuando las tareas se ejecutan y automáticamente reemplazan los valores que hubiera en los campos programados (Comienzo, Fin,…)

Los datos Previstos o de la Línea de Base se crean en cualquier momento como una copia de la Programación actual, reemplazando la existente o en una nueva Línea de Base n. Se suele crear antes de empezar la ejecución del proyecto a través de la opción Menú/ Herramientas/ Seguimiento/ Establecer Línea de Base o Menú/ Proyecto/ Programación/ Establecer Línea de Base en Project 2010.

Para observar las diferencias entre la Línea de Base y el Plan actualmente Programado se pueden insertar en cualquier tabla de tareas  las columnas: Variación de comienzo (Fecha de Comienzo), Variación de fin (Fecha de Fin), Variación de Duración. Incluso insertar un campo personalizado de Indicadores gráficos (semáforos) en función de esas variaciones, tal como se muestra en la imagen superior.

La Tabla Variación y la Vista Gantt de Seguimiento muestran datos Previstos y Actuales.
Un saludo.

14 junio 2011

¿Qué es lo que calcula la Asignación porcentual en Microsoft Project?


Estimado Ignacio : 
¿Qué es lo que calcula la Asignación porcentual?


Desde ya agradezco por su colaboración y lo felicito por su site.
Lic. Julio Obermeister


Respuesta [Ignacio Martín]:


Hola Julio,
La Asignación porcentual es un campo que como ya conoces podemos mostrar en la fase temporal de la vista Uso de tareas o Uso de recursos, seleccionando con el botón derecho del ratón sobre esa ventana y eligiéndolo en la opción Estilos de detalle/ Ficha Detalles de uso/ Mostrar…Mostrar estos campos. ¡No hay que confundirlo con el campo Unidades de recurso asignadas, aunque ambos estén en %!


La Asignación porcentual es el % de horas de trabajo programadas del recurso en relación a la capacidad máxima del recurso.


Así por ejemplo, si tenemos 2 recursos Instaladores en el proyecto, porque así se ha dicho en la vista Hoja de recursos, y asignamos un solo recurso a la tarea Instalación, la Asignación porcentual es del 50% para este caso, aunque las Unidades de recurso asignadas sea 1 o también 100% si hemos elegido este formato en lugar del decimal en Opciones.




Un saludo

08 junio 2011

Determinar las horas hombre utilizadas para una actividad con Microsoft Project


Buen día:

Soy nuevo en el manejo del Project, y últimamente he venido trabajándolo, tengo la siguiente duda, ¿es posible que Project me arroje o me calcule la cantidad de horas hombre utilizadas en una actividad? por ejemplo que diariamente se trabaje con una intensidad horaria 9 horas y que esa actividad la realice solo una persona y también para el caso que esa misma actividad la realicen varias personas. Muy Agradecido por su colaboración. Cordialmente Juan Lopez

Respuesta [Ignacio Martín]:

Hola Juan,


Desde la vista Uso de tareas: Menú/ Ver/ Vista/ Uso de tareas puedes ver cada tarea con los recursos asignados, el total de horas por recursos y su distribución en el tiempo en la fase temporal que es la zona cuadriculada de la derecha.


También puedes dividir la pantalla en la vista Diagrama de Gantt por ejemplo, con Menú/ Ventana/ Dividir, o en Vista/ Vista en dos paneles/ Detalles para la versión 2010 de Project y el Formulario inferior Recurso/Predecesora mostrará las asignaciones de la tarea seleccionada en la ventana superior.

Para que un recurso trabaje 9h/día se lo debes de indicar en su Calendario a través de Menú/ Herramientas/ Cambiar Calendario laboral, o doble clic sobre el recursos y buscar su Calendario.


En ese Calendario debes de especificar un horario que suponga 9h/día. Si en tu proyecto se trabaja 9h/día por defecto, entonces bastará que se lo digas en el Calendario del Proyecto (Estándar normalmente), considerando también que cuando estimas duraciones de tareas 1 día=9h y eso se lo dices en Menú/ Herramientas/ opciones o Archivo/ Opciones en la versión Project 2010. Te recomiendo consultes la entrada en este mismo Blog Foro de Project 5 pasos para evitar sorpresas en el cálculo de fechas con Microsoft Project

Espero te sirva

02 junio 2011

Macro para pasar datos de tablas de Tareas a vista Uso de recursos en Microsoft Project


Hola, mis consultas son las siguientes:


1)     A cada tarea le asigno un campo personalizado con un valor. Además cada una de esas tareas posee recursos asignados. En la Tabla "Uso de Recursos" puedo observar cada uso de recurso pero me interesaría que mostrara también al lado de cada tarea el campo con el valor que ingresé en la tabla Diagrama de Ganttt". ¿Cómo puedo hacer para que se vean estos valores en la Tabla "Uso de Recursos"?


2)     En la tabla "Uso de Recursos", me muestra cada uno de los recursos con sus tareas a cumplir. ¿Puedo además que al lado de cada tarea me muestre los demás recursos que cada una de esas tareas necesita?

Desde ya muchas gracias.
Saludos
Andrés Mozzatti

Respuesta [Ignacio Martín]:


Hola Andrés.
 
Actualmente no es posible incluir campos de tablas de tareas (vista Diagrama de Gantt por ejemplo) en tablas de asignaciones (vista Uso de Recursos). Y en relación a esto hay que entender que un campo personalizado de tareas como por ejemplo Texto1 es distinto al campo personalizado Texto1 de la vista Uso de recursos.
 
No obstante adjunto a continuación una Macro(programita) que puedes ejecutar en tus proyectos para pasar los campos Texto24 y Recursos asignados, del Gantt a Uso de Recursos como solicitas. Igual que Texto24, puede ser cualquier otro campo que deberás sustituir en la macro.
 
En breve publicaré una entrada en este blog que explica cómo crear y asociar un botón en la barra de herramientas para ejecutar una macro. De momento puedes copiar y pegar el contenido de la maco de más abajo.
--------------------------------
Sub Macro_pasar_datos_tareas_a_sus_asignaciones()
' Macro para pasar datos de tareas a sus asignaciones de la tabla Uso de recursos
' Macro creada el 25/05/11 por cortesía de Ignacio Martin - ignacio.mvp@microsoftproject.es
' En este ejemplo se ha supuesto como campo personalizado de tarea el Texto24 (Text24)
' El campo de tarea Texto24 (Text24) se pasará al campo de asignación Texto24( Text24)
' Además se pasará el campo de los Recursos asignados a la tarea (ResourceNames) al campo de asignación Texto25 (Text25)
' Nota.- Se deberá ejecutar la macro cada vez que se desee actualizar los datos, recomendable poner un botón en la barra de herramientas
' Nota.- No es necesario tener activa la vista Uso de recursos al ejecutar la macro
  On Error GoTo ErrorMacro
      Dim recur_n, asig_n, ultimorecur, ultimaasig, IDtarea As Integer
        Dim campoper, recsasig As String
        ultimorecur = ActiveProject.Resources.Count
        For recur_n = 1 To ultimorecur
        ultimaasig = ActiveProject.Resources.UniqueID(recur_n).Assignments.Count
            For asig_n = 1 To ultimaasig
                        IDtarea = ActiveProject.Resources.UniqueID(recur_n).Assignments(asig_n).TaskUniqueID
                        ' Cambia aqui el campo personalizado de tareas (Text24) por el que corresponda en tu tabla de tareas
                        campoper = ActiveProject.Tasks.UniqueID(IDtarea).Text24
                        recsasig = ActiveProject.Tasks.UniqueID(IDtarea).ResourceNames
                        ' Cambiar si se desea los campos a los que van  a parar los datos de la tabla de asignaciones (Texto24 y Texto25) de Uso de recursos                              
                      ActiveProject.Resources.UniqueID(recur_n).Assignments(asig_n).Text24 = campoper
                        ActiveProject.Resources.UniqueID(recur_n).Assignments(asig_n).Text25 = recsasig
                       Next asig_n
            Next recur_n
        Exit Sub
           ErrorMacro:
      Resume Next
            End Sub
-------------------------------------
* Corrección incluida recientemente
Espero sea de utilidad.

30 mayo 2011

Calcular diferencia de Fechas y Error ( #ERROR) en campo personalizado de fecha vacía (NOD)

Estimado, felicitarlo por su página con relación al manejo de Project.

La ayuda que te pido es la siguiente:

Tengo en la tabla donde hago la evaluación después de la fecha de estado el campo Fecha1 (fin esperado que se llena manualmente) y el campo personalizado Duración remanente [Fecha1]-[Fecha de estado]), si coloco un dato en fecha1 el resultado es lo que ve en el círculo rojo de la imagen, ejemplo la fecha1 06/06 menos la fecha estado 29/05 tiene que dar 8 (días) y no 4200, y aprovechando también quisiera me ayude a que:

Si el campo Fecha1 es NOD, el campo Duración remanente quede vacío o contenga 0.
Saludos
 jcchp

Respuesta [Ignacio Martín]:

Hola Juan Carlos.

1, Microsoft Project en ocasiones utiliza minutos(?) en lugar de días para determinadas operaciones, por lo que la duración calculada de 4200 minutos es igual a 70h, y por lo tanto 8d y 6h, o lo que es lo mismo 8,75d, eso siempre y cuando un día en tu proyecto sea 8h. No obstante, si quieres evitar esto puedes utilizar la función ProjDateDiff([Fecha1];[Fecha de estado]) que te lo resta directamente en días laborables contados en el calendario de tu proyecto.


2. Para evitar el mensaje #ERROR, puedes incluir copiando y pegando la siguiente fórmula en el campo personalizado Duración remanente, y se mostrará un valor de 0d cuando dicho campo o la Fecha de estado esté en "NOD", en caso contrario se mostrará la diferencia en días laborables contada en el Calendario del proyecto entre la Fecha1 y la Fecha de estado.

IIf([Fecha1]=ProjDateValue("NOD") Or [Fecha de estado]=ProjDateValue("NOD");0;ProjDateDiff([Fecha1];[Fecha de estado]))

Saludos

24 mayo 2011

Exportar Centro de proyectos de Project Server a Excel


Hola Ignacio:

Excelente Blog , muy útil . Tengo una pregunta respecto a que si existe alguna forma de exportar todas los proyectos con sus tareas que están en el Centro de Proyectos de Project Server vía PWA (vía web) a Excel sin necesidad de abrir uno por uno, ya que disponemos de más de 100 proyectos y es un proceso muy lento.
Saludos

Ricardo Jiménez A.
Universidad de Chile


Respuesta [Ignacio Martín]:

 Hola Ricardo,

Gracias por tu comentario. Lamentablemente ahora no te puedo confirmar o dar detalles de métodos probados para hacer lo que solicitas, y no descarto que hubiera algún programita que se venda para hacer este tipo de cosas. Sin poder darte en este momento más explicaciones, una posible alternativa es la creación de algún CUBO OLAP y otra la elaboración de CONSULTAS(querys) a la base de datos SQL vía por ejemplo ODBC, pero todo esto requiere una cierto dominio de estas herramientas y tampoco te aseguro el éxito.

Otra alternativa más artesana y arriesgada, pero quizás más rápida es crear un archivo maestro o consolidado con Project Professional(el cliente), que por cierto el usuario debe de tener permisos para abrir todos los archivos de ese Centro de proyectos (normalmente el perfil del administrador). O sea que se crea un archivo Project nuevo en blanco, y luego se le dice Menú/Insertar/ Proyecto.. y aquí se elige de una sola vez todos los proyectos que se desee, eso si, haciendo que sea en modo lectura y sin vincular al proyecto los cambios que se realicen (opciones de la parte inferior del formulario Insertar/ Insertar solo lectura y sin Vincular al proyecto) y ¡guardando en local sin publicar!. Después de dar Aceptar se debería generar un consolidado con todos los proyectos, que podría exportarse a Excel con Archivo/Guardar como...Tipo Excel...sale un asistente de exportación de campos...o bien Copiar y pegar de Project a Excel. Finalmente este archivo maestro consolidado de subproyectos se guarda en local sin publicar y se puede abrir en cualquier momento incluso añadir y quitar subproyectos de la lista. Por cierto si añades un nuevo proyecto asegúrate antes que todos están plegados y se muestra únicamente el Nivel de esquema 1, porque sino puede subordinar el insertado al subproyecto superior en la lista. De manera sencilla , quizás lo conozcas, puedes desplegar y ocultar todos los subniveles seleccionando todo el proyecto maestro en el vértice superior de la tabla y luego Botón Mostrar de la barra de Herramientas Formato Nivel de esquema n.
Espero te sirva.

Un saludo,