Activity Forums Salesforce® Discussions How to use a custom setting in apex class in salesforce?

  • Yogesh

    Member
    October 17, 2019 at 7:15 am

    Hello,

    Custom settings are like custom objects, but have an organization wide access. Data can be added in them like any Object, through APEX code, or by creating new record. However the access is available organization wide.

    There are two types of custom settings:

    List Custom Settings: A type of custom setting that provides a reusable set of static data that can be accessed across your organization.

    Hierarchy Custom Settings: A type of custom setting that uses a built-in hierarchical logic that lets you personalize settings for specific profiles or users.

    You can query Custom Settings using following Methods :

    List Custom Setting Methods
    The following are instance methods for list custom settings.
    getAll()
    Returns a map of the data sets defined for the custom setting.
    getInstance(dataSetName)
    Returns the custom setting data set record for the specified data set name. This method returns the exact same object as getValues(dataSetName).
    getValues(dataSetName)
    Returns the custom setting data set record for the specified data set name. This method returns the exact same object as getInstance(dataSetName).

     

    Thanks

  • Saddam

    Member
    October 17, 2019 at 7:21 am

    Hi,

    Custom settings are similar to custom objects and enable application developers to create custom sets of data, as well as create and associate custom data for an organization, profile, or specific user. All custom settings data is exposed in the application cache, which enables efficient access without the cost of repeated queries to the database. This data can then be used by formula fields, validation rules, flows, Apex, and the SOAP API.

    There are two types of custom settings:

    List Custom Settings
    A type of custom setting that provides a reusable set of static data that can be accessed across your organization. If you use a particular set of data frequently within your application, putting that data in a list custom setting streamlines access to it. Data in list settings does not vary with profile or user, but is available organization-wide. Examples of list data include two-letter state abbreviations, international dialing prefixes, and catalog numbers for products. Because the data is cached, access is low-cost and efficient: you don't have to use SOQL queries that count against your governor limits.

    Hierarchy Custom Settings
    A type of custom setting that uses a built-in hierarchical logic that lets you “personalize” settings for specific profiles or users. The hierarchy logic checks the organization, profile, and user settings for the current user and returns the most specific, or “lowest,” value. In the hierarchy, settings for an organization are overridden by profile settings, which, in turn, are overridden by user settings.

    Custom Setting Examples
    The following example uses a list custom setting called Games. Games has a field called GameType. This example determines if the value of the first data set is equal to the string PC.

    List<Games__C> mcs = Games__c.getall().values();
    boolean textField = null;
    if (mcs[0].GameType__c == 'PC') {
    textField = true;
    }
    system.assertEquals(textField, true);

Log In to reply.

Popular Salesforce Blogs

Popular Salesforce Videos