Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF...

26
Caso Práctico: Expandiendo los Caso Práctico: Expandiendo los límites de Project 2007 con VBA límites de Project 2007 con VBA Macros Macros Rafael Ruiz Velasco, PMP, MCITP Rafael Ruiz Velasco, PMP, MCITP

Transcript of Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF...

Page 1: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

Caso Práctico: Expandiendo los Caso Práctico: Expandiendo los

límites de Project 2007 con VBA límites de Project 2007 con VBA

MacrosMacros

Rafael Ruiz Velasco, PMP, MCITPRafael Ruiz Velasco, PMP, MCITP

Page 2: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

• Qué son y para qué sirven las macros en MS

Project

• Cómo se generan las macros

• Demostración: Macros en una solución real.

AgendaAgenda

• Demostración: Macros en una solución real.

• Conclusiones y recomendaciones

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 2

Page 3: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

• Las macros en MS Project son programas que se

generan y ejecutan ‘dentro’ del MS Project

Professional o Standard.

• Utilizan el lenguaje Visual Basic for Application

(VBA).

¿Qué son las macros en MS Project?¿Qué son las macros en MS Project?

(VBA).

• Las macros representan una de las varias

tecnologías de desarrollo disponibles en el Project:

– PSI (Project Server Interface)

– VBA macros

– VSTO (Visual Studio Tools for Office)

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 3

Page 4: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

• Modelo de Objetos de MS Project 2007 (vista

parcial). Fuente: Microsoft Technet.

¿Qué son las macros en MS Project?¿Qué son las macros en MS Project?

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 4

Modelo de objetos Project 2007: http://msdn.microsoft.com/en-us/library/bb244278.aspx

Page 5: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

• VBA macros permiten integración estrecha de

Project con otras aplicaciones como Excel,

Power Point, Word y todas las aplicaciones

que exponen un Modelo de Objetos de VBA.

¿Qué son las macros en MS Project?¿Qué son las macros en MS Project?

que exponen un Modelo de Objetos de VBA.

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 5

Page 6: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

1.- Complementan las funciones predefinidas

para el usuario final

¿Para que sirven las macros?¿Para que sirven las macros?

Funcionalidad ampliada con VBA macros

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 6

VBA macros

Funcionalidad ‘out of the box’

Page 7: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

2.- Facilitan la vida al usuario final.

¿Para que sirven las macros?¿Para que sirven las macros?

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 7

Macros

Page 8: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

¿Cómo se generan las macros?¿Cómo se generan las macros?

Grabación de

macros

Programación Genera Genera

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 8

Código Fuente

Programación

Mixta

Genera

automáticamente

Page 9: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

• Las macros se almacenan en Módulos

– Accesibles desde el Editor de Visual Basic (Alt-F11)

– En cualquier archivo de Project

– En la plantilla global local (global.mpt)

– En la plantilla global de empresa

¿Cómo se generan las macros?¿Cómo se generan las macros?

– En la plantilla global de empresa

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 9

Page 10: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

• Macros simples

– Unas pocas líneas de código

• Macros complejas

¿Cómo se generan las macros?¿Cómo se generan las macros?

• Macros complejas

– Programas completos

– Con formularios, validaciones, procedimientos y

funciones, accesos a bases de datos, etcétera

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 10

Page 11: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

• El modelo a mostrar:

– Modelo de Proyectos de la Subdirección de Ingeniería y

Desarrollo de Obras Estratégicas (SIDOE) en Petróleos

Mexicanos (Con datos ficticios)

– El modelo conjunta las obras que lleva a cabo la SIDOE

es usado para la planeación, programación y

DemostraciónDemostración

es usado para la planeación, programación y

seguimiento físico a nivel gerencial.

– Las obras son típicamente:

• Construcción e instalación de Plataformas Marinas

• Construcción y tendido de Ductos Marinos y Terrestres

• Construcción de infraestructura terrestre

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 11

Page 12: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

Caso 1: Para avances planeados y reales, se

requiere ponderar las tareas y las obras.

• Problemática: El mecanismo de ponderación

requerido no lo ofrecen las opciones

predefinidas del Project.

DemostraciónDemostración

predefinidas del Project.

• Solución:

– Campos personalizados y una macro que genera

ponderadores absolutos para cada tarea y obra.

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 12

Page 13: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

Trabajar con Project ProfessionalTrabajar con Project Professional

• Genera ponderadores absolutos

Para cada ponderador relativo

capturado por cada nivel de la EDT,

la macro calcula los ponderadores

absolutos con respecto a la cartera

de obras.de obras.

Es necesario ejecutar esta rutina,

