确定MS Project任务沿袭

时间:2009-01-30 22:10:05

标签: c# office-interop ms-project

我有一个MS Project文件,我正在使用主互操作程序集进行解析。如何确定任务的血统?我依赖于WBS代码,但客户端已开始摆弄这个字段,它不再代表数据的层次结构。

编辑:按谱系我的意思是一种识别任务存在于层次结构中的位置的方法。默认情况下,WBS代码完美地模仿了这一点。

我需要这些信息来确定任务的父级是什么。

实施例

  • A
    • B1
    • B2
    • B3
  • C

B3的血统将是2.3(如果我们按1计算,就像项目一样)

2 个答案:

答案 0 :(得分:1)

尝试Task对象的OutlineNumber属性和PredecessorTasks集合。

HTM

非洲科尔比

答案 1 :(得分:0)

使用'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 + "    ");
    }
}

它创建了缩进的任务树。