Saturday, September 24, 2011

Why The Customer Is Not Always Right

One risk when doing a CRM project is giving the client EVERYTHING they ask for. This might be a strange thing to say. After all, isn’t the client always right? The answer is an emphatic “no!”

The reason I say this is, often in CRM projects, the client asks for everything which would be ‘nice to have’. The client does not always realise that to give them precisely what they ask for will, to put it plainly, cost a small fortune. If you are building on top of a platform, like Dynamics CRM, some things are easy to deliver, some things are more difficult. The value a consultant brings to the table is separating one from the other.

The trick is to always consider the cost of delivering an item and the benefit it is going to bring.

How Accurate Do We Have To Be?

My personal feeling is absolute accuracy is not essential as long as the cost-benefit is being considered by the consultant and the client. For example, it is common for a client to ask for a Word template to be converted to work within CRM. This is a relatively easy procedure taking, say, a couple of hours, depending on the complexity of the template. However, it is also pretty easy to export a list of contacts out of CRM and then point the existing Word template to it, saving that consulting work.

The question is not whether it can be done (it can) or whether the client has asked for it (they have) but whether the cost is worth the saving in time and the general convenience. In this case, the client and I guessed exporting the spreadsheet and using this would add an extra five minutes to the process. This process was done around five times a day, taking just shy of half an hour a day. This then equates to about two hours a week, or almost a day of work each month. In consideration of that, a couple of hours of template rework suddenly seems reasonable.

In another case the client wanted to add a button to the ribbon so that when a set of contacts are selected, their e-mail addresses were copied to the clipboard for pasting elsewhere. Setting up this little gem is not simple and would take, say, half a day to a day. An alternative would be to simply highlight the records in CRM and use the Excel export to get them out of CRM. From Excel it was then a case of copying the e-mail addresses. When the alternatives were put to the client, the client agreed the Excel export was a better option for them as they did not do the process that frequently and the cost would not save significant effort.

Every project has elements like this where the “developer’s solution” may give the client exactly what they want but not what they need.

What Is So Bad About Giving The Client Exactly What They Are After?

From a consulting perspective, what I am suggesting sounds like suicide. I am suggesting, as a consultant, is to push back on work a client is more than willing for you to perform. Here is the problem. Your job, as a consultant, is not to do stuff for people without question; it is to be a trusted advisor.

The client who spends a fortune in phase one of a CRM solution will not sue you and will acknowledge you have delivered nothing they did not ask for but when it comes to phase two, there will be no phase two. When it comes to recommending the software they will say “it works really well but it wasn’t cheap and you might want to shop around”. When it comes to recommending you they will say “he was really friendly and helpful but now that we have used the product we are finding we do not need half the things we asked for. It is a shame he did not tell us about the features and push back a little more”.

Conclusions

Never be afraid to tell the client they are wrong if it is in their best interest. Your job, as a consultant, is not to tell them things CAN be done but whether they SHOULD be done. If the client is asking for functionality which, you suspect they will never see benefit from, tell them or, even better, lead them through the exercise of working it out for themselves. By doing a quick cost-benefit consideration you not only validate your thinking on the subject , you generate client buy-in for the ultimate decision.

The other benefit of such an exercise is the transparency it brings to the process. With a choice of meeting their needs exactly, using out-of-the-box functionality plus a little effort or abandoning the requirement completely, the decision can be made with all eyes open.

While the system will not be the Utopian vision they WANTED, no software system ever is and it will be the system they NEED. More importantly, the client will see significant benefit and will respect you as a trusted advisor.

Sunday, September 11, 2011

Dynamics CRM vs Salesforce: User Adoption July 2011

Last year I reviewed the subscription numbers of Dynamics CRM and salesforce. At that time I came to a few conclusions:

  • Your average Dynamics CRM customer has about 50% more subscribers than a salesforce customer
  • Average company size for both is growing but appears to be tapering to 30 for salesforce and 50 for Dynamics CRM
  • Subscriber growth continues to grow and the market has not yet matured
  • Based on the subscriber and customer ratios, Dynamics CRM is catching up on salesforce
  • Salesforce will make 3 million subscribers by October 2010 and Dynamics CRM will make 1.5 million subscribers by December 2010

If you saw my “Microsoft Dynamics CRM vs Salesforce: The Main Event” presentation at Decisions Spring earlier this year, you will have also seen me predict:

  • Subscriber difference appears to be tapering
  • Subscriber ratio is heading towards 1.5
  • “Dynamics CRM” is catching up on “salesforce.com” in Google trends
  • Microsoft’s numbers will be buoyed by their international online rollout

Given Microsoft released some figures at the Worldwide Partner Conference and salesforce recently released figures as part of their second quarter results, I thought it was a good time to revisit. Unfortunately, with Microsoft only intermittently releasing numbers and salesforce confirming, in the quarterly results call, this would be the last quarter where they release customer numbers, it will be difficult to do this kind of review in the future. However, as salesforce is diversifying outside of their stock ticker namesake (CRM), a direct comparison of numbers is becoming less relevant, unless we start bringing in the Microsoft ERP, CMS and BI solutions as well.

