What is the difference between apex:dataTable and apex:pageBlockTable

Only standard style sheets can be used in apex:pageBlockTable tag in Visualforce page. <apex:pageBlockTable> must be contained in <apex:pageBlock> or <apex:pageBlockSection>.

If we want to add custom style sheets we have to use apex:dataTable tag in Visualforce page.

Sample Code:

Visualforce page:

<apex:page controller="sample" sidebar="false" >
<style type="text/css">
    .outBorder
    {
        border:3px outset black;
    }
   
    .inBorder
    {
        border-top:3px dotted black;
        border-left:3px dotted black;
    }   
</style>
    <apex:pageBlock title="Pageblock Table">
        <apex:pageblockTable value="{!acc}" var="a">
            <apex:column value="{!a.Name}"/>
            <apex:column value="{!a.Name}"/>           
        </apex:pageblockTable>
    </apex:pageBlock>
   
    <apex:pageBlock title="Data Table">
        <apex:dataTable value="{!acc}" var="a" styleClass="outBorder" width="550px">
            <apex:column styleClass="inBorder">
                <apex:facet name="header">Account Name</apex:facet>
                <apex:outputText >{!a.Name}</apex:outputText>
            </apex:column>      
            <apex:column styleClass="inBorder">
                <apex:facet name="header">Account Number</apex:facet>
                <apex:outputText >{!a.AccountNumber}</apex:outputText>
            </apex:column>             
        </apex:dataTable>
    </apex:pageBlock>   
</apex:page>


Apex Controller:

 public with sharing class sample
{

    public List<Account> acc {get;set;}
    public sample()
    {
        acc = [SELECT Name, AccountNumber FROM Account];
    } 
   
}


Output:



Cheers!!!

What is the use of Mini Console View in Salesforce?

Mini Console View is used to customize fields that should be visible in Mini view section in Console Tab.

1. Click "Mini Console View" link.


2. Select the Objects(These objects will be parent to this object). Here Interest is child to Member, its why member is shown in the list to select.


Here Interest is child to Member, its why Member is shown in the list to select.

3. Click Save button.


4. Now go to Member object's page layout and click "Mini Page Layout" link.


5. Select the fields and related lists to be displayed.


6. Click "Save" button.

Note: To view the output, kindly click "Console Tab".
To know about Console Tab, kindly check the below link

http://infallibletechie.blogspot.in/2013/04/console-tab-in-salesforce.html

Output:

Dynamic Dashboard in Salesforce

A dynamic dashboard displays the data of the user viewing it rather than the dta of a specified running user. Optionally, authorized useers can change the running user directly from the dashboard view page.

Users automatically view dashboard as themselves. Users with "View My Team's Dashboards" permission can change view to another user.

  1. Dashboard which is running under current logged in user permission are known as “dynamic Dasboard”. 
  2. At the most 3 dynamic dashboards can be built
  3. Available in Unlimited, Enterprise and developer edition. 
  4. Dynamic dashboard cannot be scheduled for refresh. It must be scheduled manually.
Cheers!!!

Order of execution in Salesforce

1. System Validation Rules.

2. Executes all before triggers.

3. Custom Validation rules.

4. Executes all after triggers.

5. Executes assignment rules.

6. Executes auto-response rules.

7. Executes workflow rules.

8. If there are workflow field updates, updates the record again.

9. If the record was updated with workflow field updates, fires before and after triggers one more time. Custom validation rules are not run again.

10.  Executes escalation rules.

11. If the record contains a roll-up summary field or is part of a cross-object workflow, performs calculations and updates the roll-up summary field in the parent record. Parent record goes through save procedure.

12. If the parent record is updated, and a grand-parent record contains a roll-up summary field or is part of a cross-object workflow, performs calculations and updates the roll-up summary field in the parent record. Grand-parent record goes through save procedure.

13. Executes Criteria Based Sharing evaluation.

14. Commits all DML operations to the database.

15. Executes post-commit logic. Ex: Sending email.

Cheers!!!

What are governor limits in Salesforce?

Governor limits are runtime limits enforced by the Apex runtime engine. Since Apex runs in a shared, multitenant environment, the Apex runtime engine strictly enforces a number of limits to ensure that code does not monopolize shared resources.

Types of limits that Apex enforces are resources like

1. Memory
2. Database resources
3. Number of script statements to avoid infinite loops
4. Number of records being processed. If code exceeds a limit, the associated governor issues a runtime exception.

