Tuesday, November 24, 2009

CRM Hosted - Pro's & Con's

We get more and more questions about hosted or subscription versions of sales management tools. We have a white paper that goes into the detail, but here's an outline of why you might or might not be interested in a hosted option:


1. Anytime/Anywhere Access to your data
With a hosted or subscription product, you can log in to your database from any computer that has Internet access. Your server and other programs are protected by your internal security.

2. Elimination of Hardware and Maintenance Headaches and Expense
My favorite aspect of hosted or subscription software is that there are no hardware issues. Because these services are specialized, their server and security settings are appropriate for the software so there are rarely installation or incongruity issues. You don't have to buy or maintain servers or server software. You don't have to worry about updates, upgrades, software maintenance, or backups. Countless headaches and substantial investments are eliminated.

3. Tax Benefits
I am neither a tax accountant nor a tax attorney, so this is unofficial, but my understanding is that your monthly payments for a hosted or subscription software are expensed in the year you pay them, where server hardware and software would by treated as fixed asset investments and only the allowable depreciation would be expensed in a given year.

1. Ongoing Expense
It's true. You have to keep making monthly payments as long as you use the program. These are usually small monthly payments for each user registered to use the software. Some services require that you also purchase the software licenses.

2. Software Limitations
Subscription software often has constraints that you do not have with software that is installed on your own server. These constraints are generally imposed because the hosting service must protect its servers from unrelated software or interfaces that could endanger or conflict with the main software they provide.

3. Data Conversion
Make sure that you know before subscribing to a hosting service what the process and expense will be to obtain your data if you decide you no longer want to use the service or the software. Any reputable service will guarantee that the data is yours, but it is important to know what's involved in getting it in your hands and what form it will be in.

If you want to learn more about subscription or hosted CRM, call me at 713-995-8455 or email me at susan@powertime.com

Saturday, August 22, 2009

Unique Numbers for Records

Creating unique numbers is something we are often asked to do. There are a number of ways of accomplishing this, from creating a separate entity that autonumbers when a workflow is activated, incrementing your number by 1, to combining several fields, to this, which is easy and creates a date/time based number when you create the record. This one uses just a snippit of code in your OnLoad event - the only thing you have to change is the field into which the number is to be entered.

In my example, we are creating commission records. The unique number is going into a field called Commission ID. The system name for the field is ptc_commissionid. This will create a new number only if the Commission ID field is empty.

Here's your unique num generator:

//Unique Num for Commission ID
var oCommissionID = crmForm.all.ptc_commissionid;

if (oCommissionID.DataValue == null)
oCommissionID.DataValue = (new Date().getYear().toString()).substr(2,2) + (new Date().getMonth() + 1).toString() + new Date().getDate().toString() + (new Date().getTime().toString()).substr(6,4);

Other letters or codes can be added to signify the entity or other information, if you wish. This pulls the last two digits of the year, the month, the day of the month, and a portion of the time in milliseconds, so duplication is very unlikely.

Saturday, April 25, 2009

Tech Tip: Migrating Attachments

It seemed like an easy task: Migrate attachments from a record in one entity in Microsoft Dynamics CRM to another.

And it is. The hard part is finding out how to do it. After a week of trying to get an answer, a great deal of trial and error, and feeling much like Thomas Edison, who said he succeeded in inventing the light bulb only because he'd run out of ways that he could fail, I have the migration of attachments from one CRM entity to another working. And it's very simple. This solution, as with most of our migration solutions, makes use of the tool called Scribe, which we recommend to anyone performing migrations into Dynamics CRM. The following assumes that you have Scribe in place and are familiar with the basics of creating a Scribe dts (data translation specification).

Here it is:
Step 1: Seek on the record using whatever parameters will give you a unique match.
Step 2: Insert Annotation, with the following fields mappings:

Target Ownerid Formula = DBLookup(SXX,"T","SystemUser","FULLNAME","SystemUserId") Where SXX=Source OwnerIdName (Copy and Paste the Rest)
Source Subject > Target Subject
Source Filename > Target vfAttachmentFileName
Source DocumentBody > Target vfAttachment

Nothin' to it! Go forth and conquer!

Wednesday, April 22, 2009

Networked, On Premise, Web Based, Hosted, Cloud ... WHAT?

What is all this jargon?

In addition to our three basic categories of software for managing your customers (see my blog "Finding the Right Sales Tool for Your Business"), products come in a variety of accessibility forms. This discussion is merely a starting point to help you identify which approach is right for your business. As I always suggest, a knowledgeable consultant is well worth the investment to help you implement the right solution to grow your business.

This refers to products which have the data located on a server in your company and the users’ access to the data is across either a cabled or wireless network, generally within a single location. Remote users may have a copy of the database which is periodically synchronized with the central database. Examples of Networked Sales Software would be ACT! by Sage, Goldmine, or Sage CRM SalesLogix. The advantage is that you have complete control of your data. The disadvantage is that your data is available to you only through the network, a VPN or Terminal Server connection, or with a synchronized database that is not real-time. You also have the expense of acquiring and maintaining a server and your software.