Customer Size

Here are the numbers for salesforce taken from the salesforce detailed financials:

Year

Month

Subscribers

Customers

Average Company Size

2003 Q4

Dec-02

76,000

5,700

13

2004 Q1

Mar-03

85,000

6,300

13

2004 Q2

Jun-03

96,000

7,000

14

2004 Q3

Sep-03

107,000

7,700

14

2004 Q4

Dec-03

127,000

8,700

15

2005 Q1

Mar-04

147,000

9,800

15

2005 Q2

Jun-04

168,000

11,100

15

2005 Q3

Sep-04

195,000

12,500

16

2005 Q4

Dec-04

227,000

13,900

16

2006 Q1

Mar-05

267,000

15,500

17

2006 Q2

Jun-05

307,000

16,900

18

2006 Q3

Sep-05

347,000

18,700

19

2006 Q4

Dec-05

393,000

20,500

19

2007 Q1

Mar-06

438,000

22,700

19

2007 Q2

Jun-06

495,000

24,800

20

2007 Q3

Sep-06

556,000

27,100

21

2007 Q4

Dec-06

646,000

29,800

22

2008 Q1

Mar-07

742,900

32,300

23

2008 Q2

Jun-07

800,000

35,300

23

2008 Q3

Sep-07

952,500

38,100

25

2008 Q4

Dec-07

1,100,000

41,000

27

2009 Q1

Mar-08

1,177,200

43,600

27

2009 Q2

Jun-08

1,287,900

47,700

27

2009 Q3

Sep-08

1,398,600

51,800

27

2009 Q4

Dec-08

1,500,000

55,400

27

2010 Q1

Mar-09

1,660,400

59,300

28

2010 Q2

Jun-09

1,769,600

63,200

28

2010 Q3

Sep-09

2,000,000

67,900

29

2010 Q4

Dec-09

2,102,500

72,500

29

2011 Q1

Mar-10

2,319,000

77,300

30

2011 Q2

Jun-10

2,554,400

82,400

31

2011 Q3

Sep-10

2,790,400

87,200

32

2011 Q4

Dec-10

3,000,000

92,300

33

2012 Q1

Mar-11

3,321,800

97,700

34

2012 Q2

Jun-11

3,640,000

104,000

35

Here are the Dynamics CRM numbers:

Month

Subscribers

Customers

Average Company Size

Mar-06

150000

6000

25

Jul-06

200000

7000

29

Oct-06

250000

8000

31

May-07

400000

10000

40

Mar-08

500000

11000

45

Jul-09

1000000

20833

48

Apr-10

1100000

22000

50

Jul-10

1400000

23000

61

Apr-11

1700000

27000

63

Jul-11

2000000

30000

67

Numbers in red are my best guess, based on the known numbers. Essentially I have estimated the customer size and then used this to generate the subscriber size. I thought it was important to include my large tables of numbers, rather than just show the pretty graphs so others can see how I generated them and also slice and dice them as they see fit.

As can be seen, Dynamics CRM’s average customer is now almost double the size of the salesforce average customer. Graphing the company sizes, we see my previous thoughts that the sizes were tapering was unfounded, both are increasing and it appears Microsoft’s are growing a little faster as the ratio has now gone from 1.5 to 2.0.

imageimage

Market Maturity

Here is the apples to apples combined data.

Month

SFDC Subscribers

SFDC Customers

MSFT Subscribers

MSFT Customers

Subscriber Ratio

Customer Ratio

Difference in Subscribers

Total Subscribers

Customer Size Ratio

Mar-06

267,000

15,500

150000

6000

1.78

2.58

117,000

417,000

1.5

Jul-06

315000

17500

200000

7000

1.58

2.50

115,000

515,000

1.6

Oct-06

366700

19300

250000

8000

1.47

2.41

116,700

616,700

1.6

May-07

482000

24100

400000

10000

1.21

2.41

82,000

882,000

2.0

Mar-08

742,900

32,300

500000

11000

1.49

2.94

242,900

1,242,900

2.0

Jul-09

1324809

49067

1000000

20833

1.32

2.36

324,809

2,324,809

1.8

Apr-10

1696800

60600

1100000

22000

1.54

2.75

596,800

2,796,800

1.8

Jul-10

1878243

64767

1400000

23000

1.34

2.82

478,243

3,278,243

2.1

Apr-11

2449000

79000

1700000

27000

1.44

2.93

749,000

4,149,000

2.0

Jul-11

3819600

106100

2000000

30000

1.91

3.54

1,819,600

5,819,600

1.9

***STOP PRESS*** 2011-11-18 Leon says: There is an error in this table and the catch up graphs below. I’ve fixed this up here.

