»
S
I
D
E
B
A
R
«
Many Cool New Features in Winter 10
Sep 27th, 2009 by Anand Sethupathy

Most of you have probably started receiving email notifications about your Winter 10 upgrade. I browsed through the release notes and highlighted a few of the many new features which will be rolled out in this release.

  1. Filtered Lookups (Beta) – Yes, after years they are finally delivering this! So, you will be able to filter a lookup field and say “only show record type = participants” for this lookup. This will be HUGE for many NPO’s. Please Note: As this will be in Beta release some filters will not be supported. You will have to read the release notes for specifics, however, the good news is that record type filtering is indeed supported.
  2. Campaign Summaries – We can now do rollup metrics on Campaign Member Status.
  3. More Complex Charts – Dashboard Charts are now more complex. We can now report on two dimensions rather than previously supported single dimension. We can hover over segments of a chart to see the underlying data. We can click on a segment of a chart and drill down to a filtered report by that segment. We can have an “Others” area on charts.
  4. Workflow Email Alrts – Set the FROM Address – No longer do workflows need to be fired by a designated person, we will be able to define the From Address.
  5. ISBLANK and BLANKVALUE: Any of you that have ever written a formula have struggled with the fact that ISNULL is kind of tricky. They have a superior form of this now in ISBLANK which will work for all field types except picklists. This should make formula writing a lot easier.
  6. Comments in a Formula – We will be able to embed comments within a formula ex. /* some comment here */.
  7. Ten Relationships – The cross-object relationship limit has been extended from 5 to 10.
  8. Help Text on Standard Fields – Another long awaited feature. You can now add help text to all standard fields.
  9. Cloud Deploy – We can now move configuration from Sandboxes directly to Production without using an IDE and XML.

This is by no means a comprehensive list. I would strongly encourage you to review the full release notes for more details on any of the above items as well as the comprehensive list of Winter 10 release features.

Salesforce Certifications – Update 1
Aug 17th, 2009 by Anand Sethupathy

A while back I blogged about the Salesforce Certifications. Shortly after that post, I took the certifications for Administrator and Consultant. I am happy to say that I was able to pass both on my first attempt. Overall, the certification process has been a fairly streamlined process. You can easily sign up online and find a local test center. The exams are short (you get 90 mins, but probably only need 45 mins). Your results (pass or fail, not the actual score) are instantly presented on your screen upon submitting the test. And, a few weeks after taking the test, a nifty packet arrived in the mail containing a certificate and a nice Salesforce.Com branded USB Flash drive.

My aim in taking these tests were threefold:

  1. Determine what level of certification I would recommend for a Nonprofit System Administrator
  2. Determine if I could base a hiring decision on a candidate’s certification level
  3. Determine what level of certification I would like my own team to have

First, let me start with my experiences on the two certifications exams that I took. Of the two, I actually found the “Administrator” exam slightly more challenging than the “Consultant” exam. The Administrator exam covered many elements of Salesforce that most nonprofits do not touch on a day to day basis and this made it slightly more challenging. The Consultant exam was more scenario based and thus easier to grasp, however, it had very sales-related scenarios which needed to be translated to an NPO context before you could respond. So, let’s say that you are someone who purely works in the Nonprofit Sector and you have a good deal of experience with Salesforce. Both of these exams should be easy for you save for a.) Knowing Salesforce features you rarely ever user b.) Translating Sales-Speak into Non-Profit Speak before answering a question. So, even though both these exams consider 67% to be a passing number, you might want to do a little prep as your margin for error might be slightly less if we assume that you won’t get the Sales Questions or the Rare Features questions.

If we loop back to my original goals on the ceritifications, here is my analysis of each:

  1. NPO Sys Admin – I think the “Administrator” exam is actually a good fit for a Nonprofit System Administrator. For those administrators managing small implementations, this would be enough. For those managing larger implementations, I would expect them to be able to achieve a higher certification level than this.
  2. Hiring Decision – I don’t think I could base a hiring decision on either of these two exams. I still have not taken the rest, so my feelings may change after I see the higher end exams. I think, at best, holding these certifications might move someone from the “maybe” pile to the “definitely interview” pile, but I would still want to “tech” them out before actually making a hiring decision.
  3. My Team – I think I would like my team to have both of these certifications and a few of the higher end ones. As consultants, it is important that we understand those rarely used features so we can present them to a nonprofit when appropriate.

