BI綜述:
BI(Business Intelligence)即商務智能,它是一套完整的解決方案,用來將企業中現有的數據進行有效的整合,快速準確的提供報表並提出決策依據,幫助企業做出明智的業務經營決策。轉自百科。
Dynamic CRM:
Microsoft Dynamics CRM是全球唯一以銷售生產力爲導向、對業務流程度高度可定製的客戶關係管理系統。與Microsoft Office的完全集成,可以讓用戶輕鬆創建並維護清晰明瞭的客戶數據,提供快速、靈活且經濟實惠的客戶交互工具,強化和改進公司的銷售、營銷和客戶服務。轉自官網。
學習過程:
1.前情概要。
作爲一名CRM 開發兼職CRM Admin,當然十八般武藝樣樣精通。本人剛剛參加工作,不到半年,在校期間接觸過Arcgis然後現在天天面對Dynamic CRM,好像然並卵。不過我仍然懷着一顆熱忱的心來做CRM。
2.環境配置。
Dynamic CRM 的環境必須有,SQL Server必須有。VS你可以沒有(如果你可以拿記事本)最好是2010版本。我經過多方測試從2010到2015都有試過,只在2010下好使,不知道這個設定是個什麼鬼。
*CRM2013-Bids-ENU-i386這個插件一定要有。
Note:you should install Microsoft SQL Server 2008 first and during the installation,remember to select “Business Intelligence”.
3.創建一個Report。
如圖所示當我們插件安裝完成會在Solution模板裏生成一個BI的目錄,選擇創建Report Server Project。命名按照各自規定來。
這裏進入之後啥也沒有。。。
Repors目錄下創建一個新的rdl報表文件。
View——>Report Data——>Data Source——>配置查詢方式(這裏講FetchXML)&鏈接數據源&UserName/Password
1.Connection String:
http://127.0.0.1/;testreport http://127.0.0.1 IP 訪問地址 如果有端口號一併輸入ex: http://127.0.0.1:5555
testreport這個是CRM的 Organization 。IP 用端口隔開。
ex:
1.http://127.0.0.1/;testreport
2.https://127.0.0.1/;testreport
3.http://127.0.0.1:5555/;testreport
4.https://127.0.0.1:5555/;testreport
2.Credentials下設置賬戶密碼。
本地驗證 和 賬戶密碼驗證。
本地驗證:僅限CRM部署的環境和當前環境一致,不再贅述,能做Report 就對這個再熟悉不過了。
賬戶密碼驗證:development\administrator Domain\Administrator Administrator@Domain 密碼就是密碼自己配置的。
3.FetchXML。
做過Dynamic CRM的都知道FetchXML是CRM的獨特的查詢方式,如果對此不是很熟悉恰好你對SQL很熟悉推薦一款在線工具。http://www.sql2fetchxml.com/
首先我們建立一張dataset並連上Datasource。
緊接着我們Query我們想要的數據。
<fetch distinct="false" no-lock="true" mapping="logical">
<entity name="ave_fwintake" enableprefiltering="1" prefilterparametername="CRM_Filteredave_FWIntake">
<attribute name="ave_fwintakecasedetailsguid" alias="ave_fwintakecasedetailsguid" />
<attribute name="ownerid" alias="ownerid" />
<attribute name="ave_fwintakeintakenotext" alias="ave_fwintakeintakenotext" />
<attribute name="ave_fwintakeid" />
<link-entity name="systemuser" from="systemuserid" to="ave_fwintakecasesupervisorguid" alias="ab" link-type="outer">
<attribute name="ave_userdesignationtext"/>
<attribute name="fullname" />
</link-entity>
<link-entity name="systemuser" from="systemuserid" to="owninguser" alias="ac" link-type="outer">
<attribute name="ave_userdesignationtext"/>
</link-entity>
</entity>
</fetch>
和SQL裏的一樣可調試。
注意幾點:
1. Entity下的enableprefiltering="1"。(只顯示一條在有些Report中我們只需要一條數據後面我們講到Cube數據建模我們再討論處理大數據的問題)
2.link-entity下的link-type="outer"。外聯 內聯 左聯 多表聯查屬性。
3.fetch 下的distinct="false" no-lock="true" mapping="logical",排序啊 鎖DB Mapping之類的,具體什麼屬性有一些我也不太懂。我纔剛剛參加工作做到這樣的確不容易。(還請各位大俠不吝賜教!)
4.設計報表,綁定Set,Set可以是多個。但是在報表中一個table內只能綁定一個set。
如圖所示:一個簡單的表就形成了 Preview 如果能成功就可以上傳到CRM上跑一跑。
那這就成功了!
首發,瑕疵還望指教!