In this case I have extrapolated the salesforce data to match the month the Dynamics CRM numbers were announced. So if the Dynamics CRM number was announced one month after a salesforce quarter announcement, I guess the SFDC customer number and then use the guessed average customer size to generate a subscriber number.

Total subscribers across both products know no bounds and both products continue to bring on subscribers.

imageimageimage

It is fair to say this market is still far from maturing with no signs of populations tapering.

In terms of my previous predictions, the trending of Excel came through with the goods. Salesforce made three million subscribers somewhere between September 2010 and December 2010 (I predicted October 2010). Dynamics CRM made 1.5 million subscribers somewhere between July 2010 and April 2011 ). I predicted December 2010.

For my next set of predictions, I believe salesforce will make four million subscribers before the end of the year but after the Q3 results. Dynamics CRM will make 2.5 million subscribers before the end of the year and probably before November.

Is Dynamics CRM Catching Up?

***STOP PRESS*** 2011-11-18 Leon says: There is an error in the market maturity table and the catch up graphs below. I’ve fixed this up here.

So the big question is if Dynamics CRM is catching up on salesforce. The answer, unfortunately for those of us on the Microsoft side of the fence, is no. The boost in numbers from the international rollout has either not happened or has been insufficient. Here is the evidence.

***Begin erroneous speculation due to my inability to combine numbers into one table correctly***

imageimage

The subscriber ratio (SFDC subscribers/MSFT subscribers) was dropping or, at least, was stable at just under 1.5 until the last quarter where salesforce has jumped away. The subscriber difference tells the same story. While there was a possible turning point in mid-2010, this appears to be an aberration with salesforce running away.

So what has happened? Has salesforce become really good and left Dynamics CRM in the dust? Is something else at play?

It is true that salesforce has been making a lot of acquisitions but, functionally, the differences in the Sales Cloud and Service Cloud products are more on the edges than at the core and equal on both sides. Salesforce has Chatter, Dynamics CRM is soon to have a Chatter equivalent but has SharePoint and Lync instead. Dynamics CRM has better Outlook integration but its browser client is limited to Internet Explorer (until early next year) and so on. This idea of equivalency is also confirmed by the Gartner and Forrester reports which rate both products very highly.

My speculation is the reason the salesforce numbers have leaped is because of the mix of products that make up the totals. The salesforce numbers cover all their products, not just the Sales Cloud and Service Cloud products. They include Chatter, Jigsaw, Heroku, Radian6 and so on. I imagine it only includes paying Chatter clients but it is not clear. Unfortunately, with salesforce announcing they will not be regularly releasing customer figures any more, it is difficult to know.

***END ERRONEOUS SPECULATION***

As for popularity, Google Trends suggest Dynamics CRM is still catching up with salesforce in terms of search results.

image

This is a graph of the search popularity of “dynamics crm” and “salesforce.com”. As can be seen, the gap is narrowing.

Any Financial Insights?

I talked last week about my concerns for any company selling ten dollar bills for nine dollars. Combining the finances with the subscription numbers we see something else of interest. Back in May I noticed that subscribers are becoming increasingly less profitable for salesforce. Here is the graph.

image

Here I have taken the salesforce subscription numbers above and the financial numbers from the detailed summary I used in last week’s blog. ‘PUPM’ stands for ‘per user per month’. So, in the case of ‘Revenue PUPM’, this is the revenue received by the average subscriber each month. In this case the number has tapered to around $50 and has been stable for the last 12 months. Revenue Cost is a figure salesforce use claiming it is the expenses directly related to the revenue, ignoring those inconvenient operating costs of sales and marketing and research and development. The revenue cost per subscriber per month is at around $10 and has been there for almost three years. Those pesky, expensive operating costs (sales and marketing, research and development and general and administrative costs) have hovered at around $40 per subscriber per month for about two years.

Doing the maths, the profit of a subscriber is $50 (revenue) – $10 (revenue cost) – $40 (operating cost) = $0 (profit). The variable for profitability appears to be the operating costs per subscriber. While it is hovering around $40 per subscriber per month, if this could be reduced, this would bring salesforce into profitability.

Conclusions

Both products are growing without obvious bounds and the market still appears to be growing for the two products. In terms of customer size, Microsoft CRM is penetrating the enterprise more effectively than salesforce products with the average Dynamics CRM customer size now being double the size of a salesforce customer.

In terms of catching up, it seems as if the range of salesforce products is getting away from Dynamics CRM, but that is ok. Without a clearer understanding of how the salesforce customer and subscription numbers are broken down, the comparison has only limited value. As for ‘front of mind’, Google Trends suggests Dynamics CRM is catching up on salesforce.

Finally, the financials for salesforce mean that they are not making money from their subscribers and the financials seem to be settling at around breakeven. Without reducing their operating costs, it is not clear how this situation will change.

Saturday, September 3, 2011