Because Apex runs in a multitenant environment, the Apex runtime engine strictly enforces a number of limits to ensure that runaway Apex doesn’t monopolize shared resources. If some Apex code ever exceeds a limit, the associated governor issues a runtime exception that cannot be handled.

The Apex limits, or governors, track and enforce the statistics outlined in the following tables and sections.

1. Per-Transaction Apex Limits
2. Per-Transaction Certified Managed Package Limits
3. Force.com Platform Apex Limits
4. Static Apex Limits
5. Size-Specific Apex Limits
6. Miscellaneous Apex Limits

Cheers!!!

Merge fields in Salesforce

Sample Code:

Visualforce page:

<apex:page controller="sample" sidebar="false" >
<b>Merge fields in Salesforce</b><br/><br/>
{!$Profile.Name}<br/>
{!$User.FirstName}<br/>
{!$User.LastName}<br/>
{!$ObjectType.Account.Fields.Name.Label}<br/>
{!$ObjectType.Member__c.Fields.Name.Label}<br/>
</apex:page>


Output:


How to add users to my Opportunity team in Salesforce?

1. Go to Setup --> My Personal Information.




2. In the Default Opportunity Team related list, click Add.




3. Select users to add as members of your default opportunity team.
4. Select the access that each opportunity team member has on your opportunities. The access level can’t be 5. less than your organization’s default opportunity sharing access.
6. Select an opportunity team role for each member, for example, Account Manager.
7. To add your default opportunity team to all opportunities that you create and all open opportunities that are transferred to you, select Automatically add my default opportunity team. The opportunity team on closed opportunities that are transferred to you isn’t affected by this option.
8. To apply the default opportunity team changes to all your existing open opportunities, select Update open opportunity teams. Closed opportunities are not affected.
9.Click Save.


Salesforce Interview questions with answers Part 7

1)What is look-up filter and how it is useful?

Lookup filter is used to filter records when we lookup for the records.
Used in Lookup dialogs.

http://infallibletechie.blogspot.com/2013/04/lookup-filter-in-salesforce.html


2)When a task is assigned to user through web to lead or web to case through assignment rules,where the tasks are appeared for that particular user?

Home page of the user.

http://infallibletechie.blogspot.com/2013/04/where-to-view-assigned-tasks-in.html


3)When a case is generated by an user through web to case,how or where a developer will provide solution case arised?


Email notification through trigger or through email alert Workflow rule.


4)what is the use of interfaces(in apex classes)?

An interface is like a class in which none of the methods have been implemented—the method signatures are there, but the body of each method is empty. To use an interface, another class must implement it by providing a body for all of the methods contained in the interface.

Interfaces can provide a layer of abstraction to your code. They separate the specific implementation of a method from the declaration for that method. This way you can have different implementations of a method based on your specific application.

http://www.salesforce.com/us/developer/docs/apexcode/Content/apex_classes_interfaces.htm


5)I have added an string 'updated' to all users in Account object through batch apex,now how to remove that 'updated'?

Run the below code in developer console

List<Account> acc =[SELECT Id, Name FROM Account];
for(Account a : acc)
{
    a.Name = a.Name.removeEnd('Updated');
    update a;
}

Where to view assigned Tasks in Salesforce?

To view assigned tasks, go to your home page.


Lookup filter in Salesforce

Lookup filter is used to filter records when we lookup for the records.
Used in Lookup dialogs.


In the above example, I have created a Lookup relationship(Member is parent and Interest is child).
Here, whenever we create Interest record, it will fetch only Member records with Status "New".


Output:


Related lookup filter will be automatically created in object definition.


Cheers!!!

Hide and show example using Apex in Salesforce

Sample Code:

Visualforce page:

<apex:page controller="HideAndShow" sidebar="false" showHeader="false" >
<apex:form >
<p style="font-weight:800; color:#4C0000;">&nbsp;&nbsp;&nbsp;Click the buttons below to experiment Hide and Show.</p>
    <apex:pageBlock title="Block A" rendered="{!abool}">
        This is Block A.<br/><br/>       
    </apex:pageBlock>
   
    <apex:pageBlock title="Block B" rendered="{!bbool}">
        This is Block B.<br/><br/>
    </apex:pageBlock>   
   
    <apex:pageBlock >
        <apex:commandButton value="Show A" action="{!showA}" rendered="{!sabool}" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<apex:commandButton value="Show B" action="{!showB}" rendered="{!sbbool}" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<apex:commandButton value="Hide A" action="{!hideA}" rendered="{!habool}" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<apex:commandButton value="Hide B" action="{!hideB}" rendered="{!hbbool}" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<apex:commandButton value="Show A and B" action="{!showAB}" rendered="{!sabbool}"/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<apex:commandButton value="Hide A and B" action="{!hideAB}" rendered="{!habbool}"/>
    </apex:pageBlock>
