Dynamics crm 是否通过web服务更新MS CRM中的活动?
我整个上午都在试着这么做。有没有人有一个代码片段(C#)显示如何通过webservice更新CRM中的“活动”? 我可以使用实体创建ReadUpdateDelete,但我不确定如何使用活动Dynamics crm 是否通过web服务更新MS CRM中的活动?,dynamics-crm,Dynamics Crm,我整个上午都在试着这么做。有没有人有一个代码片段(C#)显示如何通过webservice更新CRM中的“活动”? 我可以使用实体创建ReadUpdateDelete,但我不确定如何使用活动 在谷歌上也找不到任何东西…你特别想要更新什么?基本上,更新活动就像更新任何其他实体一样,您只需使用任务实体 public void CloseTask(CrmService crmsvc, Guid activityid, DateTime start, DateTime end) { ColumnS
在谷歌上也找不到任何东西…你特别想要更新什么?基本上,更新活动就像更新任何其他实体一样,您只需使用
任务
实体
public void CloseTask(CrmService crmsvc, Guid activityid, DateTime start, DateTime end)
{
ColumnSet cols = new ColumnSet();
cols.Attributes = new string[] { "activityid", "statecode" };
task tsk = (task)crmsvc.Retrieve(EntityName.task.ToString(), activityid, cols);
if(tsk.statecode.Value != TaskState.Open)
return;
tsk.actualstart = new CRMDateTime();
tsk.actualstart.value = start.ToString();
tsk.actualend = new CRMDateTime();
tsk.actualend.value = end.ToString();
crmsvc.Update(tsk);
SetStateTaskRequest state = new SetStateTaskRequest();
state.EntityId = activityid;
state.TaskState = TaskState.Completed;
state.TaskStatus = -1; // Let MS CRM decide this property;
SetStateTaskResponse stateSet = (SetStateTaskResponse)crmsvc.Execute(state);
}
编辑:添加了一些示例代码。注意,我必须修改我必须剥离的一些专有代码,所以我不知道这是否会真正编译。不过很接近。您特别想要更新什么?基本上,更新活动就像更新任何其他实体一样,您只需使用
任务
实体
public void CloseTask(CrmService crmsvc, Guid activityid, DateTime start, DateTime end)
{
ColumnSet cols = new ColumnSet();
cols.Attributes = new string[] { "activityid", "statecode" };
task tsk = (task)crmsvc.Retrieve(EntityName.task.ToString(), activityid, cols);
if(tsk.statecode.Value != TaskState.Open)
return;
tsk.actualstart = new CRMDateTime();
tsk.actualstart.value = start.ToString();
tsk.actualend = new CRMDateTime();
tsk.actualend.value = end.ToString();
crmsvc.Update(tsk);
SetStateTaskRequest state = new SetStateTaskRequest();
state.EntityId = activityid;
state.TaskState = TaskState.Completed;
state.TaskStatus = -1; // Let MS CRM decide this property;
SetStateTaskResponse stateSet = (SetStateTaskResponse)crmsvc.Execute(state);
}
编辑:添加了一些示例代码。注意,我必须修改我必须剥离的一些专有代码,所以我不知道这是否会真正编译。不过很接近。我们还可以使用程序集版本控制更新自定义工作流活动。以下链接提供了更多信息:
我们还可以使用程序集版本控制更新自定义工作流活动。以下链接提供了更多信息:
嗯。。它表示具有该Guid的任务不存在。这是一项活动。。我知道guid在那里…这是实际的错误消息:0x80040217 Id=84112d9e-db9b-df11-910a-00155d0a3024的任务在平台上不存在。事实上,想想看,我们的活动甚至没有这些任务状态,我们有“待定”“批准”“拒绝”。。。我认为“任务”在这里不起作用。你用的是什么版本?这应该适用于3.0和4.0。您的活动是一个不同的自定义实体吗?自定义活动,对不起,不能再说(NDA)了。。它表示具有该Guid的任务不存在。这是一项活动。。我知道guid在那里…这是实际的错误消息:0x80040217 Id=84112d9e-db9b-df11-910a-00155d0a3024的任务在平台上不存在。事实上,想想看,我们的活动甚至没有这些任务状态,我们有“待定”“批准”“拒绝”。。。我认为“任务”在这里不起作用。你用的是什么版本?这应该适用于3.0和4.0。您的活动是一个不同的自定义实体吗?自定义活动,对不起,不能再说了(NDA)。这似乎是关于活动实体记录,而不是CWA。此外,使用程序集版本控制会破坏现有工作流,至少在CRM 4中是这样。这似乎是关于活动实体记录,而不是CWA。此外,使用程序集版本控制会破坏现有工作流,至少在CRM 4中是这样。