1

如果我使用了不正确的术语或概念,请原谅。似乎我正处于 MS Project、Project Server 和 PSI 的速成课程中……

Project Professional 提供了资源使用视图,其中列出了给定资源、分配给它们的任务以及给定日期的计划工作量。

这些信息在 Project Server 中是否可用?我将如何使用 PSI 读取它?

谢谢。

  • 杰森
4

1 回答 1

1

如果您刚刚开始使用 PSI,我强烈建议您下载并使用作为Project 2007 SDK一部分的ProjTool 应用程序

我没有对资源做太多的工作,但是在快速浏览之后..这是我的处理方法:

  1. 引用Project.asmx服务(例如:http://servername/pwa/_vti_bin/psi/Project.asmx
  2. 使用ReadProjectEntities方法检索 DataSet 并将其传递给ProjectEntityType,Task和。AssignmentResource

定义一些实体类型:

public const int ENT_TYPE_TASK = 2;
public const int ENT_TYPE_RESOURCE = 4;
public const int ENT_TYPE_ASSIGNMENT = 8;

然后就可以读取数据了:

int entity = ENT_TYPE_TASK | ENT_TYPE_ASSIGNMENT | ENT_TYPE_RESOURCE;
ProjectDataSet dataSet = project.ReadProjectEntities(projectUid, entity, DataStoreEnum.PublishedStore);
// do stuff with these tables...
//dataSet.Task
//dataSet.Assignment
//dataSet.ProjectResource

ReadProjectEntities 很好,因为您只能读取您需要的项目部分......如果您需要的不仅仅是 Task 表,那么您可以使用逻辑 OR 来获得额外ProjectEntityType的 s。

至于分配的工作,它看起来也在分配表中,但我认为您必须进行一些计算。

于 2011-03-18T14:04:22.687 回答