</apex:form>   
</apex:page>


Apex Controller:


public class HideAndShow
{
    public Boolean abool {get;set;}
    public Boolean bbool {get;set;}
   
    public Boolean sabool {get;set;}
    public Boolean sbbool {get;set;}
    public Boolean habool {get;set;}
    public Boolean hbbool {get;set;}
    public Boolean sabbool {get;set;}
    public Boolean habbool {get;set;}
   
    public HideAndShow()
    {
        sabool = true;
        sbbool = true;
        sabbool = true;
        abool = false;
        bbool = false;
    }
   
    public void showA()
    {
        abool = true;
        check();
    }
   
    public void showB()
    {
        bbool = true;
        check();
    }  
    
    public void hideA()
    {
        abool = false;
        check();
    }
   
    public void hideB()
    {
        bbool = false;
        check();
    }  
   
    public void showAB()
    {
        abool = true;
        bbool = true;
        check();
    }  
   
    public void hideAB()
    {
        abool = false;
        bbool = false;
        check();
    }   
   
    public void check()
    {
        if(abool == true && bbool == false)
        {
            sabool = false;
            sbbool = true;
            habool = true;
            hbbool = false;
            sabbool = true;
            habbool = false;
        }
        else if(abool == false && bbool == true)
        {
            sabool = true;
            sbbool = false;
            habool = false;
            hbbool = true;
            sabbool = true;
            habbool = false;
        }
        else if(abool == true && bbool == true)
        {
            sabool = false;
            sbbool = false;
            habool = true;
            hbbool = true;
            habbool = true;
            sabbool = false;

        }
        else
        {
            sabool = true;
            sbbool = true;
            habool = false;
            hbbool = false;
            sabbool = true;
            habbool = false;
        }
    }   
}


Output:



How to Rerender multiple sections in VisualForce page?

Sample Code:

Visualforce page:

<apex:page controller="sample" sidebar="false" >
<apex:form >
    <apex:pageblock >
        <apex:pageblockSection id="m" title="Member Details" >
            <apex:pageBlockTable value="{!mem}" var="member">
                <apex:column value="{!member.Name}"/>
            </apex:pageBlockTable>
        </apex:pageblockSection>
       
        <apex:pageblockSection id="a" title="Account Details" >
            <apex:pageBlockTable value="{!acc}" var="account">
                <apex:column value="{!account.Name}"/>
            </apex:pageBlockTable>       
        </apex:pageblockSection>     
        <apex:pageBlockButtons location="bottom" >
            <apex:commandButton value="Fetch" reRender="m,a" action="{!fetch}"/>
        </apex:pageBlockButtons> 
    </apex:pageblock>
</apex:form>
</apex:page>


Apex Controller:

public class sample
{
    public List<Member__c> mem {get;set;}
    public List<Account> acc {get;set;}   
   
    public void fetch()
    {
        mem = [SELECT Name FROM Member__c];
        acc = [SELECT Name FROM Account];       
    }      
}


Output:

Before clicking "Fetch" button:


After clicking "Fetch" button:

Link to download Force.com Explorer

Note: Before downloading Force.com Explorer, kindly download and install Adobe AIR.

Use the below link to download Force.com Explorer

http://wiki.developerforce.com/page/ForceExplorer


Cheers!!!

Formula Field in Salesforce


In the above Formula field(Country Code),
if the the Country picklist value is 'India', then Country code will be 'IND',
else if the the Country picklist value is 'United States of America', then Country code will be 'USA',
else if the the Country picklist value is 'China', then Country code will be 'CHN',
else it will be blank.

Output:


How to display Custom Setting data using Apex in Visualforce page?

Sample Code:

Visualforce Page:

<apex:page controller="sample" sidebar="false" >
<apex:form >
    <apex:pageblock >
        <apex:pageblockTable value="{!code}" var="c">
            <apex:column value="{!c.Name}"/>       
            <apex:column value="{!c.Code__c}"/>
        </apex:pageblockTable>
    </apex:pageblock>