I plan on taking the other three certification exams within the next 6 months. I will report back with more updates as I get through them. I was thrown for a surprise, however, when I was asked to take a free Update Exam shortly afer my certification. I never had the time to get around to it and it did concern me. Would Salesforce expect me to take 5 update exams every quarter to keep my certification levels (once I have all 5)? That is the one part of this certification process that still needs work. I know the update exams are short and free, but time is hard to find these days. I think if they made this an annual update, that would be much easier to manage.

Stay tuned for more to come on this topic as I get through the next three!

Email Template Shortcut Buttons
Jan 2nd, 2009 by Anand Sethupathy

A client of ours got frustrated with having to click on Send an Email, then Select a Template, and finally Select the right Contact(s) before hitting Send on a very common type of email. The email was still sent on a discretionary basis by staff so we couldn’t automate it with a workflow rule. The client asked for a special button to be put on the page that could open up the correct email template and automatically select the correct contacts. After some searching on the Salesforce.Com Developer Forums, I found this little gem of JavaScript code. 

I adapted the code to the following:

location.replace(‘/_ui/core/email/author/EmailAuthor?
retURL
=/{!Opportunity.Id}
&p3_lkid
={!Opportunity.Id}
&p2_lkid
={!Opportunity.Registrant_Salesforce_ID__c}
&p2
={!Opportunity.Registrant_Full_Name__c}
&p24
={!Opportunity.Billing_Contact_Email__c}
&template_id
=00XX99234365′);

NOTE: Remove the linebreaks if you cut and paste this code.

I put the above code into a Custom Button on the Opportunity Object. The Button behavior should be set to Execute Javascript and the Content Source should be set to OnClick JavaScript

In the above JavaScript code, the following variables are represented:

  • retURL = URL that the user is returned to if they click Cancel on the message
  • p3_lkid = The ID of the record that this email should be associated with (the WhatID)
  • p2_lkid = The ID of the person that this email should be associated with (the WhoID)
  • p2 = The name of the person that this email should be associated with
  • p24 = The email address of anyone you want as additional TO’s on the message
  • templateID = The Salesforce ID of the email template that you wish to use
Once this button is setup, I added it to my Detail Buttons on my Opportunity Page Layouts. After that, when an End User clicks on this button it opens up an Email, selects the template I indicated, and pre-populates the main recipient and even an additional recipient for the message. 
Should you get Salesforce Certified?
Dec 18th, 2008 by Anand Sethupathy

Many Nonprofit System Administrator level users are wondering if they should get Salesforce Certified. This is actually a tricky questions because the Certification definitely carries value to the individual holding it, however, it can also prove to be of great value to the organization in validating the skill levels of their administrator(s).

Before you jump into certification, study the options available and find out what is right for you and for your organization? Also, consider the following. Since you are working in the nonprofit space, a fair amount of the questions may have little to no applicability to you. For example, questions on territories, assets, products, and super complex security issues are likely not the norm for a nonprofit implementation. Given the domain we operate in, most of you might need to review the study material to get familiar with the sections that we really don’t use on a day to day basis. Salesforce has done a really good job of putting up Study Guides, Sample Questions, and Reference Materials to help you prepare for the Certification Exams.

Salesforce is currently offering 5 levels of certification. I have included them in the image below:

Salesforce Certification Options

In the above chart, I have rated the difficulty level of the exams based on a cursory review of the study guide and review of all sample questions. The above chart assumes that you are a System Administrator and not a consultant. If you are a consultant, you may actually find all of the above exams to be easy, save for the “Force.Com Advanced Developer” which requires some deep knowledge of Apex and VisualForce. (Disclaimer: I haven’t taken the full exams yet, but plan to take at least two of them in 2009).

Good luck on your certification efforts and feel free to post any resources you find useful in your prep!

Managing by Metrics
Aug 10th, 2008 by Anand Sethupathy

One of the great promises of using CRM for nonprofit program management is the ability to manage by metrics. In theory, if we could track all efforts and all outcomes in a system, then we could uncover those predictive indicators that lead to desired outcomes. We could then make adjustments to the program operations itself to reach those desired outcomes. To a great extent, this is possible, however, it is much more complex than it sounds. One of the root causes of the complexity is the fact that we often are not looking at all of the variables and are only looking at a subset. Making decisions on a subset of variables can sometimes lead to incorrect conclusions. Since I have seen this logic trail unfold a few times, I thought I would share an abstracted example of such a situation.

Take for example, Acme Org, a human services organization that has implemented a robust CRM solution that tracks almost all aspects of it’s program operations. Below is one of the critical reports reviewed by the Executive Team each month:

Initial Management Metrics

The organization is considering the use of these metrics for determining promotions, salary adjustments, and bonuses. After initial review, the Executive team expressed concern about Jon’s performance to Jon’s manager. Jon’s manager on the other hand knew that Jon’s metrics were low because he was always thrown on to the toughest cases. Being on the toughest cases each month meant that Jon would have to spend more time with each client and would be responsible for defining new engagement processes for working through complex cases. Unlike the other client service reps Jon spent a lot of time researching and speaking to industry experts to identify best practices that could be used by Acme to help future clients. In short, Jon was expanding the organizational knowledgebase, capacity, and quality of service delivery. Unfortunately, none of this was being recognized in the monthly report. Jon’s manager decided to add a new metric into the monthly report that would help recognize Jon’s efforts. The revised report is below:

Post Review Metrics

The revised report gave the Executive Team more insight into Jon’s efforts and the demands placed on the Client Services staff.

The point of the example is to proceed with caution when using Metrics for Management level decisions. They can be a very powerful tool when well directed; however, there is usually a story behind every piece of data and it is critical that the entire story is understood before program level decisions are made.

Cross Object Formulas Have Changed the Game
Aug 3rd, 2008 by Anand Sethupathy

If you haven’t already done so, make sure you get deep into Cross Object Formulas. They have fundamentally changed how we think and work with Salesforce.Com configurations. A Cross Object Formula is a Formula field that can traverse object relationships and pull down data into an object.

Take the following example. Let’s say you are using the Opportunities object to track Inbound Grants. Let’s say that you have a Payments object that has a Master/Detail relationship with Opportunities (Payments is the Detail).

You can setup the following Cross Object Formulas in the Payment object to reference elements from the Opportunity and Account.

Payment Made By (Account) = Opportunities__r.Account.Name
Payment For (Opp) = Opportunities__r.Name

The beauty of the Cross Object formulas is that it lifts many of the constraints we previously faced with Salesforce. We can now:
- Create more complex reports including more objects than we could in the past
- Avoid writing Apex for something as silly as replicating a parent or lookup field
- Ease data entry and report building for the end user by making data more accessible

There are some limitations to be aware of:
- Limit of 5 cross object relationships per object
- You can reference up (from detail to master) or sideways (lookup), however, for references from parent to child, you still need to use Summary Roll Ups.

If you haven’t already used these, you should definitely check them out as they can solve many common problems you may have faced in the past.

If you have any interesting use cases for cross object formulas, please post them in the comments.

CRM Sustainability
Jul 5th, 2008 by Anand Sethupathy

We have been engaging in a lot of interesting debates in the NPower office about what makes a CRM solution sustainable for an organization. After a typical CRM deployment project, we do our best to leave the nonprofit with enough knowledge and tools to keep them sustainable. Here is a list of a few of the things we do:

Documentation – We initially started with word docs, however, we are more recently moving towards the use of Help Tips, Recorded Screen Casts, and a Help Tab. The idea behind documentation is that it should be complex enough to educate someone on how to use the CRM; however, not so complex that the documentation cannot be maintained.

Training – This is perhaps the most important element for us. We typically provide our clients with two levels of training. We do an end user training session that lasts between 1 and 3 hours depending on the complexity of the client implementation. We also do an administrator training for the Sys Admin level users at a client site. We also encourage the Sys Admin level users at the client site to attend a formal Salesforce training class.

Community – For clients that are in cities where CRM user groups are held, we encourage them to join and attend. This allows them to learn from their peers and get new insights into what is possible with CRM. We also encourage Sys Admin level users to join the NPSF so they can learn through the engaging technical conversations of the online community.

One of the areas that continues to be a challenge for us is Custom Code. Salesforce (and other CRM tools) provide a variety of means to extend the base platform with Custom Code. In the case of Salesforce this would be Apex, VisualForce, S-Control, and API Code. We are always weary of dropping custom code into an organization that has no means of managing or modifying the code. We do our best to avoid code by using as much standard functionality as possible. When it comes to deploying custom code into an organization that is not able to support it, we work through a simple cost/benefit tradeoff. Is this Code performing a high value business function? Is there a high probability the Code will need to be changed within the next 3 years? If the code needs to be changed, can the organization afford the change? If there is HIGH value for the code, LOW probability of the code needing to be changed, and the organization will likely find the funds for a change, then this alleviates our concerns. Custom Code is not to be feared in a NPO CRM implementation; however, a plan needs to be in place to support it over its lifecycle.

