2011-12-06 82 views
1

我正在使用CRM 2011(新手...)並創建一個插件來檢查事件是否具有活動記錄。如果沒有活動記錄,則事件無法解決。使用插件禁用功能區按鈕

我有一個自定義按鈕啓動對話框向用戶詢問幾件事,然後設置事件狀態爲已解決。

我想,這是什麼按鈕,因爲沒有活動記錄,只要禁用...

到底如何我能做到這一點?

Thx預先

回答

2

我不確定這是一個可以設置爲功能區按鈕的規則。

These are the rules您可以在功能區按鈕上設置,並且我看不到一個允許您基於相關實體數量禁用的功能。

我在編輯任何色帶時使用this,所以我可能會玩一下,看看你是否可以做你需要它做的事情。

我的預感是做一個提取查詢作爲對話框的第一步,如果返回結果0(即查詢找到相關的活動記錄)來結束對話框。

+0

這太棒了!非常感謝你 ! 還有一個問題,你碰巧知道我是否可以添加一個個性化的消息來解釋這個用戶爲什麼對話結束? 再次,謝謝! – MademoiselleLenore

+0

從看Ckellers答案,似乎在我的答案中有一個[自定義規則](http://msdn.microsoft.com/en-us/library/gg309433.aspx)類型的鏈接,其中,基於在JavaScript上,您可以決定根據自己的邏輯返回true或false,如果沒有活動記錄,這會給您禁用的行爲。如果您只想在結束對話框之前輸出消息,請使用提示和響應。把你的消息,但不允許響應類型。 – Chris

+0

好吧,我已經試過並決定使用對話框,以保持與我的解決方案的其餘部分相同的邏輯。非常感謝 ! – MademoiselleLenore

1

你不能用插件來做到這一點。插件在服務器端執行。

您試圖實現的是根據特定條件更改UI。您可以使用自定義EnableRule。在這個規則中,你可以引用一個CustomRule,它基本上是對web資源中的JavaScript函數的引用。在此腳本中,您可以評估上下文(FetchXml請求/ OData),並確定規則是否應評估爲true/false,因此啓用/禁用ribbon元素。

+0

對,這聽起來也是一個很好的方法。我也會嘗試。 謝謝 – MademoiselleLenore

+0

+1 - 感謝「CustomRule」鏈接。 –