我整个上午都在尝试这样做。任何人都有一个代码片段(C#),显示如何通过Web服务更新CRM中的“活动”? 我可以使用实体创建CreateReadUpdateDelete,但我不确定如何使用Activities。
在谷歌上找不到任何东西......
答案 0 :(得分:5)
您有什么特别要更新的?基本上,更新活动就像更新任何其他实体一样,您只需使用task
实体。
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);
}
编辑:添加了一些示例代码。请注意,我必须修改我必须删除的一些专有代码,所以我不知道这是否会实际编译。它虽然很接近。
答案 1 :(得分:0)
我们还可以使用程序集版本控制更新自定义工作流程活动。以下链接提供了更多信息: