Wednesday, March 11, 2015

Salesforce.com Trailhead - For Beginners to Experienced Salesforce.com Professionals

Before the launch of the trailhead, I remember the days when I need to get the  Insight of the topic, I need to collect the Information in Bits & Pieces from various Site & developer Community of Salesforce.com. With the launch of trailhead which is exceptional tool for Beginners to Experienced Salesforce.com Professionals which has all what is needed to get the Insight of Salesforce.com. It can be accessed https://developer.salesforce.com/trailhead.

Happy Learning!!!

Tuesday, May 10, 2011

Salesforce Summer 2011 Releases


Want to know on the go cool Salesforce Summer 2011 release features. Below are the following:

1. Chatter Rest API
2. Apex Rest Services
3. Dynamic Visualforce Comonents
4. Security Updates are:
a. Mobile Phone Verification
b. Mobile Optimized Login Pages
c. Just In Time User Provisioning
5. Some Other Updates are:
a. System URL Apex Class
b. Java Script remoting
c. "Qucik Find" available in Setup
d. Enhanced Profile U.I.
e. Limits raised for no. of fields on Custom Objects, etc.

Sunday, March 6, 2011

Salesforce.com CloudForce 2011 Features Announcements

In Recently held CloudForce 2011 of Salesforce.com some of the intresting new features announced in the product are:
1. CRM wall moving in Collebration using Chatter feature (i.e. Sales Report, Share Expertise, Competitive Report) of Salesforce.com.
2. Jigsaw to give accurate and clean data for leads or proespects.
3. Integration of Analytic with Chatter.
4. Launch of Service Cloud3.

As in today world, for Service  Customers instead of Calling to Call Centers or email, search for the solution for themselves on the internet by googling of asking friend on Social media platforms like facebook, twitter, etc. Salesforce is giving the best of the functinality of Social Media Interactions to the Companies by Service Cloud3. New features in Service Cloud3 are:

1. Social Monitoring - Salesforce for Facebook.
2. Social Agent - Real time custome Collebration.
3. Soicla Contact Center - Service Cloud Console.
4. Social Communities - Answers to Communities.
5. Social knowledge - Knowledge Collebration.
6. Social Analytics - Reports by Social Channel.

Above mentioned features dons the era of Social Media.

Sunday, February 6, 2011

Cloud Computing

When I asked about Cloud Computing at one of the renowed Software Industry Leader Seminars, I got various definitions from various speakers. All seems to be correct, as Speakers were all having good Industry Experience and knowledge. But still why different definitions from diffrernt speakers, give me a thought 
process to define Cloud Computing in generic terms irrespective of the technology and then based on User needs adaption of it i.e. in terms of functionality is defined.

If someones ask one word Cloud Computing definition then i Would be happy to answer as "On Demand". But this On Demand keyword have many meanings. In generic meaning Clod Computing is anything that is available on the Internet. Note i have not used any application, database, servers etc name in my definition
because here we are describing the definition as a marketer to any technical or non technical customer or user.

Based on functionality three definitions which are part of the Cloud are:

1. When Customer or user wants ready to use softwware just like ready to eat products are there for e.g. ready to eat cuppa noodles , then Software as a Service (SaaS) is the solution available. Customer or User need not to hire developers for creating the required Software. All  solutions of Customer Relationship Management, Salesforce Automation, Marketing Automation, Customer Service and Support, etc. fall into this Category.

2. When Customer wants Software as per the business Process of Organisation then, Platform as a Service (PaaS) allows you to build custom applications on the base platform on which SaaS applications are written. Using existing base environment saves time and effort as for some basic functionality you need to reinvent the wheel. But you need to hire specialized developers to make Customized applications.

3. When Customer wants to host application not on the Customer premises then Infrastructure as a Service (IaaS) is available to companies who have already implemented their web based applications. For smaller organisations this feature is a boon as this makes use of Multi - Tenent model i.e. for example in a Society Complex there are some facilities available to the members of the Society i.e. Gynasium, Swimming Pool, Sports Room, etc. All the members contibute nominal monthly fee to availe this facilities, which if they wish to have private Gynasium, Swimming Pool, Sports Room, etc think how much expensive will it cost to each individual. Some of them can't even think to afford also. Hybrid models do exist. You can have your own private cloud, and also lease remotely hosted infrastructure, platform space or full software solutions externally from your environment.

So whenever somebody asks you about Cloud Computing, then ask what service they are offering: SaaS, PaaS, or IaaS. Then ask yourself which environment they are offering the solution in: Java, .NET, or Apex (Salesforce.com).

Hopes this article makes Cloud Computing Concepts clear.

Sunday, January 30, 2011

Automate Data Import process in Salesforce.com

Other than the Data Import, DataLoader and Salesforce Data Loader Command Line Interface Tool, which are Provided by Salesforce.com, which as per the project requirement can be used. Few of the techniques which i thought will help to automate the data Import process, are described below:

1. Automated Push Approach: Automated Push Approach will have a any lanugaue Window Service application running on the server machine outside of the Salesforce Environment. This Window Service will call Salesforce Data Loader Command Line Interface Tool to upload data into Salesforce.com object(s).

2. Automated Pull Approach: Cloud Job can be created and scheduled inside the Salesfoce App. object. Implicitly Cloud Job will call an External Web Service or Application. This External Web Service or Application will be outside the Cloud Environment and will be hosted on Remote Server. Scheduler will import the data into Salesfoce.com App.

3. Http Request / Response: Can create a Http Request to the FTP / Remote server. Can handle the response using either of HttpRequest and HttpResponse Apex Class

4. Cloud Approach: A User Interface will have “Import Data” functionality in Cloud Application, where user can browse data file and upload which will trigger data import into Cloud Application.

Hope this approaches help in automating data into Salesforce.com for Standard or Custom objects.

Sunday, January 23, 2011

Cloud2

Cloud2 launched in April of 2010. More emphasis is intercation with the Customer by Social Media channels, wherease the traditional enterprise data model is disconnected from the conversation with the customer.

Salesforce.com’s Cloud 2 allows your organization to bridge the divide and tap into the dialogues occurring in these new social channels. Cloud 2 is about collaboration and making the Salesforce.com platform “social” with apps like Chatter. For example: If your comapny product user is struck with unrelated problem, and instead of calling company call center or search website of the company, user searches for the relevant solution on facebook, twitter, bing etc. social media sites. This kind of situations gave birth to Cloud2 by Salesforce.com.

It means that you need to enable your knowledge base to be available to be scraped, spidered and searched by the search engines like Google so that they can be indexed, and thus found by your customers. In Nutshell you never know where your company discussion (Good or Bad) is being done by the users of the web. In todays senario company has to adapt Social Media in their marketing strategies, so that company presence is felt everywhere to the potential customers or customers of the organisation.

As per statistics, Morgan Stanley report of July 2009 stated number of Social Media Users are more than email users. Also Cloud Computing2 gave the functionality of installing the Salesforce app on Blackberry or iPhone i.e. no Salesforce is adaptable to the following:

facebook, feeds, smartphone/tablet, Mobile, Location Aware, etc. Cloud 2, in conclusions and summary, is about allowing your business software to join your customers’ conversations on social media channels, providing a social channel natively inside Salesforce with Chatter, and making it all available on mobile and wireless devices.

Security and Access Control in Salesforce

Salesforce provides quite elaborated security features, as compared to the access controls provided by database management systems or file systems.
If Salesforce data validation when applied appropriately, make data more secure and data security more transparent to the general user. Key points for access
control are:

1. Who is accessing
2. What data is being accessed
3. How data is to be accessed

Let us take each component in detail:

1. Who is accessing: Doing the access is always determined by the user who in session. Instead of specifying permissions to Users individually, we can group into 3 categories for ease:

a. Profiles
b. Role hierarchies
c. Public groups

a. Profiles: Access to business objects, such as Accounts, Contacts, and Leads can be specified. Profile specify which actions can be taken and which components will appear on the screen. Each user must be assigned a profile, and a user can have only one profile. Salesforce give you following default profiles and vary as per the Edition of Salesforce:

1. System Administrator
2. Standard Platform User
3. Standard Platform One App User
4. Standard User
5. Partner User
6. High Volume Customer Portal User and Authenticated Website User
7. Customer Portal User
8. Customer Portal Manager
9. Solution Manager
10. Marketing User
11. Contract Manager
12. Read Only
13. Chatter Only User
14. Chatter Free User
15. Chatter Moderator User