</apex:form>
</apex:page>



Apex Controller:

public class sample
{
    public List<CountryCodes__c> code {get;set;}
  
    public sample()
    {
        Map<String,CountryCodes__c> allCodes = CountryCodes__c.getAll();
        code = allCodes.values();
    } 
  
}


Output:



To add data to custom setting fields:

1. Click Setup --> Develop --> Custom Settings, then click Manage next to a custom setting. Or from the detail page for a custom setting, click Manage.


 2. Click New or Edit next to an existing data set.


 3. Add or change data.
  1. For custom settings that are lists:
    1. Specify or change the name for the data set. This name is used by Apex, formula fields, and so on.
    2. Enter or change data for all fields.
    3. Click Save.
    For custom settings that are hierarchies:
    1. For the default organization level values, enter or change the data for the fields. The default organization location is automatically populated.
    2. For profile or user level values, select either Profile or User from the Location picklist. Enter the name of the profile or user, or use the lookup dialog search. Then enter or change the data for the fields.
    3. Click Save.

Custom Settings in Salesforce

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, Apex, and the SOAP API.

Check the below site for fetching data from Custom Settings

http://www.infallibletechie.com/2013/04/how-to-display-custom-setting-data.html

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.

Limits in Custom Settings:

1. The total amount of cached data allowed for your organization is the lesser of these two values:
    i.  10 MB
    ii. 1 MB multiplied by the number of full-featured user licenses in your organization

2. Each Certified managed package gets its own separate limit in addition to your organization limit.

3. 300 fields per custom setting.

4. You can’t share a custom setting object or record.

5. No owner is assigned when a custom setting is created, so the owner can’t be changed.

6. Custom settings are a type of custom object. Each custom setting counts against the total number of custom objects available for your organization.

Cheers!!!

As a subtab of in Service cloud console in Salesforce

" As a subtab of " is used to decide how records display when they are selected from outside of primary tabs or subtabs.

For example, when users select cases from list views, search results or screen pops, you can select cases to display as primary tabs or as subtabs on parent records, such as accounts.

Sample " As a subtab of ":



In the above example, for Case I have selected as "As subtab of Account Name(Account)".

Sample Case in Account:


After opening the case:


Service Cloud console in Salesforce

A Service Cloud console is an app that’s designed for users in fast-paced environments who need to find, update, and create records quickly. It improves on the Console Tab by letting you:
  • Work with fewer clicks and less scrolling
  • Limit switching between pages
  • Use keyboard shortcuts to perform actions
  • Easily spot important fields on records
  • See records and their related items as tabs on one screen so that you never lose context or navigate too far from a record
  • Jot notes on each record in an interaction log
  • See visual indicators in real time when lists and records are changed by others
  • Solve cases by quickly scanning Salesforce Knowledge articles
  • Access a SoftPhone for Salesforce CRM Call Center in a footer instead of a sidebar
  • Chat with customers in real time using Live Agent

Cheers!!!

Job Opening for 2011, 2012, 2013

An exciting opportunity to work with Telecom giant- Alcatel Lucent.

Eligibility : BE/B.Tech - (CSE/ECE) - 2011/12/13 batches candidates having 70% and above throughout academics.

To Apply :- http://goo.gl/vW8ML?src=Alcatel-Lucent

Salary : 5.5 to 7.5 Lacs per Annum

How to add error message in Visualforce page?

Sample Code:

Visualforce page:

<apex:page controller="Sample" sidebar="false" >
<apex:pagemessages />
<apex:form >
    <apex:pageblock >     
        <apex:pageBlocksection >
            <apex:pageblockSectionItem >Name:</apex:pageblockSectionItem>
            <apex:pageblockSectionItem ><apex:inputtext value="{!nam}" /></apex:pageblockSectionItem>         
            <apex:pageblockSectionItem >Age:</apex:pageblockSectionItem>         
            <apex:pageblockSectionItem ><apex:inputtext value="{!age}" /></apex:pageblockSectionItem>         
        </apex:pageBlocksection>       
        <apex:pageblockButtons >
            <apex:commandButton value="Submit" action="{!submit}" reRender=""/>
        </apex:pageblockButtons>
    </apex:pageblock>
</apex:form>
</apex:page>


Apex Controller:

public class Sample
{
    public String nam {get;set;}
    public Decimal age {get;set;}

    public void submit()
    {
        try
        {
            Member__c m = new Member__c();
            m.Name = nam;
            m.Age__c = age;
            insert m;
        }
        catch(Exception e)
        {
            String error = e.getMessage();
            ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR,error));
        }
    }

}


Output:



Cheers!!!

How to turn off Update Reminder in Salesforce?

To turn off Update Reminder in Salesforce, kindly follow the below steps

1. Your Name --> Setup --> App Setup --> Customize --> Opportunities --> Update reminders.




2. Click edit and then uncheck the "Enable Update Reminders for My Organization" checkbox.



Output:



How to call Apex method from a Custom Button in Salesforce?

Apex Code:

global class MemberNameCheck
{
    webservice static void check(ID memId)
    {
        Member__c mem = [SELECT Name from Member__c WHERE Id =: memId];
        if(mem.Name == 'Test')
        {
            mem.Name = 'Test Updated';
            update mem;
        }
    }
}


Custom button:

{!REQUIRESCRIPT("/soap/ajax/15.0/connection.js")}
{!REQUIRESCRIPT("/soap/ajax/15.0/apex.js")}

var r = confirm("Are you sure want to check the name?");
if(r == true)
{
    sforce.apex.execute("MemberNameCheck","check",{memId:"{!Member__c.Id}"});
    location.reload(true);
}




Output:




Assignment Rule Entries in Salesforce

In Assignment Rule Entries in Salesforce, if the first rule is satisfied, rest of the rules will be checked.

Consider the below example


Rule 1:
If Case Reason contains 'Otherand Case Description is equal to 'Issue', then the case should be assigned to Magulan Pandian.

Rule 2: 
If Case Reason is equal to 'Other', then case should be assigned to Test.
Rule 3:
If Case Description is equal to 'Issue', then case should be assigned to Test.
If Rule 1 is satisfied, Rule 2 and Rule 3 will not be executed. So, be careful in Rule Entries order of execution.

Sample Output:

 

It has been assigned to Magulan Pandian, because Rule 1 is satisfied, other Rules 2 and 3 are not executed.

Personal group and Public group in Salesforce

Public groups:
Only administrators can create public groups.
They can be used by everyone in the organization.
Public Groups can be used for sharing purposes.

Personal groups:
Each user can create groups for their personal use.
They can be used only by the user who created it.
Personal groups cannot be used for sharing purposes.

Console Tab in Salesforce

The console is a tab that combines related records into one screen with different frames so that users have all the information they need when interacting with Salesforce. Common tasks are accomplished with fewer clicks and without much navigation. Administrators choose the information displayed in the console to accommodate varied and evolving business processes.

Setting up and using the Console tab:

1. Click Your Name --> Setup --> Customize --> Agents Console --> Console Layouts.



2. Click "New Button" to create a Console Layout.



3. Enter the layout name and click "Save" button.



4. Open the Console Layout and click "Edit" button in Selected List Views.


5. Add or remove objects that you want users to choose from in the list view of the console and click "Save" button.


6. Go to Create --> Apps.

7. Click "Edit" link to the app in which you want Console tab.



8. Add Console tab to the Selected Tabs and click "Save" button.



9. Go to Console Layout and click "Console Layout Assignment" button.



10. Assign it to the Profiles and click "Save" button.



11. Click "Console" tab to view it.



apex:insert, apex:composition, apex:define

Sample Code:

Visualforce pages:

Template:

<apex:page >
    <apex:outputText >Welcome to Accord</apex:outputText><br/><br/>
    <apex:insert name="header"/><br/><br/>
    <apex:outputtext >We are Pioneer in training students</apex:outputtext><br/><br/>
    <apex:insert name="body"/><br/><br/>
    <apex:outputtext >Thank You</apex:outputtext>
</apex:page>


Sample:

<apex:page sideBar="false">
    <apex:composition template="Template">
        <apex:define name="header">
            Accord welcomes you!
        </apex:define>
    </apex:composition>
</apex:page>


Output:

 

Salesforce Interview questions with answers Part 6

1. I have an account object, I have a status field which has open and completed checkboxes, when ever I click on completed, I want an opportunity to be created automatically. Through which we can achieve in salesforce?

Triggers.

2. What are workflows and what actions can be performed using workflows?


Workflows are used for automation.
  • Field Update
  • Outbound Messages
  • Email Alert
  • Task
