2016-12-22 75 views
0

心尖檢查自定義設置權限,賦予了自定義設置「ThisSetting」包含項目「ThisSettingFirst」,「ThisSettingSecond」,「ThisSettingThird」,我將如何正確if語句這些代碼?如何從頂點代碼

如果(在-當前登錄的用戶,犯規具備的,允許閱讀,自定義設置)

如果(在-當前登錄的用戶,犯規,享有以下權利─允許對更新自定義設置)

如果(在-當前登錄的用戶,犯規具備的,允許閱讀,自定義設置,ThisSetting)

如果(the-當前登錄的用戶,犯規具備的,允許到更新自定義設置,ThisSetting)

如果(在-當前登錄的用戶,doesnt-有許可權閱讀,自定義設置,ThisSettingFirst)

如果(在-當前登錄的用戶,犯規具備的,允許到更新自定義設置,ThisSettingFirst)

謝謝。

回答

0

可以使用DescribeSObjectResult類方法來檢查當前用戶的權限爲特定的對象/設置。

Schema.sObjectType objType = Schema.getGlobalDescribe().get('ThisSetting__c'); 
Schema.DescribeSObjectResult objDesc = objType.getDescribe(); 

if(objDesc.isUpdateable()) { 
    System.debug('Updateable'); 
} 
if(objDesc.isCreateable()) { 
    System.debug('Createable'); 
} 
+0

謝謝!權限是否比設置名稱更精細,即是否有每個值的設置,還是隻有設置本身具有權限? –

+0

採用層次結構自定義設置,您可以只爲特定用戶或個人資料或組織獲取記錄。 https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_methods_system_custom_settings.htm – Reshma