La determinación de Lineage EM Tarea del proyecto
-
20-08-2019 - |
Pregunta
Tengo un archivo de MS Project, que estoy usando los ensamblados de interoperabilidad primarios de analizar. ¿Cómo puedo determinar el linaje de una tarea? Me baso en el código EDT, sin embargo, el cliente ha empezado a jugar con este campo y ya no representa la jerarquía de los datos.
Edit: Por linaje me refiero a una manera de identificar dónde existe en la jerarquía de la tarea. Por defecto la EDT imita código perfectamente.
Necesito esta información para determinar lo que es el padre de una tarea.
Ejemplo
- A
- B
- B1
- B2
- B3
- C
El linaje para B3 sería 2,3 (Si contamos por 1, como proyecto)
Solución
Trate propiedad OutlineNumber del objeto de tareas y la colección PredecessorTasks.
HTM
Colby África
Otros consejos
Uso de la Propiedad '' OutlineChildren:
// from caller:
ListTasks(prj.OutlineChildren, "");
void ListTasks(Tasks lst, string indent)
{
foreach (Microsoft.Office.Interop.MSProject.Task t in lst) {
Log(indent + t.Start + " - " + t.Name);
ListTasks(t.OutlineChildren, indent + " ");
}
}
Crea árbol sangría de tareas.