如何更新案例/事件记录的所有者

时间:2013-05-29 01:07:47

标签: dynamics-crm-2011

我正在编写针对事件记录操作的工作流活动。该活动旨在将用户ID从用户更改为用户所属的团队。我成功地检索了这个团队。 OwnerId字段是标准所有者类型。我尝试过以下方法:

if (results.Entities.Count > 0)
{
    var er = new EntityReference("team",new Guid(results[0].Attributes["teamid"].ToString()));
    er.Name = results[0].Attributes["name"].ToString();
    updatedEnquiry.OwnerId = er;
    Service.Update(updatedEnquiry);
}

结果是一个EntityCollection 服务是一个IOrganizationService

事件,团队和用户实体是开箱即用的CRM 2011实体。

工作流程在事件记录上结束后,所有者未更改。

如何使用新数据更新此所有者字段?

1 个答案:

答案 0 :(得分:3)

要更新所有者,您需要使用AssignRequest,而无需为name

指定EntityReference属性
// incidentId holds the record ID Guid to update

if (results.Entities.Count > 0)
{
    // get the right team
    Entity team = results.Entities[0];

    AssignRequest assignRequest = new AssignRequest
        {
            Assignee = new EntityReference("team", team.Id),
            Target = new EntityReference("incident", incidentId)
        };
    Service.Execute(assignRequest);
}