Does Salesforce Have Their Head In The Clouds?

This week I was going to do an update on the subscription numbers for Dynamics CRM and salesforce. However, the Q2 results of salesforce have something in them which means the numbers will have to wait another week.

Salesforce’s Q2 Announcement

If you want to see my thoughts on the salesforce financials, I recently wrote this blog. However, there is something disturbing, beyond the financials, in the latest update which is worth calling out. To see the Q2 results, here is the link. Here is a high level graph of the financials thanks to this nice summary.

image

The scale on the left is a logarithmic scale. This is not smoke and mirrors, it just makes the issue at hand really, really obvious. Because the most recent quarter was a loss it does not show here (log scales cannot handle negative numbers). We can look at a normal linear scale to see the same data with the latest quarter included.

image

So, first we play a game of spot the difference and see that while revenues and costs are moving in the same direction, because total costs are growing faster than revenues, the income is dropping. Salesforce is not demonstrating any economies of scale. In fact, they are acting like a reverse internet start-up. Generally internet start-ups run at a loss initially and then become profitable as they scale. Salesforce is doing the opposite.

However, the problem I have is not that salesforce is making a loss, although that is not good for any business. The problem is not that cash is flowing out of the business rather than in (as evidenced by the Q2 cashflow statement). The problem is not that salesforce promotes non-GAAP reporting which excludes the cost of giving shares to employees as compensation to ‘align their interests with those of our stockholders’ (here is Warren Buffett’s thoughts on hiding stock-based expenses).

The problem is they are not calling out the fact they are losing money and explaining what they are going to do about it in the long term.

The six bulleted highlights for Q2 mention nothing of making a loss for the first time in at least two years. Three of them refer to revenues (which are up), two of them talk about customer numbers (which are up) and the final one talks about operational cashflow (which is up but is dwarfed by the massive cash leaving the business through their purchase of Radian6).

I will not exhaustively go through the rest of the text other than to summarize each section with a bullet point.

  • Dreamforce plug
  • Revenue
  • Earnings Per Share (a heady combination of GAAP and non-GAAP numbers without reconciliation)
  • Customers
  • Cash (nothing about the overall loss)
  • Deferred revenue
  • Guidance
  • GAAP – non-GAAP reconciliation per share
  • Conference Call plug
  • Salesforce plug
  • A big section on their use of non-GAAP measures “Non-GAAP financial measures are not meant to be considered in isolation or as a substitute for comparable GAAP measures”
  • Safe Harbour Statement
  • Financial statements
  • Unaudited additional metrics
  • GAP – non-GAAP reconciliation (seems strange to have this right down the end but maybe it is normal)

Other than the financial statements, if you were to follow the text, you would think everything was fantastic for salesforce and there was nothing to stop them flourishing. Incidentally, GAAP is simply a convention on how to present financial information so that different company financials can be compared. Non-GAAP accounting is a divergence from this convention.

What About The Earnings Call Transcript?

You can read the transcript here. One disappointment in there is they say they will not be reporting customer numbers any more so my upcoming update of the subscription numbers will be the last for quite a while. While I can understand that the acquisitions will make the numbers a little muddy, even indications would be nice.

By their own admission, figures discussed in the call were non-GAAP. If “non-GAAP financial measures are not meant to be considered in isolation” why would they do this?

So what did Marc Benioff, Chairman and CEO of salesforce have to say about the financial loss? Here is a summary:

  • considers the Q2 results to be ‘strong’
  • talked about revenue growth justifying their growth strategy
  • talked about non-GAAP earnings (not mentioning the GAAP loss), revenue, operating cashflow and customer numbers
  • talked about some big deals signed
  • talked about his travels
  • talked about the cloud
  • talked about some more recent deals
  • talked about Chatter and Force.com
  • talked about the market potential
  • talked about Forrester’s predictions
  • talked about Dreamforce

In short, nothing about the loss in earnings.

Next was Graham Smith, CFO of salesforce. Here is what he said:

  • considered it an ‘exceptionally strong quarter’
  • talked about revenue and the drivers behind it
  • talked about revenue from different regions
  • talked about what the components of the revenue were
  • talked about their non-GAAP gross margin
  • talked about expenses, admitting they were up, attributing it to mergers and acquisitions and ‘aggressive hiring’
  • talked about how ‘aggressive hiring’ would continue for the rest of the year
  • talked about how R&D is the fastest growing expense and this ‘investment’ would continue
  • talked about how sales and marketing expenses were up and suggested this expense would continue for ‘building awareness’
  • mentioned a legal settlement which he quantified in per share terms but not in dollar terms
  • talked about how general and administrative expense had increased and how they intend to reduce it ‘in the long term’
  • talked about how the non-GAAP operating margin was down which was attributed to acquisition
  • talked about the non-GAAP tax rate
  • talked about non-GAAP earnings per share
  • talked about operating cash flow
  • talked about capital expenses due to acquiring office space
  • talked about cash being down, due to acquisition
  • talked about deferred revenue
  • talked about receivables
  • talked about the Radian6 acquisition
  • talked about non-GAAP guidance
  • talked about Dreamforce

The GAAP loss did not rate a mention. The closest to a profit strategy was the intent to reduce the general and administrative expenses, but that was it. No comprehensive strategy was mentioned for bringing the company back into profit. Nothing specific was mentioned for arresting the growth rate of expenses, relative to revenues.

What About The Q&A?

After the presentation, the audience of analysts had an opportunity to ask questions. Mark Moerdler from Sanford C. Bernstein & Co, Inc. got to the crux of the matter, forcing the issue of GAAP profit. Asking about the expected loss for the full year (around 10c per share) he asked what contributed to this. For more of Moerdler’s thoughts on salesforce, there is this nice summary.

Marc Benioff replied and made it clear why there is no focus on the loss and, in fact, why it is actively ignored (along with Moerdler’s question). Here are a few quotes:

  • “my job … is not to focus on that GAAP profit number”
  • “if we were focused on the GAAP number … we would be probably running a much leaner machine”
  • “the ultimate number and the most important number is the top line” (this means revenue)

To translate, at this point, Marc has no interest in ensuring salesforce runs at a profit. His focus is on revenue (top line) growth. The problem I have with this is there is no talk of how the company will move to profitability or how long they can run at a loss. The non-GAAP accounting simply gives us the measures salesforce believe are important for its future success. The GAAP numbers tell us what is needed now to run a profitable business and the fact is salesforce is not profitable and, based on the trends in my graphs, it will not be so for quite a while.

So Why Is It Such A Big Deal To Be Profitable?

In the short term it is not such a big deal. If you suffer a loss in a quarter, you simply dip into your cash reserves to cover the difference. The problems occur if this is on-going. If you continue to dip into your cash either you run out of cash (also known as bankruptcy) or you must find more cash (generally through borrowing from a bank or issuing more shares). If this continues either the banks refuse to lend because they are not confident you can pay them back or the share price drops so low as to be worthless.

For three plain English measures to ward off bankruptcy, here is an article worth reading. While salesforce has plenty of cash (around half a billion), the key concern I have is that of viability (over time the business must be profitable). It is well and good sacrificing profit for growth but there must be a plan for long term profitability and I cannot see it.

Surely Those Stock Options Are Aligning Staff To The Shareholders So Profits Will Come

This is where things get a little troublesome. Warren Buffett calls out the fundamental problem with stock options as a tool for behaviour control; while normal shareholders have used their own cash to buy their shares, stock option recipients sacrifice nothing for their options; they have no skin in the game. Moreover, the goal of a stock option holder is to get the share price as high as possible at the point where they can exercise the option (buy the share) as they can then immediately sell the share for a profit. This is not necessarily the same as ensuring the future viability and prosperity of an organisation, which is the goal of a long term shareholder.

At this point let me put a massive disclaimer here. Firstly, I have no position in salesforce stock and have no intention of getting one in the next 72 hours (which is the disclaimer I see on other blogs like this one). Secondly, what I present is not an allegation, simply a discussion of how stock options can lead to poor behaviour.

Firstly, if we see employees of a company receive shares through options and then immediately sell them, this has to be for one of two reasons:

  • they need the cash or
  • they believe the price will go no higher

There have been a lot of sales by directors at salesforce. You can see them all here. In fact, the CFO from the quarterly update is one of them. Unfortunately in terms of buys, there appear to be none happening. In contrast to selling, people buy shares when:

  • they have the cash
  • they think the price will go higher

For our inside sellers, the motivation is to ensure, on the day of sale, the share price is as high as possible. Therefore, they are not motivated to talk about financial loss and expenses growing faster than revenues because this could lead to the share price dropping. Moreover, they are not motivated to change the formula for ‘success’ as this could affect market perception and also kill the share price.

While I am sure salesforce does have a strong desire for revenue and are deeply focussed on the idea of ‘build it and the profits will come’, with the structures in place, there is no motivation for anyone receiving stock options to question how much growth is sustainable for the business and whether salesforce should focus resources on stemming expenses over growing revenues.

Incidentally, the accountants do have a measure of a sustainable growth rate. This is the rate at which a company can grow its revenues without borrowing additional money. My calculations put this at 9% for salesforce, in contrast to their growth rate for Q2 of 38% year on year.  

Conclusions

Salesforce is very happy with their Q2 results and, while revenue growth is great, it must be sustainable. To be sustainable, focus must be given to long term profitability. In the case of salesforce, the CEO is clear that profitability is not his focus at this time. To this end, salesforce has other measures which they use to monitor the health of the business, the so-called non-GAAP measures and while these measures may provide an insight which GAAP measures do not, they do not make $1 equal $2. The business still made a loss this quarter for the first time in over two years.