Administrators can extend these by creating custom profiles if necessary.

b. Role hierarchies: It reflect the responsibility hierarchy in an organization. For example, a sales manager should be able to see the opportunities being pursued by the sales reps that report to her, but not necessarily the opportunities of reps that report to other sales managers. Logically a role

hierarchy in Salesforce must match a company’s org chart, but it does not follow watertight compartments i.e. can be altered as per the business requirement. For e.g. if Company Secatriate requires access to all the company’s data, he can be assigned the CEO role, i.e, at the top of the hierarchy. Each user may be assigned only one role but, unlike profile assignment, role assignment is optional (though highly recommended).

c. Public groups: Used for grouping of users for the purpose of specifying access rights. Public groups can contain individual users, roles with or without subordinates, and/or other public groups. A user could be a member of any number of public groups.

2. What data is being accessed: What secures the data. In databases and file systems, this is the table or file. The equivalent in Salesforce is the
business object. We can restrict access to following in Salesforce:

a. Object
b. Field
c. Record

a. Object: At the object level, users are granted or denied access to all instances of specific types of business objects. This is the coarsest level of
data access, and it is specified for profiles, rather than roles or public groups. For example, only users in the Marketing User profile have full access
to Campaign objects.

b. Field: Field-level access provides a finer level of control. Objects consist of fields, and field-level access can be used to restrict access to individual fields. For example, Salesforce restricts access to the Created By and Last Modified By fields in all objects, preventing users from arbitrarily setting these values. Field-level access, like object-level access, is granted or restricted for individual profiles.

c. Record: It controls access to instances of objects. Rows are the individual records for which Salesforce provide the access control. For eg: A user may
have access to Opportunity objects, for example, according to object-level permissions associated with her profile, but there may be record-level
permissions that restrict which Opportunity records she can access.


3. How data is to be accessed: The “how” of data access is best thought of from two perspectives: the way users are permitted to manipulate data and the
way records created by one user are shared with other users. Users can manipulate data by CRUD operations:

a. Create
b. Retrieve
c. Update (Edit)
d. Delete

These operations are individually either enabled or disabled for each object for each profile, and they specify the way users associated with a profile
can manipulate objects and their constituent fields. Viewing and editing individual fields can be further restricted with two field-level settings,
Visible and Read-Only.

Note: field-level settings can only further restrict the access specified for the object; there is no way, for example, to make a field editable if Update
is not enabled for the object.

The way records created by one user are shared with other users is determined by:
a. Organisation Wide Defaults/ Sharing mode
b. Role hierarchy
c. Sharing rules
d. Manual sharing


a. Organisation Wide Defaults/ Sharing mode: The sharing model is set for each object by the administrator, and it determines the organization-wide
defaults for object sharing:

1. Private (only viewable/editable by the owner and users above the owner in the role hierarchy)
2. Public Read Only (Only owner, and users above the role in the hierarchy, can edit those records)
3. Public Read/Write

OWD is used to restrict the access to data, in comparison with other modes which are used to open the access.

b. Role hierarchy: The role hierarchy enables data sharing upward in the organization. By default, a users can access all the data owned by and shared
with users directly below them in the role hierarchy. This sharing can be disabled for individual custom objects.

c. Sharing rules: Sharing rules are set by the administrator, and they determine object access based on who owns the object and who accesses the object.
The settings for sharing rules are similar to those for the sharing model:

1. Read Only
2. Read/Write

d. Manual Sharing: similar to sharing rules, except it is done by users on their own data, and it must be specified on each individual
record rather than at the object level.

To conclude to meet the practical demands of securing and sharing data throughout an organization, both within and across reporting lines, flexibility is required. And flexibility leads to complexity. it is the object-level settings that determine how a record can be manipulated.

The sharing settings simply affect access. For example, if a user’s profile grants him update permission on an object, he will not be able to edit records
of that type owned by other users unless read/write record-sharing has been granted. Conversely, if read/write sharing has been granted, a user whose
profile does not specify update permission will not be able to edit records of that type.

Note: If object-level permissions conflict with record-level permissions, Salesforce applies the most restrictive settings.