2011-08-01 35 views

回答

1

報告
自定義實體來看看一個報告Account Overview.rdl。它可以針對單個帳戶記錄或多個記錄執行。

Reporting for Microsoft Dynamics CRM Using Microsoft SQL Server Reporting Services

+0

雖然這是由項目要求和自定義實體規定的自定義SSRS報告。這仍然能夠工作/修改與自定義實體和項目的要求一起工作嗎? –

+0

您可以將此報告用作您自己的針對您的特定實體的示例。 – ccellar

+0

我現在來看看... –

5

這裏是你的問題更具體的鏈接:link。如果您希望報告具有特定的記錄(上下文相關),則您可能正在尋找預過濾(請在提供的鏈接中查找「3.預過濾元素」)。

下面是描述兩種預過濾器(CRM 4.0,但理論適用於CRM 2011)的鏈接:link。以下是CRM 2011中的前置過濾示例:link

我已在CRM 2011中成功完成了這項工作,並在BIDS中對自定義實體進行了完全自定義的報告,並且具有完整的上下文敏感性。

請務必學習fetchXML,因爲它將成爲這些報告的前進技術。現有的報告正在使用SQL,這使得它們成爲不好的例子。

下面是關於如何從高級查找中提取fetchXML的示例:link它還具有有關預過濾的更多信息。

0
  1. 爲您想要定位的環境創建到CRM數據庫引擎的嵌入式連接。
  2. 創建一個嵌入數據集來查詢當前記錄。這有點奇怪,因爲經驗會告訴你,你將獲得大量的記錄,但由於CRM背後的笨拙,它實際上只會得到當前的記錄。例如,如果您想獲取當前報價,您可以使用「SELECT quoteid FROM FilteredQuote AS CRMAF_Quote
  3. 添加一個參數以存儲對您剛纔查詢的實體的參考。爲了保持這個例子,我創建了@QuoteFilter這是類型文本,可以存儲多個值(即使這不是我們使用它的值),並在步驟2中從數據集獲取其默認值。此外,可能應該做到這一點隱藏,因爲GUID不是最終用戶友好的。
  4. 最後,使用在其他數據集的where子句中發現的參數。例如,對於目前的報價在報價單產品搜索看起來像SELECT * FROM FilteredQuoteDetail WHERE (quoteid = @QuoteFilter)

最後一點,你應該記住,CRM喜歡記住,即使你不希望它也應有盡有。在我的一份報告中,我搞砸了我的數據源,CRM始終相信報告應該對所有記錄運行。我修復了我的數據源,但上傳報告並未觸發刷新並糾正問題。最後,我從CRM中刪除了這個報告,創建了一個新的報告,上傳了沒有更改的相同的確切文件,並且一切正常。去搞清楚。