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

Envía a imartin@epmconsultores.com o 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

18 octubre 2015

Macro para Exportar los Festivos del Calendario

 
Hola a todos.
 
Después de la versión 2010 de Microsoft Project, no conozco, ni creo que exista una forma directa de imprimir un informe y/o exportación de los días no laborables del calendario de Ms Project. Así que, con las mismas, y debido a diferentes peticiones de los usuarios, he desarrollado una macro que muestra y exporta las excepciones(no laborables) y fines de semana a sendos archivos txt.

Simplemente debes crear una macro vacía en Ms Project con VISTA > Macros > Macros > Ver macros.

Escribes un nombre corto y sin espacios, Festivos por ejemplo, luego pulsas el botón Crear, y a continuación pegas entre las 2 líneas Sub y End Sub el texto de la macro del final de este post:

 
Nota.-

Sub
.
.
.
        pegar aquí todo el texto de la macro literalmente como se muestra más abajo, desde 'Macro        desarrollada... hasta... Exit Sub
.
.
.
End Sub

  

Finalmente Cierras la ventana de edición de la macro(X), y ya puedes ejecutar la macro creada sobre el proyecto activo, con VISTA > Macros > Ver

macros ... Ejecutar. Se mostrará y guardará en 2 archivos txt de C:windows/temp los festivos y fines de semana, respectivamente. También puedes elegir cualquier otro calendario base del proyecto.

 
Saludos.

------------------------------------------------------------

' Macro desarrollada por Ignacio Martín MVP - Octubre 2015
' Genera 2 archivos txt, uno con los Festivos-Excepciones del proyecto activo y otro con los No laborables de fin de semana (Sábados y Domingos no laborables),
' desde principio a fin del proyecto, del calendario elegido. También es aplicable a Calendarios de tareas, no así de Recursos
    Dim desdeFecha, hastaFecha, dia As Date
    Dim Calendario, CalendarioProyecto, Festivos, Finesdesemana As String
     CalendarioProyecto = ActiveProject.Calendar
    Calendario = InputBox("Introduzca el Calendario-base de Festivos a exportar:", , CalendarioProyecto)
    desdeFecha = ActiveProject.ProjectStart
    hastaFecha = ActiveProject.ProjectFinish
    Festivos = "Los siguientes Festivos-Excepciones se han exportado al archivo " & "C:\windows\temp\" & Calendario & " - Excepciones.txt" & vbNewLine & vbNewLine
    Finesdesemana = "Los siguientes Fines de semana se han exportado al archivo " & "C:\windows\temp\" & Calendario & " - Fines de semana.txt" & vbNewLine & vbNewLine
    For dia = desdeFecha To hastaFecha
    On Error GoTo Errores
        With ActiveProject.BaseCalendars(Calendario)
            If .Period(dia).Working = False Then
                If Not .WeekDays(Weekday(dia)).Working Then
                    Finesdesemana = Finesdesemana & Format(dia, "dd.mm.yyyy") & vbNewLine
                    'Si existe el archivo se sobreescribe, si no se crea.
                    Open "C:\windows\temp\" & Calendario & " - Fines de semana.txt" For Output As #1
                    Write #1, Finesdesemana
                    Close #1
                Else
                    Festivos = Festivos & Format(dia, "dd.mm.yyyy") & vbNewLine
                    Open "C:\windows\temp\" & Calendario & " - Excepciones.txt" For Output As #1
                    Write #1, Festivos
                    Close #1
                End If
            End If
        End With
    Next dia
    MsgBox Festivos, vbInformation, "Festivos del Calendario: " & Calendario & "                             "
    MsgBox Finesdesemana, vbInformation, "Fines de Semana del Calendario: " & Calendario & "                                "
   
Errores:
   
      Select Case Err
         Case 1101:
                       
            MsgBox Calendario & ": Nombre de Calendario-base de Proyecto o Tarea inexistente." & vbNewLine & vbNewLine & "Nota.- Solo se exportan Calendarios-base, no de Recursos."
           
      End Select
     
      Exit Sub
 

Flujo de Fondos de Fechas Tempranas y de Fechas Tardías

 Hola:
 
Sucede que me están solicitando realizar el flujo de fondos, bueno en realidad dos, el primero usando como referencia los tiempo de iniciación y terminación tempranos, y el segundo con los tiempos de iniciación y terminación tardíos. Si bien he sacado estos tiempo en Project 2013, gracias a algunos artículos del blog, no se como hacer para realizar los dos diagramas de Gantt para los tiempos específicos, y posteriormente sacar los flujos de fondos correspondientes a cada uno...

Le agradecería mucho me pudiera ayudar con esto.

