Differences between the Import Wizard and the Apex Data Loader

Salesforce CRM provides two tools for data migration—the Import Wizard and the Apex Data Loader.
The Import Wizard 
is designed for less-technical users and smaller, simple imports of up to 50,000 records. It takes you through the process step by step and displays error messages to alert you to potential record duplications (“dupes”). For more information, go to Help & Training | Importing Data | Using the Import Wizards.

Use the Apex Data Loader 
for complex imports of any size. It’s for technical users only. You’ll need access to the API to use this tool, which is included with Enterprise and Unlimited Edition. If you have another edition, you can purchase the API separately by contacting your account executive. The Data Loader doesn’t display error messages to alert you to potential problems. However, this tool includes several features that help make large data imports easier, such as being able to save your mappings. For more information, go to Help & Training | Data Loader.

The table below summarizes the difference between the two tools. The instructions in the remaining steps refer to the Import Wizard.
https://www.salesforce.com/assets/images/campaigns/insights_data_migration_table.gif

Command Line DataLoader

Command Line Data Loader
   Data Loader is used to data upload or load for Salesforce.com. Now we can used Data Loader through command line means we can write our own SOQL and CSV file. For that we have written following steps:
  1. Create test folder: C:\Program Files\salesforce.com\Apex Data Loader 14.0\test
  2. It must contain process-conf.xml, log-conf.xml and key.txt.
  3. Above xml file can copy from config folder.
  4. Key file contains Password encrypted format.
·        Open cmd and go to C:\Program Files\salesforce.com\Apex Data Loader 14.0\bin
….\bin> encrypt.bat –g “Pwd”
·        Enter you will get encrypted password like
….\bin>sadsad2232ds3
·        Copy above password and past into Key.txt file.
….\bin> encrypt.bat –g Passsword “C:\Program Files\salesforce.com\Apex Data Loader 14.0\test\Key.txt”
        Above steps for Encrypted password
 5. Edit the process-conf.xml file and copy past the following code in Bean and Save.
Inserts artist names from CSV file into Artist custom object
           
 6. Run through command line:
../bin> process.bat  “c:\program files\salesforce.com\apex data loader 9.0\test\”  csvAccountExtractProcess
Note: To call different processes one after the other, create a batch file in the bin directory and prefixing each call with the “call” function. The image below shows how to call the csvAccountExtractProcess 3 times and clearing the screen after each run.

How do Use the Data Loader from the Command Line

How do Use the Data Loader from the Command Line?
An automated Data Loader makes it easy to
load new data on a scheduled basis (daily, weekly, monthly or etc,.);
extract all my critical data on a regular basis; or
load a set of sample data with one double-click, prior to conducting a demo or training.
How do Use it:
To understand the process and Implement,
Please use the PDF from developer.force.com

How to install Salesforce Apex Data Loader

How to install Salesforce Apex Data Loader?
To install Apex Data Loader, follow the below steps
1. Log into Salesforce.com using your credentials,
2. Go to Setup menu
3. Under Administration Setup -> Data Management -> Data Loader
4. Click ‘Download the Data Loader’ to download and install the Apex Data Loader in your system.
You can use Data Loader in two different ways:
  • User interface
  • Command line

When to Use Data Loader and Import Wizard in Salesforce

Data Loader is Available in following Editions
Enterprise, Unlimited, Developer, and Database.com Editions
When to Use Data Loader:
  • You need to load 50,000 to 5,000,000 records. Data Loader is supported for loads of up to 5 million records.
  • You need to load into an object that is not yet supported by the import wizards.
  • You want to schedule regular data loads, such as nightly imports.
  • You want to export your data for backup purposes.
When to Use the import wizards:
  • You are loading less than 50,000 records.
  • You can load the Accounts, Contact, Leads, Solutions and Custom Objects. To see the following path, click Your Name | Setup | Data Management.

Customer Portal – Use VisualForce Page as Home Page

You can go to Setup > Create > Tabs and create a new VisualForce tab with the VF page that you want to use as the home page.
Then go to your Customer Portal > Customize Portal Tabs > and add your new VisualForce tab to the Selected tabs and set that tab as the Default Landing Tab.


Difference between Portals in Salesforce