While a cynical man may assert that their pre-occupation with the non-GAAP accounting is, in part, driven by their motivation to deliver good news to the market and maintain the share price for exercising their stocks, I do not personally believe this to be the case. I believe Marc and Graham are just very optimistic about salesforce’s future, based on their non-GAAP measures, and the directors of the company are offloading their shares simply because they need the money in these hard times.

The problem is, while I want optimism in my directors, if I was a traditional shareholder, I would like to know that salesforce do not have their head in the sand in regards to their financials and have a plan for long term profitability. I would also want this clearly communicated as part the quarterly updates.

As an extreme example, let us say I start a business tomorrow where I sell $10 notes for $9. I imagine my customer base would grow rapidly (like salesforce). I imagine my revenues would also grow rapidly (like salesforce). I imagine my costs would also grow in line with my revenues (like salesforce) but this does not alter the fact that every time I am selling a $10 bill I am making a loss and selling more of them will only increase my loss. Even if I create different accounting measures which more accurately reflect the health of my business as I see it, the fact is I am buying something for $10 and selling it for $9 and, unless I change something, my business will never be sustainable and I will go bankrupt.

I like salesforce as a competitor and I want them to be around for a long time to come. Therefore I do not want them to sell something for $9 which is costing $10 to supply, because it is simply not sustainable.

Saturday, August 20, 2011

A Codeless Way To Complete Activities in the Mobile Express Client

One of the great drawbacks with the Mobile Express client for Dynamics CRM 2011 is how restricted you are when working with activities. Things like completing Appointments, once you have met with a prospect, are not possible with Mobile Express. Hopefully, the new client that Microsoft made mention of at WPC and in the last Statement of Direction will fix this. Until then, here is a nice trick for letting your sales staff complete Appointments, and add how the meeting went, all from within the Mobile Express client.

How Does It Work?

The trick comes from our ability to add Notes to an Appointment and using a workflow to complete the Appointment for us.

Making Appointments Visible in the Mobile Client

Firstly, we will need to be able to see Appointments in the mobile client. Most entities can be made visible in the Mobile Express client by ticking the ‘Mobile Express’ tickbox on the entity detail form.

image

Once you do this, you will see the entity, along with the others.

image

Opening an Appointment reveals the limitations inherent to the Mobile Express client. There is no ‘New’ button and no way to edit existing records. The only thing you can do is add a Note.

image

and therein lies our ‘backdoor’. By constructing a specific workflow, we can complete our Appointment and add details on our meeting.

The Workflow

Here it is:

image

The process runs on Notes on their creation. It checks the title of the Note and if it equals ‘COMPLETE’ it copies the description of the Note onto the Appointment and sets the Appointment status to Completed.

image

What Happens?

The upshot is if our travelling salesman adds a Note to an Appointment with the title ‘COMPLETE’ and puts in some text in the description box,

image

Our meeting will automatically close out with the text added.

image

Sorry about the unavailable warning. I ran a test Appointment first before writing the blog to make sure it would work. You generally will not see this.

Conclusions

There you have it. A relatively simple workflow which makes the Mobile Express client a little more practical. I have used the Appointment entity here but the same trick should work with pretty much any other activity type. Also note that, generally, the title field is automatically populated by CRM when you create Notes through the full client so it is unlikely that a non-mobile user will inadvertently close out an activity.

Enjoy.

Sunday, August 14, 2011

Changing the Lookup Reference When Importing Related Data

This is a handy new feature for the import wizard where matching off the name of a parent is not sufficient to link records you are importing to other records in CRM, such as where the primary name of the parent record is not unique. We used to be able to do this with the old server-side migration manager in v4 but not in the v4 import wizard.

Step 1: Getting a Template For Our Import

A really nice feature of Dynamics CRM 2011 is the ability to generate templates for all the CRM entities straight from the client. To do this, click the drop-down arrow on the Import button in the ribbon for the entity you want to import records for.

image

This generates an Excel-compatible XML file which has nice features like drop-downs for the pick list fields you need to fill in and tooltips to let you know the kind of information that needs to go into a field.

image

You will notice in the above image of the Contact import sheet that I have set the Parent Customer to ‘12345’. This is the Account Number for my parent customer, not their name, as would be traditionally used.

image

Setting the Lookup in the Import Wizard

Importing the data into CRM is very easy with the Dynamics CRM 2011 Import Wizard but, by default, the wizard will try to link our Contact to an Account with the name, ‘12345’, not the Account Number ‘12345’.

image

Therefore we have to adjust our mapping so it does not match on the Account Name but the Account Number. To do this we run the Import Wizard as usual by clicking the ‘Import Data’ button on the ribbon but when we get to the ‘Review Mapping Summary’ screen we click ‘Edit’.

image

Skip setting the entity you are writing the records to and click ‘Next’. This will bring you to the mapping screen where we link the columns in our data source to fields in CRM. In our case we are interested in the ‘Parent Customer’ field.

