我需要爲動態CRM 4.0編寫一個插件,當重新打開關閉的商機以更改銷售代碼時執行該插件。我的問題是:客戶關係管理插件在機會重新開放時執行
- 當我向插件註冊新的步驟時,應該過濾哪些屬性?
- 我應該檢查實體的哪些屬性?和
- 我該如何查找此實體的值才能確定插件執行是否應該繼續?
我通常寫異步工作流和我的經驗編寫插件還在發展,所以我會很感激,可以提供任何幫助和澄清。
請參閱插件骨架下面我寫
public void Execute(IPluginExecutionContext context)
{
if (context.InputParameters.Properties.Contains("Target") && context.InputParameters.Properties["Target"] is DynamicEntity)
{
ICrmService service = context.CreateCrmService(false);
DynamicEntity entity = (DynamicEntity)context.InputParameters.Properties["Target"];
if (entity.Name == EntityName.opportunity.ToString())
{
if (entity.Properties.Contains(/*What Property Should I Check Here?*/))
{
//And what value should I be looking for in that property?
}
}
}
}
Microsoft建議對SetState和SetStateDynamicEntity消息進行雙重註冊,因爲您無法始終確定哪個消息會被觸發。 – 2010-06-24 14:26:13