There are 3 types of  Salesforce.com Portals.
  •  Customer Portal
  •  Partner Portal
  • Self  Service Portal
The feature differences are that Partner Portal exposes the Leads and Opportunity objects whereas the Customer Portal does not.
Customer Portal is to support for your customers.
Partner Portal is to support your Partners. Partner users are Salesforce users with limited capabilities. They are associated with a particular partner account, have limited access to your organization’s data, and log in via a partner portal.
But when compared, Partner portal is costlier than Customer Portal.
Self-Service provides an online support channel for your customers – allowing them to resolve their inquiries without contacting a customer service representative.
A Salesforce.com Customer Portal is similar to a Self-Service portal in that it provides an online support channel for your customers—allowing them to resolve their inquiries without contacting a customer service representative.
However, a Customer Portal provides significantly richer functionality than a Self-Service portal. This is because a Customer Portal has functionality similar to Salesforce.com. With a Customer Portal, you can customize and deliver a visually stunning user interface to your customers, and use the following Salesforce.comfeatures to help you and your customers succeed:

Salesforce Portal Development

Do You Need A Portal for Your Salesforce.com System?

Salesforce.com comes out of the box pre-configured with Self-Service, Customer, and Partner Portals. Beyond that, Salesforce sells licenses for completely custom portals. Not only can Salesforce offer you portals for your customers and for your partners, but they also host websites on their system called “Salesforce.com Sites”.

In addition to the portals, Salesforce Sites makes it possible for you to make information stored in your organization’s instance of Salesforce.com publically visible on the internet. A common example is that of “Job Openings”. A database in Salesforce.com of Job Openings for the company can be listed on the internet in a way that the general public can view them.

Authenticated Sites and Custom Portals

You may want to authenticate visitors to the site though. For example, if you want to permit someone to submit a resume against one of the listed Job Openings, you may want to authenticate them. This essentially becomes a “portal.”

So while Salesforce.com offers portals that require no programming, but rather just “point & click” configuration, some applications don’t fit that provided functionality. In the example “Job Openings Resume Submission System”, it would probably be better suited to a custom portal built on a Salesforce.com Site.

Custom Websites Built on Salesforce.com Data

As more companies adopt Salesforce.com for their main business data management and CRM platform, they are finding that they want to build websites and portals based on the data in their system. Deciding on the correct approach can be daunting. There are customer portals, partner portals, self-service portals, publically visible Salesforce.com sites, and an entire range of custom portal solutions.

Learning about Salesforce Licensing and Salesforce.com Portal Options

You may know that you need to give your customers or partners access to your Salesforce data in some way, but unsure of the best portal option, or the best Salesforce.com licensing option. There is a BIG difference between the pricing models offered by Salesforce.com, some licenses are as much as $35/mo/user, others as inexpensive as a few pennies – some free. Picking the correct licensing option is critical.

In general, there are 4 general categories of Salesforce.com Portals:

  1. Partner Portals
  2. Customer Portals
  3. Authenticated Sites
  4. Salesforce.com Sites
 In each of these you are giving access to your salesforce.com data to people who are not users of your salesforce system. 

Salesforce Partner Portal: the idea behind a partner portal is that your partners who resell your products & services can login to a system tied to your salesforce.com organization where they can record their leads, keep track of their accounts and contacts, and advance the opportunities that they are pursuing on behalf of your company. It gives them a place to share their progress with you. Main functional distinction: it gives the users access to multiple accounts and contacts – its access extends ACROSS your organization – fully controlled of course by sharing rules and the role hierarchy.
The Salesforce.com Partner Portal is a SYSTEM within Salesforce. Meaning, it already exists, you simply buy licenses for it and configure it. You can do custom Salesforce.com development with APEX and visualforce pages to add functionality to it, but that is not required. You can simply configure it the way you want it and give your partners licenses. 

Licenses for Partner Portals cost about $35/user/mo – although you can probably work a deal with Salesforce depending on the number you are purchasing.

Salesforce Customer Portal: the idea here is that your customers can login to a system to see information that relates to them as a customer of your organization. A salesforce customer portal gives a user access to THEIR account data, so in distinction to the partner portal, it is not CROSS organizational. And like the Salesforce Partner Portal, it is a system in Salesforce that can simply be configured and deployed.
These licenses cost under $10/user/mo depending on the number and plan.

