重新打开已关闭或使用控制台应用程序取消活动

时间:2018-10-02 17:41:23

标签: dynamics-crm dynamics-crm-2015

当我尝试重新打开约会时收到此错误:“无法更新已关闭或已取消的活动” 这是我的代码:

var connectionString = ConfigurationManager.ConnectionStrings["crmConnection"].ConnectionString;
var conn = CrmConnection.Parse(connectionString);
var service = new OrganizationService(conn);
var stateRequest = new SetStateRequest
{
  State = new OptionSetValue(0),
  Status = new OptionSetValue(1),
  EntityMoniker = entity.ToEntityReference()
};
service.Execute(stateRequest);

我要从RetrieveMultiple(query)获得实体,其中StateCode是“取消”或“完成”。我在控制台应用程序中运行此代码并得到该错误。

PS: 我在新版本中编写了代码,但再次出现此错误:

entity.SetAttributeValue<OptionSetValue>("statecode", 0);
entity.SetAttributeValue<OptionSetValue>("statuscode", 1);
var request = new UpdateRequest { Target = entity };
var response = (UpdateResponse)_organizationService.Execute(request);

2 个答案:

答案 0 :(得分:0)

请提供总代码。我在这里看到,您声明了一个新的OrganisationService,因为您之前使用过(对于retrieveMultiple)。

也许使用相同的服务,只是解决了您的问题:),但是使用总代码,我们可能会提供更多帮助。

除已弃用的讨论外。您正在使用CRM 2015,因为它似乎已被标记出来?据我所知,它仅在D365中使用过(希望我在这里没有记错;))

答案 1 :(得分:0)

最后,经过8个小时的工作,我明白了!这太荒谬了,但值得知道。该错误是由我之前注册的另一个插件引起的。当“ StateCode”字段更改时,该插件已在“更新”消息上注册。我禁用了该步骤,我的弃用功能已经起作用! 在异常消息中,您无法理解哪个插件引发了错误。