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



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

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为"取消"或"完成"。我在控制台应用程序中运行此代码并收到该错误。

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

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

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

请提供总代码。我在这里看到,您声明了一个新的组织服务,就像您之前使用过的那样(用于检索多个(。

也许使用相同的服务,只是:)修复您的问题,但通过总代码,我们也许可以提供更多帮助。

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

最新更新