On Premise Web-Based
This means that the software and data are loaded on your server, but you can access the data across the internet without being connected to your network. ACT! for Web and Microsoft Dynamics CRM On Premise are samples of On Premise Web-Based products. The advantages are that you have complete control and you can access your data any time from anywhere if you have internet access. The disadvantage is that you must have a server and maintain your software and the server.

Cloud or Software as a Service (SAAS)
Software as a Service (SAAS) or Cloud products are web-based tools that are housed on, generally, the software publisher’s servers. These are subscription-based. You pay a low monthly fee per user and the software publisher houses the software and your data. You don’t have to worry about a server, backups, server or software maintenance, or upgrades – it is all handled for you within the monthly fee. Generally, you can get your data on request. Samples of Cloud or SAAS products are Microsoft Dynamics CRM Online, SalesForce.com, and Sage CRM Online. The advantages are a low cost of entry for a high-end product, any time anywhere access, and no server expense or worries. The disadvantages are that the fees are ongoing, there is some functionality that is lost compared to an On Premise version, and the data is offsite.

A hosted solution is essentially a combination of an On Premise and Cloud solution. You have an On Premise product that is housed on someone else’s computer. The advantages are that you do not have server purchases or software or server maintenance, but you often have the On Premise functionality that is lost in a Cloud version of a product. Hosted arrangements vary significantly. Sometimes you own the On Premise version of the software and must purchase upgrades as they are issued. Other times use of the software is included in your monthly fee, similar to the SAAS approach. Disadvantages are that you have an ongoing fee rather than a one-time expense. It is also important with a hosted solution that you know the viability of the hosting organization and you are comfortable with their security measures and backup procedures.

I hope this has helped take some of the mystery out of the terminology related to the framework on which your sales software is built. There is no right or wrong answer - it all depends on your company's needs, philosophies, and plans. If you have more detailed questions, email me at susan@powertime.com .

Finding the Right Sales Tool for Your Business

There are literally hundreds of computer programs designed to help you sell more of your product or service. The following general discussion will help you understand the different categories of these tools so you can narrow your search. We will focus on “packaged” products that are generic in their nature, as opposed to industry specific or custom programs.

Please Note: The assessments below are very general and intended to be merely a starting point. Individual software programs and/or vendors may differ. My purpose is to help you narrow the scope of a search to products that meet your basic criteria. If your needs seem to cross categories, we recommend that you discuss your requirements with a qualified consultant.

I. Personal Information Managers (PIMs)
Personal Information Managers (PIMs) are centered around you, the user. Microsoft Outlook is a classic example of a PIM. Emails are all in your Inbox. You have a list of personal contacts, your personal calendar, and your task list. The information is not shared with other people in your company, and it would be difficult to put together a summary of all of your involvement with a particular account.

PIM Pro’s
If you have a computer, you probably have Outlook, so cost may be considered $0
User Centric

PIM Con’s
Single User Functionality Only
Information is not readily sharable
Doesn’t track information by contact or account
Not customized to your functions or business
Functions are very basic

Who should use a PIM?
PIM’s are a solution for the new “road warrior” who is just getting started and can’t afford anything more. However, the next step up, a program like ACT! by Sage, can do so much to help grow his business, that purchasing at least a contact manager should be a goal for anyone serious about selling.
That said, the functions within Microsoft Outlook, Word, and Excel are essential foundations of every tool we will discuss, and a seamless integration with Microsoft Office is key to user adoption.

II. Contact Management/Sales Force Automation
This category includes software packages such as ACT! by Sage, Goldmine, and Maximizer. Unlike personal information managers, these products are specifically designed to manage the sales process and may be focused on either the customer contact or the account. They interface directly with Microsoft Outlook, Word, and Excel. What differentiates them from MS Office by itself is that they provide central storage of all information about the prospect or customer. Looking at a contact record, you can see all related activities, emails, letters, calls, and notes. And the information can be shared with other members of the sales team and management. Data can be grouped and mass actions (scheduling, sending emails or letters) can be taken for the entire group. Most of these products can be configured to meet basic business-specific information requirements, but these products are designed to be usable right out of the box. Millions of users depend on them to manage their sales efforts.

Contact Manager/SFA Pro’s
Low cost – An individual can generally get started for as little as $200
Can be used by an individual or a workgroup
In very small groups, a server may not be necessary
Contact or Account Centric
Easy User Interface
Familiar – Millions of users
Many available addon products available to extend these products due to their popularity

Contact Manager/SFA Con’s
Generally best for fewer than 35 users and 20,000 records
Focus is on either contact or account. It is not possible for the primary focus to be on some other aspect of the business, such as contracts or opportunities.
Customization is possible but within limits of the program
Functions and structure, while extensive, are fairly rigidly defined
Addons are necessary when functionality is not built-in. There is a hazard when using addons that the main product and addon will be “out of sync” when the main upgrades.

