The Salesforce.com Certified Administrator exam is intended for an individual who has experience performing as a Salesforce Administrator. Here are examples of the concepts you should understand to pass the exam:

Please find links to download SFDC Admin Exam dumps:


Books: 


It's always good to refer latest release notes before going to exam

And For additional reference you may want to refer below sites

http://www.oyecode.com/
http://www.jitendrazaa.com/blog/
http://cloudyworlds.blogspot.in/
http://saramorgan.net/category/visualforce-2/
http://www.sfdc99.com/
http://www.verticalcoder.com/

Please let me know if I can help you for anything








Identity Provider


 A system that creates, maintains, and manages identity information.

IdP (Identity Provider), is a system that creates, maintains, and manages identity information for principals (users, services, or systems) and provides principal authentication to other service providers (applications) within a federation or distributed network. It is a trusted third party that can be relied upon by users and servers when users and servers are establishing a dialog that must be authenticated. The IdP sends an attribute assertion containing trusted information about the user to the SP

We are going to use Identity Provider Initiated SSO in later article. Means User will Login from Outside(IDp) and will be redirected to ServiceNow/Salesforce. Identity Provider must follow Federated Authentication (SAML) standard

SAML stands for “Security Assertion Markup Language” and it is Open standard for exchanging Authentication and Authorization between Systems. SAML based authentication is supported both
ServiceNow/Salesforce

Idp  Initiated Single Sign On : 

In IDp Initiated SSO, User Directly logins to Identity provider/Idp redirects user to proper ServiceNow/Salesforce Instance with SAML assertion in request (Service Provider). If SAML assertion is valid then Salesforce validates that user successfuly.

Technical Flow: 

In this scenario, a user is logged on to the IdP and attempts to access a resource on a remote SP server. The SAML assertion is transported to the SP via HTTP POST.



Processing Steps:
  • A user has logged on to the IdP.
  • The user requests access to a protected SP resource. The user is not logged on to the SP site.
  • Optionally, the IdP retrieves attributes from the user data store.
  • The IdP’s SSO service returns an HTML form to the browser with a SAML response containing the authentication assertion and any additional attributes. The browser automatically posts the HTML form back to the SP.
  • NOTE:SAML specifications require that POST responses be digitally signed.
  • If the signature and assertion are valid, the SP establishes a session for the user and redirects the browser to the target resource.

 

In  this is post, I have given very simple examples for learning salesforce Apex Triggers concepts.
Apex Triggers saves lots of time involving in automating complex businuess process

Examples


  1. Use case 1:

  • when account is inserted, automatically contact also created for that account.

trigger insertContact on Account (after insert)
{
Contact cont = new Contact();
cont.LastName = Trigger.new[0].name;
cont.AccountId = Trigger.new[0].ID;
insert cont;
}

  • Explanation:

Above one is a simple trigger to insert contact when you create account. the text which is mentioned in green color is trigger name. And text which is mentioned in red color is event name.

Trigger.New is a context variable. which returns a list of new records of the sobjects which we are going to insert into the database.




  1. Use Case 2:

  • Create a trigger on opportunity that throws error if Amount is less than 5000

trigger op_trigger1 on Opportunity (Before Insert, Before Update)
{
    for(Opportunity a : Trigger.New)
{
    if(a.Amount < 5000)
   a.addError('Amount can not be less then 5k');
}
}
  • Explanation:

Above one is a simple trigger which fires if Opportunity values is less than 5000 k. This is trigger triggers every time when record is created and updated



  1. Use Case 3:

  • If a New record is created, Amount should not be less than 5k If an Existing record is being updated , Amount should not be less than 3k

trigger opp_trigger2 on Opportunity (Before Insert, Before Update)
{
   for(Opportunity a : Trigger.New)
{
   if(Trigger.isInsert && a.Amount < 5000)
   a.addError('Amount can not be less than 5k');
   else if(Trigger.isUpdate && a.Amount < 3000)
   a.addError('Amount can not be less than 3k');
    }
}



4. Use Case 4:

  • Create a contact record on New Opportunity Insert
trigger opp_trigger3 on Opportunity (After Insert)
{
    Contact c = new Contact();
   for(Opportunity o : Trigger.New)
{
   c.AccountID = o.AccountID;
   c.FirstName = 'Oppertunity';
   c.LastName = 'Owner';
   insert c;
   }
}






Introduction to Triggers:



Apex Trigger is an action which gets fired on the particular event. In salesforce trigger is apex code that executes before or after the below types of operations.
  • Insert
  • Update
  • Delete
  • Undelete
Triggers will run before object records are inserted, updated, deleted into the database or after records are inserted, updated, deleted and restored.


  1. Apex Triggers can be classified into two types:
    1. Before triggers can be used to update or validate record values before they are saved to the database.
    2. After triggers can be used to access field values that are set by the database, and to effect changes in other records.


  1. Events in triggers:
    1. Before Insert, Before Update, Before Delete
    2. After Insert, After Update, After delete, After Undelete

  1. When to use “before” vs “after” triggers:






  1. Syntax to create sample trigger:
    1. Use below syntax to create trigger.
      1. trigger on ObjectName (<events>){
// Code Goes Here :)
}

  1. Trigger Context Variables:
    1. All triggers define implicit variables that allow users to access run time context. These variables are contained in the System.trigger class.
      1. Trigger.New
      2. Trigger.old
      3. Trigger.NewMap
      4. Trigger.OldMap
      5. Trigger.isAfter
      6. Trigger.isBefore
      7. Trigger.isInsert
      8. Trigger.isUpdate
      9. Trigger.isDelete
      10. Trigger.isUndelete.
========================================================================