Encrypted Fields in Salesforce
May 31st, 2008 by Anand Sethupathy

A colleague of mine (Lisa Glass) recently began using encrypted fields in Salesforce. It turns out they are fairly simple to use. Encrypted fields need to be requested through the “Feature Activations Team” at Salesforce. You can just open a Support Ticket and put in a request for this. As per the documentation, this feature is available to all Enterprise and Unlimited edition accounts, which means all NPO’s should be able to access this.

How it works:

  • It creates a new field type in your instance called “Text (Encrypted)”. This is fairly similar to a regular text field, except that the data is encrypted.
  • In order to see data within an encrypted field, the user’s profile must have the “View Encrypted Data” option checked off
  • Any user that does not have this permission in their profile will see a value such as “***-**-****” when they view the encrypted field. (Note: You can specify whether you want the Mask to be either a “X” or a “*”. You can also leave a portion of a field unencrypted, such as the last 4 digits of an SSN.

Limitations:

  • Max length of 175 characters. (You can’t really use this to encrypt case notes.)
  • Field value can not be Unique, External ID, or have a Default Value
  • Can not search, filter, roll-up, query, or use the field value in a Formula
  • Can not use in workflows and assignments

Overall, this is a very powerful feature and you should consider leveraging it in your instance if your are storing any sensitive data such as Social Security Number, Credit Card Number, Medical Info, etc.

There is a lot more information on best practices and usage examples within Salesforce Help.

When is a good time to start a CRM project?
May 20th, 2008 by Anand Sethupathy

At NPower, we have worked on a fair number of CRM projects and we are trying to figure out the question of CRM timing. When is the best time for an organization to implement a CRM solution? I have taken the OLC (Organizational Life Cycle) Model and mapped that against our experiences with CRM success.

When is the right time to take on a CRM project?

Stage 1: Startup Stage – The organization is still figuring out it’s mission and funding streams. Operating procedures are in flux and can quickly change based on grants, board members or funders. Technology is not really a core requirement.
Stage 1 CRM Outlook: Investing in a CRM Solution typically doesn’t yield great results because many of the underlying assumptions will change over the next few years. A very simple fundraising CRM solution can be effective in this environment, however, using CRM for operational purposes may not yield a good ROI.

Stage 2: Growth – At this stage, the organization has proven that their mission is a sound business idea. They have proven that they have the operational know-how to execute on their mission. They have secured a stable base of funders and a good core of board members. Their attention has turned from survival to growth.
Stage 2 CRM Outlook: This is likely the stage at which a CRM solution can have the greatest impact on an organization. Implementing a CRM can provide substantial gains on the fundraising side, while also cataloging a history of all fundraising interactions. On the operations side the CRM can begin to model organizatonal procedures and collect valuable performance data. If the CRM solution is implemented in an intelligent manner, it can scale and flex as the organization grows and evolves.

Stage 3: Maturity – As an organization reaches a certain scale, it’s growth will slow. At this stage, the organization is very good at executing on it’s mission. It has an extensive base of funders and they have very specific expectations of this organization.
Stage 3 CRM Outlook: This is a very tricky stage for CRM deployments and a lot depends on the organizational culture and leadership. If the organization culture is receptive to change, then a CRM solution can serve as a great engine for operational improvements. If the org culture is not receptive to change, then a CRM solution will likely replace some existing systems and only provide marginal efficiency gains.

Stage 4: Decline – The organization begins to lose stable funders and board members. New startups take away fundraising streams and the organization is perceived to be less effective and not as innovative in a modern environment. The organization begins to cut back on programs, staff, and all non-essentials as it seeks to find a way to reach a stability point.
Stage 4 CRM Outlook: Surprisingly, this could be a great time for an organization to move towards a CRM solution. Organizations in this stage are often heading back towards stage 1. This leaves them open to process innovations and funding changes. This willingness to explore new paths can make a nimble CRM solution an effective solution to manage the massive changes that the organization must face. The difference between this type of organization and a stage 1 organization is that they also need to carry forward the massive amount of data and relationships that they have amassed over their years.

The above is not meant to be hard and fast rules about good and bad times to get into CRM. They are just some observations from our years of CRM consulting experience. There will undoubtedly be many organizations that are exceptions to the above rules for a variety of reasons.

It may take years to fully understand the impact of the CRM solution, however, the clear winners so far seem to be those organizations that are in a growth stage.

What does a CRM Implementation cost?
Apr 26th, 2008 by Anand Sethupathy

As a CRM consultant, I often get asked the question of what a CRM implementation costs? I typically respond with the standard consultant speak of “it depends” and enumerate some of the factors that can influence the pricing of a CRM implementation. From a client perspective, I understand that it can be frustrating not to get a solid number or even a narrow range estimate. The problem is that a CRM project is kind of like building a house and depends on dozens of factors. Below is a list of some of the items that can influence the price of a CRM project:

  • Business Functions – This is essentially a scope question. Are you trying to solve a specific need with your CRM or are you looking to turn your CRM system into a quasi-ERP system to run all of your internal data needs? The more scope, the more it will cost.
  • Business Process Re-engineering – Is your organization fairly confident in existing business processes or are you looking to make some big changes? A CRM consultant can aid in this process, however, this tends to consume a lot of hours and raise costs.
  • Iteration Cycles – Most Salesforce implementers will prototype an application. Each round of revisions on the prototype is often referred to as an “iteration”. Limiting the number of iterations can help to manage costs. One of the key ways to do this is to ensure that all stakeholders participate in the review process and that coordinated feedback is sent back to the CRM consultant.
  • Training & Documentation Needs – For larger organizations, using a “train the trainer” model can save significant implementation costs. Also, be careful to only get as much documentation as you can maintain. If you are not able to maintain hundreds of pages of documentation, do not request it from your CRM consultant. Static documentation tends to become outdated very quickly on CRM systems.
  • 3rd Party Applications – Does your CRM project need 3rd party applications? Sometimes this can help to lower implementation cost (could be at the expense of ongoing cost). However, some 3rd Party apps may require setup or configuration which can add to the implementation cost.
  • Consultant – Like in any marketplace there are different types of consultants in the CRM Marketplace. Some thrive on transactional models were they execute a large number of projects and are able to charge lower rates. This is great for organizations that have limited budgets and fairly straightforward needs. Other consultants get deep into an organization and may re-engineer processes in addition to technology. This approach is great for organizations with complex business problems and more flexible budgets.
  • Custom Code – If your business requirements cannot be met within the constructs of the CRM platform you are using, then your consultant may need to custom code. In Salesforce this means adding Apex, VisualForce, and S-Control code to your system. Custom code can quickly increase both your implementation costs and your long term maintenance costs.
  • Systems Integration – Does your data need to be in synch with other databases or applications with your IT infrastructure? What type of synchronization (manual, bi-directional, uni-directional)? Systems integration can easily increase implementation costs.
  • Web Integration – This one is a little more complex because there are some things that are very easy to integrate with a website (Web2Lead, Web2Case). Other items such as building a multi-page application form with save and return functions could be more complex and costly.
  • Data Migration – This is the single area that we have seen the highest variance of cost. We will probably need an entire blog article to describe how data migration can influence costs. One thing that you can really do to help keep costs down here is to clean up your data. Remove duplicate records, correct spelling mistakes, and get paper data into electronic form. If you have 100 Excel files, see if you can condense that down to 20 or fewer files. This is one area were doing some prep work can save you substantial CRM implementation costs.
  • Reporting Requirements – This is another area where there tends to be high variance among organizations. Some organizations have enormous and complex reporting requirements, while others can survive on basic data reports. A consultant will need to review your reporting requirements to get a sense of where you land on the spectrum. Reporting can get particularly expensive when there are complex business rules and formatting rules for report generation.
  • DIY – One way for an organization to lower CRM implementation costs is to take on more of the work themselves. For example, if your organization needs to have 100 reports and 30 dashboards built, have your consultants build out the most complex ones and do the rest yourself. You will save money and also increase your system skills at the same time.

The above list is not everything that goes into CRM implementation costs; however, it does reflect some fairly important items. Also, consider the following when thinking about CRM implementation costs. If you decide to do a lot of the work in house, you are not really lowering the CRM implementation costs. You are just displacing them from an external resource to an internal one. Depending on how your org’s budget is structured, it may be easier to use internal resources. Also, be careful not to take on too many ongoing costs (3rd party apps and services) to lower implementation costs.

If you are a CRM consultant or have done a CRM project for your organization, please shout out some of the other major cost factors you have faced in the implementation process.

»  Substance: WordPress   »  Style: Ahren Ahimsa