Who should use a Contact Manager or Sales Force Automation Tool?
The products in this category are widely used by individuals, small companies, and sales workgroups within large organizations. They work best in a classic sales environment in which you want to share information about customers and “keep it simple”. Management wants to get information about the sales team’s activities, but the software is primarily the sales rep’s tool.

III. Customer Relationship Management (CRM)
The category called CRM or Customer Relationship Management includes such products as Microsoft Dynamics CRM and Sage CRM SalesLogix. Unlike a Contact Manager or Sales Force Automation tool, a true CRM package encompasses at least:
Customer Service

In addition, these products generally have the ability to

  • Manage and automate the processes involved in marketing, sales, and customer service through the use of custom workflows
  • Be extensively customized to the specifications of the business and functions for which they are used
  • Gracefully handle large numbers of users and records
  • Add custom data entities or tables to the base structure
  • Secure data more tightly than is possible with a PIM or SFA program

CRM Pro’s
Extensive functionality "Out of the Box"
May be used by large numbers of users with large numbers of records
Highly customizable
With some programs, the same ability to link data, schedules, emails, etc. is available with any type of record.

CRM Con’s
Cost of entry is higher than a PIM or SFA
For “On Premise” products, a server is required
Not intended for the single user
User interface tends not to be as simple as that of a PIM or SFA because functionality and customizability are so much greater
Rules of usage must be established so everyone enters data in the same way

Who should use a CRM program?
A true CRM is the right solution for the company which

  • Considers it important to coordinate the efforts and communications of marketing, sales, and service teams
  • Wants to extensively customize the software to its unique business or functional requirements
  • Has users in multiple locations – even multiple countries with multiple languages and currencies
  • Wants to significantly automate and manage business processes
  • Is looking for a maximum return on investment, and is willing and able to invest to receive the return

In Summary
Competing in today’s challenging marketplace means taking advantage of all of the tools available to you. One way of taking better care of the customer and reducing cost of customer acquisition and retention is to make computers do more of the time-consuming, tedious work so you and your team can spend more time in front of the customer. There are many software packages on the market that are designed specifically to assist you in that process. This information is provided to give you an overview of the options available and some of the decision factors that will determine which approach is appropriate for your business. To maximize the benefit of any of the options described in this paper, we recommend enlisting the assistance of a knowledgeable consultant.

For more decision-making help, check out my blog on CRM Platforms: On Premise, Hosted, or Cloud

Code for Non-Programmers: Migrating Record Owners

I use this code in every Microsoft Dynamics CRM migration I do. We use a tool called Scribe for CRM migrations (ESSENTIAL). Scribe is a fantastic tool, but, despite their marketing otherwise, you DO need to know some programming code to have a successful migration.

DBLookup is a function that is used to populate fields in one entity in CRM that are linked to another entity in CRM. For instance, if your source data has record owners, you probably want the records in CRM to be owned by the same people. However, record owners are users, and to have the system know what user to link to a record as its owner, we must tell the system what the user's ID is. This is a background code that you never see, called a GUID. Without DBLookup, all records will all be owned by the person running the migration. DBLookup is also useful in populating Parent Companies or Primary Contacts or any of a thousand other linked fields.

In Scribe, you have Source fields, identified as S##, where ## is the counter of the field assigned by Scribe, and you have Target fields, in this case, our CRM fields. Any CRM fields that are linked to another entity are identified by two fields, one a text field that usually ends in "name" and the other the linking ID field, which is a 34 character GUID, the name of which always ends in "id". In this sample, let's say our Source field is S14 Record Owner. In the Target, CRM, we have Owner and Ownerid. Scribe does not allow you to link directly from your source text field to the CRM Owner field. To make the link, you would use the following formula on CRM's Ownerid field:

DBLookup(S14,"T","SystemUser", "Fullname","SystemUserID")

To a programmer, this is obvious. To the rest of us, here's the logic:

S14 is the Scribe reference number for the Source field. This is the only thing you would change in your application.

"T" means target. You are comparing the source information to data in the target. There are other choices like "S" for Source, but for Owner, you will always use "T".

"SystemUser" is the name of the table where the target data is found, in this case, the user table, because owners of records in CRM must be users.

"FULLNAME" is the name of the field within the SystemUser table that will have data matching your Source information (S14 in the sample). These must be exact matches.

"SystemUserID" is the computer's unique code field (GUID) associated with the data in the FULLNAME field. Until we have this GUID, the system does not know who the owner is.

There you go! Nothin' to it, right?

Look for more Code for Non-Programmer blogs. I'll include snippits for CRM customization and for Scribe migrations. If you want to contribute your code with explanations for non-programmers, I'd love to share it!

Code for Non-Programmers: Intro

One of the challenges I often face is that I am not really a programmer, but I need to use code to accomplish what I want to do. My guess is that I'm not the only one. I therefore decided to include in this blog samples of code I find helpful with explanations for real people. Real Programmers will find these notes silly in their simplicity. Hopefully, those of you who are not programmers but occasionally want to "do your own thing" without involving a programmer will find them helpful. They are intended for your eyes only!

I will start any blogs of this type with "Code for Non-Programmers:"