Interview Questions

1) If two users A and B under same profile and Role. How can I restrict records of A to B and Vise versa?
Ans: In profile set View all data and modify all date permission is 'false' and Owd Should be Private then we can restrict data.

Difference between Data Management and Data Loader?  

Data Management Data Loader
We can insert 50000 records per Transaction.We can insert 5 million records per Transaction.
Duplicate records it cannot allow.     We can insert Duplicate Records.
We can perform operations in any custom object and four standard objects Account, Contact, Lead, Solution, Campaign member. We can perform operations in any custom and standard objects.
It can perform operations insert, update, upsert (insert + update).   It can perform operations insert, update, upsert (insert + update), delete, Export, Export all.
It allows only csv file. It allows csv all database files.

2. Difference between lookup and master details?

Lookup Master
we can create  max 40 lookup relation(including 2 master details) per object We can create max 2 master details relationship per objects.
This relation is supporting standard and custom objects Master details is supporting only custom object.
We can create lookup for empty object(without records and also with records) We can create master detail relationship only in the empty object, because parent field value is mandatory. Note: if any object contain any record first create lookup relation then fill all parent field value and change relationship type lookup to master detail.
In lookup relation parent and child contains it’s own owner. Parent and child is controlled by parent it means parent object only contains ownership on child records.
It cannot support inheritance in OWD and sharing rules.  It support inheritance in OWD and sharing rules.
It cannot support rollup summary. It support rollup summary.
In lookup parent record is deleted, child field value is deleting. But not record. In master detail parent record is deleted, Associated child record also deleted because parent field value is mandatory. Note: This rule is applicable up to 200 Childs. If any parent is associated with 200 or more then we cannot delete parent record
In lookup relation parent field value optional. In lookup relation parent field value mandatory.

3. Difference Between SOQL and SOSL?

SOQL SOSL
SOQL stands for salesforce Object query language.SOSL stands for salesforce Object search language.
Need to write different soql against diff objects.works on multiple objects at same time.
It Return list of Records.  It Return list of Sobjects.
Can be used in apex classes and triggers. Cannot be used in triggers, can be used in apex classes anonymous block.

4. Difference between Roles and Profiles

Roles Profiles
Role hierarchy doesn’t do any of these things. Profile manages the Salesforce.com License, Object permissions, Field permissions, User permissions, Tab settings, App settings, Apex class access, Visual force page access, Page layouts, Record Types, Login hours & Login IP ranges etc
Optional for User creation. Mandatory for User creation.
Maintain Record level access. Maintain object level access.
Role is not  Mandatory. Profile is Mandatory.
Role helps in opening the records to the users above the Role hierarchy . Profile helps to put restrictions on the Object.

5. Difference between Workflow and Approval Process?  

Workflow Approval Process
They are activated when a record is saved. Approval process is triggered by explicitly clicking the “Submit for Approval” button.
Workflow consists of single step and single action  Approval process consists of multiple steps. Also different action is taken based upon whether the record is approved or rejected.      Approval process consists of multiple steps. Also different action is taken based upon whether the record is approved or rejected.
Workflow consists of single step and single action.In approvals some attributes cannot be modified. Processes must be deactivated before approvals delete.

6. . Difference Between Trigger. New and Trigger.NewMap in Apex ?

Trigger. New Trigger.NewMap
Returns a list of the new versions of the sObject records.Returns a map of IDs to the new versions of the sObject records.
Note that this sObject list is only available in insert and update triggers, and the records can only be modified in before triggers. Note that this map is only available in before update, after insert, and after update triggers.
Trigger.newMap dont work for before insert while.Trigger.New works fine for holding all Ids of records while inserting.
Trigger.new returns a list, which are ordered.Trigger.newMap returns a map – which are unordered.