Juseff


Respuesta [Ignacio Martín]:

Hola Juseff:
 
Hay que suponer que el proyecto en cuestión, sigue las buenas prácticas de la programación, y que se dispone de holguras y tareas críticas, como consecuencia de la introducción de los vínculos correspondientes, y de la ausencia de restricciones de fechas innecesarias. De no ser así, difícilmente se obtendría los informes temprano y tardío solicitados.

1. Lo primero es valorar el importe de cada tarea no de resumen, bien en la columna Costo fijo (quizás ya lo tengas), o mediante la asignación de recursos con sus Tasas correspondientes.

 2. A continuación, hay que hacer una copia del archivo, porque sobre ella harás las simulaciones siguientes que pueden modificar la programación anterior.

 3. Insertas la columna Tipo de restricción y sustituyes si las hubiera, las siguientes restricciones PARA EL PLAN MÁS TEMPRANO:
 
- Lo más tarde posible por Lo antes posible.
- No comenzar después de por Lo antes posible.
- No terminar después de por Lo antes posible.
 
Si hubiera alguna otra, se deja como está.

 Normalmente, habrá pocos ó ningún cambio referido a las restricciones anteriores, por lo que el propio programa obtenido es el denominado Temprano, ya que las tareas no críticas que tienen holgura (Margen de demora total) se programan cuanto antes (fechas más tempranas, denominadas en Project: Comienzo anticipado y Fin anticipado), lo más pronto posible. Evidentemente las tareas críticas se quedan donde están, ya que su holgura es de 0 días.

 4. Es conveniente y casi necesario, que se tenga seleccionado Mostrar la tarea resumen del proyecto, en FORMATO > Mostrar u ocultar, ya que esta fila de la Tarea superior o resumen (Id=0), porque es la que nos da la información totalizada del proyecto.



5. A partir de entonces ya se puede obtener los flujos de fondos del programa con las FECHAS TEMPRANAS, para los cual muestra la vista Uso de tareas, pulsando el botón derecho del ratón sobre la fase temporal amarilla, de la ventana derecha, elegir el campo Costo, y desmarcar el resto.

 6. Finalmente, elige la Escala temporal con los períodos de los fondos (Semanal, Mensual normalmente,...) en VISTA > Zoom > Escala temporal > Meses. La fila primera de resumen muestra los totales del proyecto por período, aunque también el importe de las tareas se muestra distribuido. Incluso puedes ocultar niveles para que no se muestren las líneas de recursos y solo salgan las tareas. Es cuestión de gustos y requerimientos. Todo ello se puede imprimir directamente, incluso cambiando columnas en la tabla de la izquierda, como por ejemplo eliminando las que no interesen e insertando la columna Costo. También puedes copiar y pegar en Excel, todo, en parte o simplemente la primera fila, que es la importante en este caso de los flujos de inversión. Se copia la tabla por un lado y la fase temporal por otro, Project no permite copiar todo a la vez.

 Para obtener el flujo de fondos con las FECHAS TARDÍAS, se hace otra copia del archivo de la programación actual original, y sobre el, insertas también la columna Tipo de restricción y sustituyes si las hubiera, las siguientes restricciones PARA EL PLAN MÁS TARDÍO:

- Lo antes posible por Lo más tarde posible.
- No comenzar antes de por Lo más tarde posible.
- No terminar antes de por Lo más tarde posible.

Si hubiera alguna otra, se deja como está.

A partir de aquí, se repiten los puntos 4, 5 y 6 para la obtención de la información referente al Flujo de fondos con las FECHAS TARDÍAS (denominadas en Project: Límite de comienzo y Límite de finalización)..



Y esto es todo.

Espero haberte ayudado.

Saludos.

01 octubre 2015

GASTOS COMUNES A TODO EL PROYECTO



Es posible incluir el total de los gastos generales de todo el proyecto en la columna Costo fijo de Microsoft Project, a nivel de la Tarea resumen del proyecto (Id=0). La Tarea resumen del proyecto se activa en FORMATO > Mostrar u ocultar.

En la columna Costo se mostrará el Total de los costos, incluyendo tanto el Costo fijo de las tareas, como el costo del trabajo de las asignaciones de los recursos (Horas x Tasa) para recursos tipo Trabajo, y/o (Unidades x Tasa) para recursos tipo Material, si los hubiere. A lo anterior se le añadirá automáticamente el Costo por uso del recurso si existiera, aunque no suele ser frecuente.

El Costo fijo se reparte por defecto linealmente a lo largo de la duración de la tarea (Prorrateado), aunque también se puede configurar al principio ó al fin.

Saludos