0

我正在使用 ReadStatusTimephasedData 方法来读取所有任务每天的实际和计划小时数。我通过循环遍历所有资源及其所有任务并使用模拟来实现这一点。对于某些分配,生成的 StatusingTimephasedActualsDataSet 数据集包含一个 TaskUID,它与作为参数传递的 ASSN_UID 不匹配,我无法在数据库中找到此 TaskUID。由于这个问题,我无法将结果与任务表链接起来。我找不到该方法返回正确数据的分配与不返回正确数据的分配之间的任何区别。请告诉我我是否做错了什么,或者是否有其他方法可以使用 PSI 获取每天的实际和计划小时数。

4

1 回答 1

0

我弄清楚是什么导致该方法返回错误的 Task_UID。此问题仅发生在项目经理尚未批准的预定时间。当工作分配所有者或资源对工作分配进行更改时,这些更改将保留在已保存的工作分配表中。在此表 (MSP_ASSIGNMENTS_SAVED) 中,Task_UID 字段的值与 (MSP_ASSIGNMENTS) 中的不同,这是 ReadStatusTimephasedData 返回的字段值。只有当分配所有者或资源发布更改时,更新的分配才会复制到更新的分配表中,ReadStatusTimephasedData 将返回真实的 Task_UID。这是状态更新生命周期的链接:http: //msdn.microsoft.com/en-us/library/office/websvcstatusing.statusing_di_pj14mref%28v=office.14%29.aspx

于 2012-11-27T08:50:03.260 回答