Although salesforce provides a customer portal system, you can override this system and deploy an entirely custom salesforce.com portal. We often use these licenses, but deploy a custom website instead. The customer portal license gives us the ability to authenticate and encrypt the session on the custom website (see note below about authentication and encryption).

Authenticated Sites: Salesforce provides this licensing option for the times when you will be displaying data from salesforce in an entirely custom way and only displaying information from accounts, contacts, and custom objects. Check with your account manager at Salesforce for the pricing. It can be confusing, there are many options.

Salesforce.com Sites: Salesforce offers a “guest-user” license that essentially makes it possible for a developer to produce a website displayed on a page hosted by salesforce that displays salesforce.comdata to the general public. No licenses are needed – no additional expense except for the licenses you already purchase for your users. 

A Note about Authentication and Encryption: to authenticate means to ensure that the correct person is viewing data within your system. Encryption means that the authenticated user is viewing that data securely – through an “encrypted” session in the browser, evidenced by the HTTPS in the address and usually a little padlock displayed somewhere in the browser. 

We can authenticate users on Salesforce.com Sites without buying a Salesforce License. You just store a username and password somewhere in salesforce and only present applicable information after those have been entered correctly. So you know you have the correct person viewing the system – BUT – it isn’t encrypted this way – the information is being displayed in a non-secure session (HTTP, not HTTPS in the address bar). This is sufficient for many applications. 

However to encrypt a session, get the HTTPS and padlock displayed – you must have a salesforce.comlicense of some kind. You can’t get into a secure session without a salesforce license. You can authenticate with no license, but you can’t encrypt with no license.

Therefore – a Salesforce.com Sites page can be authenticated if it is needed and the developer writes the code to verify the user’s identity. It will not be encrypted. But you can display any data from yoursalesforce.com system out to the general public using Sites. If you want to encrypt that data, then you’ll need to get an Authenticated Sites or Customer Portal license for the people who will be using that system. 

Note: all the licensing and portal options above are available only in the Enterprise & Unlimited Editions of Salesforce.com. 

Visualforce Email Template 3

Create a Visualforce Email template by navigating to
Setup –> Communication Templates –> Email Templates –> New TemplateSelect “Visualforce” in the first step…

Give a tilte,name,Subject for your template. Next select the Receipent type and Related to (Related to denotes the object from which you would want data to be displayed in your Email).. Click “Save”…. Remember to check “Available for use” to make your email template available for use in Workflow email alerts and whereever it may be useful….
You will now see the template detail Page… In the “Email template” section click on “Edit Template” button… This will take you to a Visualforce Page editor…

You can also click on “Attach file” button in “Standard Attachments” section to attach a file from your desktop to your email..

Below is a small piece of code… You will have to put this code in the editor that appears when you click on “Edit template” button
Note: I have used “htmlEmailBody” for including HTML tags in my template.. Also, since the “Relatedto” is “Account” i am displaying Account information in my template..
  relatedToType="Account">    Account Name : {!Relatedto.Name} 
  Account Description : {!Relatedto.Description} 
      

What you Can…
With Visualforce email templates you can display any data from the related object in any format you wish.. If Relatedtotype =Account you can display any field of the Account and you can also display the related lists of Account .. For ex you can create a datatable with the value=”{!Relatedto.Contacts}”… Similarly you can display other related lists…
What you Cannot…
You cannot use the tag inside your Email template.. Having said this you cannot use pageblock, pageblocksection or any other tag which is a child of the tag.. You can use outputfield,outputtext,datatable etc.. Do not attempt too much of styling and formatting for your email templates unless it is extremely necessary because you would’nt know how your email would be rendered by different providers.. Always use simple and standard formatting so that your email displays uniformly across all providers…

Creating Email Templates and Automatically Sending Emails