3. What are types of workflows?
  • Immediate Workflow Actions
  • Time-Dependent Workflow Actions
4. Can you tell me what is time based workflow?

Time Based workflow will be triggered at what time we define while creating the Time-Dependent workflow rule.

5. Can you give me situation where we can you workflow rather than trigger and vice versa?


If you want to perform any action after some action, we can go for Workflow Rule.
If you want to perform any action before and after some action, we can go for Trigger.

6. Lets say I have a requirement whenever a record is created I want to insert a record on some other object?


Triggers can be used for this.

7. Whenever a record is inserted in contact I want insert a record in opportunity as well, we can’t do it with workflow right how would you do it with trigger?


We can get the Account Id from the Contact and we can create an Opportunity under the Account.

8. What is the difference between trigger.new and trigger.newmap?


Trigger.new can be used in before and after operations.

Trigger.newMap can be used in after insert and after and before update.

9. Can you tell me what is the difference between apex:actionfunction and apex:actionpoller? Is there any way that we can do the same functionality of apex:actionpoller do?


apex:actionPoller is used to call an Apex method for the interval of time specified.

apex:actionFunction is used to call Apex method from Javascript.

Using setTimeOut in Javascript, we can achieve apex:actionPoller functionalities.
 
10. What is apex:composition? Is it a tab in visual force page?


http://infallibletechie.blogspot.in/2013/04/apexinsert-apexcomposition-apexdefine.html

11. Where is apex:insert used?


http://infallibletechie.blogspot.in/2013/04/apexinsert-apexcomposition-apexdefine.html

12. You have VF page and whenever you click a button it should go to google,so how would you do that?


Use pageReference and give the google URL in that.

13. I have an opportunity object, which is having two values like open and close,i have a workflow rule,if a particular object is in open status,it should be updated to close and if status is close it should be updated to open,how should salesforce behave. what would happen to record,how would salesforce behave here?


It causes looping error.

Salesforce Interview questions with answers Part 5

1. Can you tell me brief introduction about your profile technically regarding to project?

2. In which module have you worked, say sales module or service module?

3. Can you brief me about salesforce module flow?


Sales processes include quote generation, tracking opportunity stages, updates on close dates and amounts and won opportunities.

4. How the Salesforce end to end flow?


5. Can you tell me about Rollup summary field ?


Rollup Summary field can be created in Master detail relationship alone.

Rollup Summary field should be created on master object.
 

Rollup Summary field is used to find
  • Sum
  • Count
  • Min
  • Max
of the child records.

6. Can you tell the difference between Profile and Roles?


Profiles are used for Object level access settings.

Roles are used for Record level access settings.

7. What are permission sets?


Permission Sets are used to extend Profile permissions.

8. Can you override profile permissions with permission sets(i have defined some permissions in profile,i am trying to use permission sets for the same object,can i override permissions for a particular object in the permission sets over to the profile?


No. Permission Sets are used only to extend the Profile permissions. It never overrides.

9. I want to have read/write permission for User 1 and read only for User 2, how can you acheive?


Create a Permission Set with read/write and assign it to User 1.

10. Can you tell difference between Profile, OWD or a Sharing Rule?


Profile: Profile is used for object level access. It is used to provide CRUD(Create, Read, Update and Delete) permission.

OWD: OWD is used for record level access for all the users across Organization. It is used to provide Public Read Only, Public Read/Write, Private, Public Read/Write/Transfer(Lead and Case Objects alone).

Sharing Rule: Sharing Rules is used to extend Role Hierarchy.

11. What is the role hierarchy?


Role Hierarchy states that higher hierarchy person can see lower hierarchy person records.

12. I have an OWD which is read only, how all can access my data and I want to give read write access for a particular record  to them, how can i do that?


All users can just Read the record.

Create a Sharing Rule to give Read/Write access with "Based on criteria" Sharing Rules.

13. What is the difference between role hierarchy and sharing rules?will both do the same permissions?


Role Hierarchy states that higher hierarchy person can see lower hierarchy person records.

Sharing Rule is used to extend Role Hierarchy.

Unable to find users in Schedule Future Runs in Reports in Salesforce

Problem:


Solution:  

1. Give the Report Folder access to all users.


2. Add individual users as recipients in the Schedule Future Runs.


 3. Finally re-restrict the Report Folder access to desired roles and/or groups.