天天看點

salesforce 零基礎學習(四十)Custom Settings簡單使用

有時候,項目中我們需要設定類似白名單的功能,即某些使用者或者某種Profile的使用者不走一些校驗或者走一些校驗,這時,使用Custom Settings功能可以很好的解決這一需求。

Custom Settings建立類似于Custom Object,但是兩者用法上有一些差別:Custom Setting可以通過條件配置來區分特定的使用者,或者Profile。

Custom Settings可以應用到很多場景,因為可以通過特定使用者和Profile進行配置,是以設定白名單或者相反的功能很容易,除此之外還可以應用到其他場景,根據他的功能自行來使用。

Custom Setting有兩種類型:

1.List Custom Settings:用于建立一組靜态的資料;

2.Hierarchy Custom Settings:通過指定的Profile或者使用者設定指定的資料。

兩種選擇上通常可以選擇第二種,因為第二種用起來更加靈活,如果确定資料是固定的也可以選擇第一種。

 接下來的步驟用來實作配置Custom Setting的使用者不走某種校驗,沒有配置Custom Setting的使用者需要走某種校驗的功能。

一.建立步驟:

1.Setup->Build->Develop->Custom Settings,進入後選擇new

salesforce 零基礎學習(四十)Custom Settings簡單使用
2.填寫基本資訊後save
salesforce 零基礎學習(四十)Custom Settings簡單使用
3.點選new按鈕添加需要的字段
salesforce 零基礎學習(四十)Custom Settings簡單使用
4.點選上圖的manage,添加紀錄并進行記錄配置設定
salesforce 零基礎學習(四十)Custom Settings簡單使用
5.配置設定完成,這裡我們看一下下圖描述,當type為List情況,選擇上方的new,當type為hierarchy情況下,選擇下方的new按鈕
salesforce 零基礎學習(四十)Custom Settings簡單使用

二.程式實作調用

Custom Setting調用方式和sObject方式基本相同。需求為當添加一條Goods,當不是白名單的使用者,走Validate校驗時,要求GoodsPrice__c必須大于GoodsCostPrice__c,當然需求是随便編的。。。

調用可參看:https://help.salesforce.com/HTViewHelpDoc?id=cs_accessing.htm&language=en_US

salesforce 零基礎學習(四十)Custom Settings簡單使用
Goods的Trigger代碼如下:

trigger GoodsTrigger on Goods__c (before insert) {
    if(trigger.isBefore) {
        if(trigger.isInsert) {
            GoodsValidateWhiteList__c currentGoodsValidateWhiteList = GoodsValidateWhiteList__c.getInstance(UserInfo.getUserId());if(currentGoodsValidateWhiteList == null || currentGoodsValidateWhiteList.IsActive__c == false || 
          currentGoodsValidateWhiteList.IsVisible__c == false) {
                for(Goods__c goods : trigger.new) {
                    if(goods.GoodsPrice__c < goods.GoodsCostPrice__c) {
                        goods.addError('GoodsPrice應該不小于GoodsCostPrice');
                    }
                }
            }
        }
    } 
}      

三.運作效果顯示

1.當使用配置的白名單使用者登入時,當GoodsPrice小于GoodsCostPrice也無所謂,因為不走validate.

salesforce 零基礎學習(四十)Custom Settings簡單使用

2.當使用其他使用者登入時,由于沒有配置白名單,需要校驗GoodsPrice和GoodsCostPrice.

salesforce 零基礎學習(四十)Custom Settings簡單使用

總結:使用Custom Setting可以更細緻的針對Profile或者User進行資料配置設定,如果有類似需求情況下,此種方式會更加高效實作功能。如果篇中有描述錯誤的地方,歡迎批評指正,如果有不懂得地方歡迎留言。

作者:zero

部落格位址:http://www.cnblogs.com/zero-zyq/

本文歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接

個人下載下傳了一些相關學習的PDF檔案,如果需要下載下傳請通路百度雲 點選此處通路 密碼:jhuy

如果文章的内容對你有幫助,歡迎點贊~

為友善手機端檢視部落格,現正在将部落格遷移至微信公衆号:Salesforce零基礎學習,歡迎各位關注。