在項目中我們可能會遇見這種情況,不同的Profile擁有不同的頁面,頁面中的PickList标簽可能顯示不同的值。這個時候,使用Record Types可以很便捷的搞定需求。
Record Types允許在相同的object中為資料定義多個UI。使用者通過Profile進行分組,不同的Profile可以設定不同的Page Layout 以及顯示不同的PickList的item值。
簡單需求描述如下(以Goods__c為例):
1.Profile為Admin的使用者可以看到所有的字段,Profile為其他的使用者不能看到GoodsCostPrice__c;
2.Profile為Admin的使用者可以看到類型為PickList的GoodsBrand__c所有值,Profile為其他的使用者隻能看到GoodsBrand__c的一部分值。
(注:需求隻是随便寫的)
實作上述功能可以通過Record Types實作,先定義兩個Page Layouts,使不同的Profile顯示不同的頁面,然後定義兩個Record Types,使不同的Profile顯示的PickList的值不同。
一.建立PageLayout
setup->Create->Objects->Goods__c進入具體的sObject.在Page Layouts中建立兩個Page Layout
Goods Layout For Admin顯示所有的字段,如下圖所示
Goods Layout For Other User顯示除GoodsCostPrice以外的所有字段,如下圖所示
二.建立Record Types
建立兩個Record Types,分給不同的Profile,如下圖所示
其中ShowUIByAdmin建立步驟如下:
1.點選New後輸入具體的資訊,然後選擇需要設定可見的Profile後點選Next;
2.配置設定不同的Page Layouts給相關的Profile;
3.點選Save以後,會顯示下圖所示頁面,點選下方Edit,修改相關的PickList的Item Value值;
4.修改GoodsBrand的顯示項後Save,則名為ShowUIByAdmin的Record Type建立成功;
5.按照上述1-4建立另外的Record Types,配置設定相關的Page Layouts以及設定不同的Picklist Values的值。
顯示效果如下:
Profile為Admin的顯示頁面
Profile為other user的顯示頁面
總結:Record Types可以基于不同的Profile設定不同的顯示頁面以及不同的PickList的Values,并且隻能基于Profile,如果項目通過Permission Set進行分組則無法使用Record Types.如果篇中有描述錯誤的地方歡迎指正,如果有疑問的地方歡迎留言。
作者:zero
部落格位址:http://www.cnblogs.com/zero-zyq/
本文歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接
個人下載下傳了一些相關學習的PDF檔案,如果需要下載下傳請通路百度雲 點選此處通路 密碼:jhuy
如果文章的内容對你有幫助,歡迎點贊~
為友善手機端檢視部落格,現正在将部落格遷移至微信公衆号:Salesforce零基礎學習,歡迎各位關注。