image

The magnifying glass means this is a lookup field and by clicking on the magnifying glass we can set the matching fields.

image

The Parent Customer field is an interesting one because it can point to either an Account or Contact. In our case we are only interested in modifying the Account referred field to be the Account Number. We modify it by clicking on the magnifying glass and setting Account fields to match on. In our case we might also untick the Contact as an option for the Parent Customer as we will only bringing in Contacts with a Parent Account.

image

The good news is now when we import everything goes to plan.

image

image

Enjoy.

Sunday, August 7, 2011

A Codeless Address Finder Using Filtered Lookups

A bit of a mouthful of a title but, basically, I am going to show how to set up a codeless set of dynamic picklists (now called option sets) by ignoring option sets and using lookups, which can now be filtered, as a standard feature in CRM 2011.

My example will be an address finder. In this case we will enter a country and this will then restrict the states. This will then restrict the postcodes (zipcodes for our American friends) we can select and then this will restrict the towns and cities we can select.

First Step: Get Some Data

For this example, I am going to use Australian postcodes, but it will work with any postcodes. Australian postcodes are available here and US zipcodes are available here. I cannot find a decent list of UK postcodes so, if you know of one, please add a comment.

The Structure

We will create four new entities:

  • Country: We will use the name field to store the name of the country
  • State: We will use the name field for the state and create a lookup to country
  • Postcode (or Zipcode): We will use the name field to store the code and create a lookup field to state
  • City: We will use the name field to store the name of the city and have a lookup field to the postcode entity

I will also add lookup fields to these in a new section on the Account record.

The results are something like this.

The Country record:

image

The State record:

image

The Postcode record:

image

The City record:

image

and finally the lookups on the Account record:

image

Getting Data Into the System

Using the downloaded CSV record, we adjust the data so that we have four columns in each file:

  • Postcode
  • City
  • State
  • Country

Given we are only dealing with Australia, I added the country record by hand. For the other entities, we can download templates by going to Settings-Data Management-Templates For Data Import. The templates that are downloaded are XML files but they are completely compatible with Excel.

Populate the Postcode.xml, City.xml and State.xml files using the data from the source file. You will have to eliminate the duplicates. Excel 2010 has a ‘Remove Duplicates’ function in the Data tab of its ribbon to clean up the data.

If the xml file is over 8M in size, it will not import. This happened to me so I saved them all as CSVs and all was good. I also noticed that the files had a bunch of extra empty lines at the end of them, where the duplicates had been removed (nice work Excel!). I opened up each file in notepad and stripped out the extra commas.

Now combine the three xml files into one zip file (highlight them, right click and Send To Zip File)

Go to Settings and click ‘Import Data’ in the ribbon. It should just work. In my case the postcode file did not automap but once I mapped the fields for it, within the import wizard, I was back on track. Here are my results.

image

You will notice that 275 records failed. This confused me but, with a little investigation, it turns out that there are some postcodes in Australia that go across multiple states. Therefore, when I imported the cities and tried to link it to one of these postcodes, there were two records in the system to link to for the two states the postcode traversed. Given the blog is more about filtered lookups than about importing data, I will live with the 2% fail rate.

Creating the Filtered Lookups/Dynamic Picklist

If we ran with our system now, the lookups on the Account record would have no knowledge of each other. I would have to trawl through all the cities in the database to link to the right one. This is where the new filtered lookup feature comes into play. To set up the filtered lookup, go to the Account form, select the State field and click ‘Change Properties’ in the ribbon. Down the bottom of the default tab are the filtered lookup settings.

image

We want to configure the ‘Related Records Filtering’ because we are matching the Country that the Account is associated to and the Country that the State is associated to. I untick the user’s ability to turn off the filter and turn off the search box.

The result is a list of states just for the country I have selected on the Account record.

image

For those of you outside of Australia, these are the states and territories of Australia. I rinse and repeat for the Postcode and City

image

image

The result is every time I click a lookup, as long the lookup above is filled in, the list will be appropriately adjusted, just like a dynamic picklist (dynamic option set). In the case of the postcode lookup, there is probably limited value (in the database, Australia has eight state values and almost 3,000 postcodes and we have no good concept of ‘county’ like the USA) but the solution shows its value in the city lookup.

image

Because I have already set the postcode to ‘2089’, CRM knows I must be in one of the three cities in this area.

Conclusions and Takeaways

If you have a nice taxonomy of values and need to dynamically adjust one as you set the value of another, this is not a bad way to do it. One thing to note though is that the solution does not enforce consistency. What I mean by this is, in the above picture, we could go back to country and select ‘USA’, even though the rest of the data are for Australia.

Also, (and this one is more for Microsoft on the off-chance they read this) what would be really great is, as well as the ability to use a common entity to filter the lookup, the use of a global option set. However, at this time, we only have the option of a common linked entity.