Solution


  1. Create an appropriate email template through the email template wizard. Salesforce.com supports multiple email template types. This examples assumes you are using a Visualforce email template. To create a Visualforce email template, you must have the “Customize Application” permission enabled.
  2. Send an automatic email response to the job applicant’s incoming email using theMessaging.sendEmail static method to process outbound email messages.
    First, create a Visualforce email template:
    1. Click Setup | Email | My Templates. If you have permission to edit public templates, click Setup| Communication Templates | Email Templates.
    2. Click New Template.
    3. Choose Visualforce and click Next.
    4. Choose a folder in which to store the template.
    5. Select the Available For Use checkbox if you would like this template offered to users when sending an email.
    6. Enter an Email Template Name.
    7. If necessary, change the Template Unique Label.
    8. Select an Encoding setting to determine the character set for the template.
    9. Enter a Description of the template. Both template name and description are for your internal use only.
    10. Enter the subject line for your template in Email Subject.
    11. In the Recipient Type drop-down list, select the type of recipient that will receive the email template.
    12. Optionally, in the Related To Type drop-down list, select the object from which the template will retrieve merge field data.
    13. Click Save.
    14. Click Edit Template.
    15. Enter markup text for your Visualforce email template.
    16. Click Save to save your changes and view the details of the template, or click Quick Save to save your changes and continue editing your template. Your Visualforce markup must be valid before you can save your template.
      The maximum size of a Visualforce email template cannot exceed 1 MB.
    This sample Visualforce email template creates an interview invitation:
          Dear {!relatedTo.Candidate__r.First_Name__c}            {!relatedTo.Candidate__r.Last_Name__c}    Thank you for your interest in the position           {!relatedto.Position__r.name}    We would like to invite you for an interview.   Please respond to the attached invitation.    Regards,  Company          BEGIN:VCALENDAR  METHOD:REQUEST  BEGIN:VTIMEZONE  TZID:(GMT-08.00) Pacific Time (US and Canada)  BEGIN:STANDARD  DTSTART:16010101T020000  TZOFFSETFROM:-0700  TZOFFSETTO:-0800  RRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=11;BYDAY=1SU  END:STANDARD  BEGIN:DAYLIGHT  DTSTART:16010101T020000  TZOFFSETFROM:-0800  TZOFFSETTO:-0700  RRULE:FREQ=YEARLY;WKST=MO;INTERVAL=1;BYMONTH=3;BYDAY=2SU  END:DAYLIGHT  END:VTIMEZONE  BEGIN:VEVENT  DTSTAMP:20090921T202219Z  DTSTART;TZID="(GMT-08.00) Pacific Time           (US and Canada)":20090923T140000  SUMMARY:Invitation: Interview Schedule @ Wed Sep 23 2pm - 4pm   ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;          CN="{!recipient.name}":MAILTO:{!recipient.email}  ORGANIZER;CN="John.Smith":MAILTO:recruiter@company.com  LOCATION:Hawaii   DTEND;TZID="(GMT-08.00) Pacific Time           (US and Canada)":20090923T160000  DESCRIPTION: You are invited to an inverview          \NInterview Schedule          \NWed Sep 23 2pm - 4pm           (Timezone: Pacific Time) \NCalendar: John Smith           \N\NOwner/Creator: recruiter@company.com             \NYou will be meeting with these people:          CEO Bill Jones,           Office Manager Jane Jones  \N  SEQUENCE:0  PRIORITY:5  STATUS:CONFIRMED  END:VEVENT  END:VCALENDAR          
    Then, send an automatic email response to the job applicant's incoming email. This example uses a Visualforce email template:
    
      
    
    
      // In a separate class so that it can be used elsewhere  Global class emailHelper {    public static void sendEmail(ID recipient, ID candidate) {      //New instance of a single email message   Messaging.SingleEmailMessage mail =               new Messaging.SingleEmailMessage();     // Who you are sending the email to     mail.setTargetObjectId(recipient);       // The email template ID used for the email     mail.setTemplateId('00X30000001GLJj');                 mail.setWhatId(candidate);         mail.setBccSender(false);     mail.setUseSignature(false);     mail.setReplyTo('recruiting@acme.com');     mail.setSenderDisplayName('HR Recruiting');     mail.setSaveAsActivity(false);       Messaging.sendEmail(new Messaging.SingleEmailMessage[] { mail });        }    }    

    Differences between the Import Wizard and the Apex Data Loader

    Salesforce CRM provides two tools for data migration—the Import Wizard and the Apex Data Loader. The Import Wizard   is designed for les...