para poder calcular el avance físico

de las obras y de los indicadores de

desempeño.

Page 14: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

Caso 2: distribuciones del trabajo físico en el

tiempo para planeación y línea base.

• Problemática: Las distribuciones que Project

ofrece no se apegan a las necesidades.

• Solución:

DemostraciónDemostración

• Solución:

– Una macro distribuye la asignación del trabajo en

el tiempo de acuerdo a la curva de distribución

seleccionada.

– Calcula el % de avance por día y lo registra en los

datos time-phased de la asignación.

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 14

Page 15: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

Trabajar con Project ProfessionalTrabajar con Project Professional

• Calcular distribuciones de

recursos

Permite distribuir los avances físicos

a través del tiempo, para cada una

de las actividades en base a una

distribución particular:distribución particular:

• Uniforme

• Triangular

• Creciente

• Decreciente

• Pico Temprano

• Pico Tardío

• Personalizada

Page 16: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

Caso 3: Captura de los avances reales.

• Problemática: La captura de los avances

reales, a nivel de cada asignación en la escala

de tiempo, es compleja.

DemostraciónDemostración

de tiempo, es compleja.

• Solución:

– Una macro que permite la captura del avance real

en un periodo de tiempo y distribuye dicho

avance en el campo trabajo time phased de la

asignación.

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 16

Page 17: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

Trabajar con Project ProfessionalTrabajar con Project Professional

• Actualizar avances

– Se selecciona el periodo para el

cual se capturará el avance.

– Se captura el total acumulado y la

macro calcula el avance del

periodo.periodo.

– El registro del avance se hace en

el campo ‘trabajo’ de la asignación

del recurso AvanceFisico.

(timephased)

– La macro calcula también el

avance planeado hasta la fecha de

estado, conforme a la línea base

de la tarea.

Page 18: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

Caso 4: Pasar datos avance planeado y real a

Excel

• Problemática: Las opciones predefinidas en

Project para exportar a Excel no cubren los

requerimientos del modelo.

DemostraciónDemostración

requerimientos del modelo.

• Solución:

– Una macro que pasa a Excel los datos del time-

phased de avances planeados y reales,

considerando las obras y tareas seleccionadas y

estableciendo una ponderación apropiada.

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 18

Page 19: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

Trabajar con Project ProfessionalTrabajar con Project Professional

• Opciones generales

Se elije la información que se quiere exportar, es decir, los avances físicos de

manera parcial o acumulada, así como avance real/pronóstico o planeado.

En la parte inferior se permite personalizar el nombre del reporte.

Page 20: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

Trabajar con Project ProfessionalTrabajar con Project Professional

• Pasa a Excel

Como resultado de la generación de la Macro, se obtienen los

reportes en Excel.

Page 21: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

Caso 5: Verificar la calidad del modelo

• Problemática: El modelo tiene muchas

variables y no es simple revisar que todas ellas

estén utilizadas correctamente.

• Solución:

DemostraciónDemostración

• Solución:

– Una macro que valida múltiples características del

modelo.

– Genera un archivo Log indicando los aspectos a

revisar y/o corregir.

– Algunos aspectos los corrige directamente la

macro.“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 21

Page 22: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

DemostraciónDemostración

• Macro de

validación del

modelo

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 22

Page 23: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

DemostraciónDemostración

• Resultado de la

Validación

– Archivo texto con

los problemas y

aspectos a revisar

del modelo.

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 23

Page 24: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

• Si su proyecto EPM es interno o para un cliente

en particular, vale la pena considerar el uso de

VBA macros desde la conceptualización.

• Conviene desarrollar habilidades para el

desarrollo de VBA macros.

Conclusiones y RecomendacionesConclusiones y Recomendaciones

desarrollo de VBA macros.

• Las macros de Project ayudan a generar

modelos exitosos!

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 24

Page 25: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

• Project 2007 sdk

• Project VB Editor Help

• Project Programmability Blog

• Microsoft News Groups on Project development

ReferenciasReferencias

• Microsoft News Groups on Project development

• Dynamic Scheduling with MS Office Project 2007

– Rodolfo Ambriz, International Institute for Learning

“Mejores Prácticas y Tecnologías de Vanguardia para la Dirección de Proyectos”. 25

Page 26: Caso Práctico: Expandiendo los límites de Project 2007 con ... · PDF file– Accesibles desde el Editor de Visual Basic (Alt-F11) – En cualquier archivo de Project – En la plantilla

¡Gracias!

Rafael Ruiz Velasco, PMP, MCITP

[email protected]

www.iil.comwww.iil.com