Finally, for this specific example, we are replacing the default address fields on the form with new lookup fields. If you are using default reports or have legacy reports which reference the system address fields, you will either need to adjust these reports or keep the system fields in sync via a workflow or plugin.

Enjoy.

Saturday, July 23, 2011

Gartner Trajectories of CRM Solutions

Back in April this year I did the ‘Forrester Trajectories of CRM Solutions’ which examined past Forrester reports for CRM in the mid-market and enterprise markets. At the time I struggled to find the Gartner equivalents. With the recent release of Gartner’s Magic Quadrant Report for Sales Force Automation (http://www.crm-guidebooks.com/2011/07/gartner-magic-quadrant-sales-force-automation-july-2011/) I thought I would see if, with the combined power of Google and Bing, I could turn up the quadrants this time around.

In fact I found the past five years of quadrants. Here they are:

image imageimage

imageimage

 

To Those That Have Fallen, We Salute You

Just like the Oscars I would like to take a moment to remember those products that did not make the 2011 Magic Quadrant. Since 2010 we have lost (cue sentimental piano music…):

  • Cegedim Dendrite (although 2010 was the only year they made an appearance)
  • FrontRange Solutions (GoldMine): located in the ‘niche players’ in the previous four years, they are no longer on the quadrant
  • Maximizer Software: another niche player that is no longer on the Gartner radar
  • Landslide: A ‘visionary’ that had slipped into ‘niche’ last year and unfortunately has fallen off the chart this year

In previous years we also lost off the Gartner quadrant:

  • Infor: last seen as a niche player in 2008
  • Consona: made a once-only appearance in 2008
  • Saratoga Systems: acquired by CDC in 2007, it fell off the radar in 2008
  • Entellium: the company filed for bankruptcy in 2009, bought out by Intuit
  • RightNow Technologies: last seen on the Gartner quadrant in 2007

New Contenders

The only new players to make the quadrant are Microsoft Dynamics CRM Online (the online version of the incumbent on-premise solution) and Zoho (http://www.zoho.com). Zoho is an online applications player based out of India (think of them as a budget Google apps). I have been watching Zoho for a while and, if you are in the market for a basic sales force automation solution, and want other applications like invoicing, simple accounting etc. it is worth looking at. A well deserved addition to the quadrant.

Overall Trends

In the Forrester trajectory post I observed a general trend towards the top right, suggesting all products were improving. This is not as obvious in the Gartner trajectories but what can be seen is a consolidation of products. Counting the number of products in the quadrant over the years we have:

  • 2007: 20
  • 2008: 16
  • 2009: 14
  • 2010: 15
  • 2011: 13

This can also be seen in the number of companies in the quadrant:

  • 2007: 13
  • 2008: 13
  • 2009: 11
  • 2010: 12
  • 2011: 9

In both cases the market has shrunk, in terms of participants, by about 1/3.

The movement of CRM products to the cloud will only, in my opinion, speed this consolidation up. The fact is, for small and medium-sized businesses, with minimal internal IT infrastructure, a cloud CRM offering is very compelling and very affordable. While there will likely always be a market for on-premise deployments (for example in regions with unreliable internet connections) the option of the cloud is becoming more and more acceptable for many organisations. Companies which choose not to offer cloud versions of their products will become more specialised, niche players or fade away.

Also, the barriers are high for new offerings. The combination of low price (and therefore low relative annual turnover) combined with the feature-rich nature of the incumbent products make it very difficult for a new contender to invest on building a competitive product knowing their return on investment will take a significant amount of time.

The future is likely to be dominated by cloud and cloud/on-premise offerings by a small collection of players already in the market.

Individual Product Movements

The products in the Gartner quadrant appear to be a lot more stable than their Forrester counterparts. Significant movements are:

  • Microsoft Dynamics CRM has migrated from a ‘challenger’ to a ‘leader’
  • Oracle CRM On Demand has moved from a ‘visionary’ to a ‘leader’
  • SAP has moved from a ‘niche’ to a ‘challenger’

The good news here is nothing appears to be moving backwards; two major players are now considered leaders in the industry and another is potentially improving. The stagnation of Oracle and the rise of the some of the niche players, such as SugarCRM, Pivotal and SageCRM, seen in the Forrester reports, is not seen in the Gartner reports.

Conclusions

Reviewing the Gartner reports it appears the sales force automation market is consolidating, probably due to the move to the cloud; a trend that will likely continue. While difficult for new contenders to enter the market, Zoho has made an appearance and it will be interesting to see how they fare in future reports.

The one consistency between the two sets of reports is the rise of Microsoft Dynamics CRM. While Forrester considers Microsoft Dynamics CRM the market leader, Gartner still sees salesforce.com as the player to beat. The battle between these two giants is great for consumers as both will work harder to produce the dominant product. It is a great time to be in the CRM industry and I eagerly await future Forrester and Gartner reports to see how the battle plays out.