2
我已經創建了我在工作流中使用的自定義CRM活動。 我將此活動用作自定義工作流活動的InArgument。 在Execute()方法中,我嘗試將自定義CRM活動實例的OwnerId設置爲系統用戶,並對使用CrmSvcUtil生成的上下文對象調用UpdateObject(實體)。設置自定義活動的OwnerId
[Input("Some name")]
[ReferenceEntity("mycustomactivity")]
[Required]
public InArgument<EntityReference> MyCustomActivity{get;set;}
void Execute(CodeActivityContext context)
{
IOrganizationService svc = context.GetExtension<IOrganizationService>();
var customActivityReference = MyCustomActivity.GetValue(MyCustomActivity);
//MyServiceContext is an OrganizationServiceContext generated using CrmSvcUtil
MyServiceContext servicecontext = new MyServiceContext(svc);
//GetCutomActivityInstance uses the Id to get an instance of the custom activity)
MyCustomCRMActivity activityInstance = GetCutomActivityInstance (servicecontext,customActivityReference.Id);
activityInstance.OwnerId = new EntityReference("systemuser",<SomeGUID>);
context.UpdateObject(activityInstance);
context.SaveChanges();
}
以上不工作,活動所有者默認爲我的CRM用戶帳戶,而不是更新,以反映我在activityInstance.OwnerId
設置所有者任何幫助將非常感激。
感謝您response.Is的分配步只爲插件或也CRM工作流程中的定製活動?我將嘗試AssignRequest並在此處報告。另外,當收到工作流中的任務或任何自定義活動等「crm活動」時,InArgument的類型參數應爲「EntityReference」正確嗎?即[ReferenceEntity(「mycustomactivity」)] [必需] public InArgument MyCustomActivity {get; set;} –
2011-12-16 16:18:01