Project Server PSI的简单调用方式: 读取我的任务更新
前面提到了PJContext.Current.PSI自带了多种公开方法,这里我们很自然的要用到读取项目经理待审批的任务更新数据,包括个数和具体的数据表格,如下:
点击"任务更新"链接后肯定要是读取了详细数据,个数也就不是问题了(IS_ASSN == 1):
StatusApprovalDataSet sads = PJContext.Current.PSI.StatusingWebService.ReadStatusApprovalsSubmitted(true);
this.GridView1.DataSource = sads.StatusApprovals; this.GridView1.DataBind(); |
Ho…,如此简单哦,绑定数据后发现:
IS_ASSN为TRUE的就是要审批的任务,具体信息包括:工时和实际工时,是否摘要任务标示,提交时间等等:
对比上面2个图,就很清楚了,如果再深入点,想读取这个任务的历史审批记录,该如何做呢?见下图:
我们有了PSI嘛,推想下代码很简单:
StatusApprovalTransactionDetailsDataSet satdd = PJContext.Current.PSI.StatusingWebService.ReadStatusApprovalDetails(new Guid(ASSN_UID));//ASSN_UID在上个代码片断中可以读取到
this.GridView1.DataSource = satdd.StatusApprovalTransactionDetails; this.GridView1.DataBind(); |
如此类推,我们要继续得到当前任务是否已经重新分配过的记录:
AssnHistoryDataSet ahd = PJContext.Current.PSI.StatusingWebService.ReadAssignmentHistory(new Guid(ASSN_UID), AssnHistoryItemType.Task); this.GridView1.DataSource = ahd.History; this.GridView1.DataBind(); |
最后,如果是管理时间请求方面的需求,同样处理即可。