Topic: ‘Data’

 

CRM 4.0 Best Practices: Experience is always the silver lining.

Posted July 22nd, 2010 / 1 Comment

During my time as a CRM Consultant, I’ve realized something very important. However troublesome the journey, there’s always a silver lining – experience. So even though I’ve only been in the game a short amount of time, I’ve come up with a few best practices that I prefer to follow when implementing Dynamics CRM. For those who know me, I tend to be…opinionated is a good way to put it. So, yes there may be other ways to utilize CRM and still get by.

It’s known that each process flow – sales, marketing, service, SOP – requires a different path, but these should provide you with broad and useful guidance inside of CRM. Do note that the list below is by all means incomplete (Oh yes, I have plenty more…). These statements are an example of the tips that have given my clients – regardless of industry and business practice – the ability to enjoy clean, useful, and more importantly, valuable, CRM systems.

  • For DATA ENTRY…Before importing data into the CRM system, spending a little bit of time running through and shaping the spreadsheet. Cleaning up the rows and columns will save you hours of data cleansing down the road. CRM is only as good as the data that is placed into it. And who knows – you may have missed a column that you need inside of the system.
  • For PROJECT MANAGEMENT…Document, document, document. There is no such thing as “documenting too much.” Clients love nothing more than to see a clean, printed, color document with their logo on the front (who doesn’t?) and all the CRM information they could need. Documenting too little, however? That (unfortunately) exists.
  • For PROCESS FLOW…When converting to Customer records (in the situation where the Customer does NOT exist in the system yet), I always recommend converting to at least an Account and a Contact. This is not only a time saver, but it is proper structure. After speaking with and qualifying a Lead, you are always going to have a company and a person in the system (Who signed the Contract? What organization did you type into Hoover’s before meeting with them to do a demo?). The one exception may be the Opportunity. If there’s no potential revenue to begin working within the next 6 months (depending on your average sales pipeline time and size), you can probably hold off on the Opportunity until you see it in the pipeline and can properly document what is necessary.
  • For ATTRIBUTE ADJUSTMENT…When renaming fields, rename from the Attribute level the majority of the time. The main time renaming from the Form level comes in handy is when you have more than one field that needs to be named the same. (Example, “Date”). You can rename them in a unique manner on the Attribute level, and make them uniform on the Form level. The reason for this is mainly due to Advanced Find search capabilities. If you name everything the same, you will have more than one field in the AF search on that particular entity (causes much confusion).
  • When CREATING FIELDS…When creating a new field, once you save the record after creation, you CANNOT change the type. So always be sure that you have the correct field type selected, otherwise you will have to create another field. So after I create a Picklist, I cannot “change” it to a character field. Same thing with the schema name – once the field is created, the schema information set in stone. To “change” the field, you would only be able to create a new field and remove the old one. I always document exactly what I need to create BEFORE creating them in the system. If you’re working for a client, create a spreadsheet of the fields (Display Name, Field Type, Requirement Level, Number of Characters (for Nvarchar fields), Potential Values (for Picklist or Bit fields), and any additional information) – this is important for proper generation and understanding. Nothing’s worse than realizing you’ve made a dumb mistake and having to delete and recreate 100 fields. And then justifying (or more accurately, trying to justify) the additional work to the client…
  • For WORKFLOW…Always map and plan your workflow first before building the structure: this will help you just in case you make a mistake in the structure. Plus, mapping it out allows you to understand exactly what needs to happen. You may need a wait condition instead of a check condition – you can’t change this after you build the workflow.
  • For WORKFLOW…You can’t change conditions in the logic, so always make sure that you’re creating the workflow properly from top to bottom. This statement certainly ties in with the workflow best practice listed above. When adjusting the structure of a workflow, if you are removing/adjusting part of the basic structure, deleting one step will remove everything after it.
  • For ADMINISTRATION & TROUBLESHOOTING…Never delete a used security role. I know, you have the ability to do it, but I wouldn’t. Especially if a CRM user (or more than one CRM user) currently has the role. Deleting a utilized security role will kick those respective users out of the system. If you do want to get it out of the system, do this. Copy the role and plan on using the new role. Rename the old one to say “UNUSED” or “OLD.” Spend some time making sure all of the users are not assigned that particular security role. Run reports, AF views, whatever will help you verify that no one currently has that particular role. Then remove it from the system. This will keep you from getting dozens of angry, frantic emails.
  • A CRM/OUTLOOK TIME SAVER…Utilize CRM shortcuts from inside of an email. After you track an email or Contact from Outlook inside of CRM, there are two buttons inside of the individual Outlook record that will take you directly to the respective records inside of CRM: View Record and View Parent (this will take you to the actual CRM record). This is really handy if you’re converting an email to an Opportunity.

Do you have any tips or tricks that you use when implementing CRM? If you do, I’d love to hear them!

Continue Reading

 

Microsoft Dynamics CRM to GP adaptor now available

Posted July 1st, 2010 / No Comments

Use the Microsoft Dynamics® CRM Adapter for Microsoft Dynamics GP to integrate Microsoft Dynamics CRM and Microsoft Dynamics GP data. For example, you can integrate Microsoft Dynamics GP customers with Microsoft Dynamics CRM contacts giving you access to up-to-date customer/contact information in both systems.

The Microsoft Dynamics CRM Adapter for Microsoft Dynamics GP is intended to be used in an implementation where Microsoft Dynamics CRM is used to manage business contacts, track leads, enter sales orders, and perform other sales and marketing activities. And where Microsoft Dynamics GP is used to perform accounting functions, manage your company’s chart of accounts, and maintain customer, vendor, item, employee, and other records.

Within the Microsoft Dynamics CRM Adapter for Microsoft Dynamics GP, separate adapters are used to identify a source system (where data is read from) and a destination system (where data is written to). The source adapter reads data from the source system. The destination adapter writes the data to the destination system.

Record types that are integrated are referred to as “entities.” Some entity information can be integrated only one way between the two systems. For example, a Product that is entered into Microsoft Dynamics CRM cannot be integrated with Microsoft Dynamics GP as a Sales Item, but a Sales Item that is entered into Microsoft Dynamics GP can be integrated with Microsoft Dynamics CRM as a Product.

You can use this product to integrate the following entities in Microsoft Dynamics GP and Microsoft Dynamics CRM.

Adapters

Adapters are used to connect the runtime to the Microsoft Dynamics CRM and Microsoft Dynamics GP Web Services. This connection is used for reading and writing data from one application to another application.

The following adapters are provided:

  • Microsoft Dynamics CRM 4.0 adapter
  • Microsoft Dynamics GP 10 adapter
  • Microsoft Dynamics GP 2010 adapter

Transformation engine

At its core, the Microsoft Dynamics CRM Adapter for Microsoft Dynamics GP moves data from one system in one format to another system, in a different format. The adapters provide or supply the data from the source and destination systems, and the transformation engine changes the data from one format to another. The change that is made by the transformation engine is determined by the map that is associated with the type of data that is being moved. For example, to move a Microsoft Dynamics GP customer record to a Microsoft Dynamics CRM account record, the transformation engine creates a Microsoft Dynamics CRM Account object based on the transformation that is defined in the CustomerToAccount.map file for the Microsoft Dynamics GP customer entity and sends it to the Microsoft Dynamics CRM system using the Microsoft Dynamics CRM Adapter.

 Map templates

The Microsoft Dynamics CRM Adapter for Microsoft Dynamics GP includes a series of map templates that provide default field mapping between source and destination entities. You can create and edit new maps from the templates. You may need to do this to meet specific business needs or to ensure that any customizations that you may have made to your source or destination systems are considered. Map template files are stored at the installation location in the Templates folder and have a .map file

 Availability

This adaptor is only available thru your partner and is available at no charge. Installation and implementation can be quoted base on specific requirements where applicable.

Continue Reading

 

Quick Post on Pre-Filtering Data in Dynamics CRM 4.0

Posted December 16th, 2009 / No Comments

There’s an interesting post on the MSCRM Team Blog by Inna Agranov that verbalizes how to pre-filter your data in CRM, allowing you to query results much quicker. The post also contains a link to another article, located in the MSDN library. It describes in more detail how to filter CRM reports through SQL Reporting Services.

Click here to go to the Team Blog and read the post, or click here to go directly to the MSDN article.

Continue Reading

 

Renaming Fields Directly on the Form: When It’s Beneficial and When It’s Detrimental

Posted December 9th, 2009 / No Comments

For the most part, I try to steer people away from renaming fields directly from the form POV. This usually creates a more disorganized environment (and believe me, disorganized environments are my “nails on a chalkboard.”). If javascript is desired on the form sometime down the road, the code is usually difficult to understand and read if schema names do not accurately reflect the purpose of the code. Additionally, and most importantly, the information will be nearly impossible to understand from an Advanced Find POV (searching for SSN information by selecting Anniversary seems strange to me…). However, sometimes this comes in handy, and is almost beneficial from a form cleanliness standpoint. So I like to go by a certain “A or B” rule when renaming fields. This helps the environment I’m working on stay user-friendly and organized.

Situation A: I have a new field I want to put on the form, but I have fields on the form that I don’t use. Should I recycle a field or create a new one?

Solution A: Remove the unused field from the form, and CREATE A NEW FIELD. This will reduce the amount of confusion down the road, and it also leaves open the possibility of using that particular field sometime in the future. Business processes change, and the existing fields in the system may become useful sometime down the road. Always leave this possibility open by creating new fields for new needs.

Situation B: I have 4 different fields with the exact same name, let’s say Monthly Fee. I want them all to say “Monthly Fee” on the form, but I want to be able to run AF queries off of each of these data points.

Solution B: From an Advanced Find standpoint, it will be difficult to know which Monthly Fee field you’re selecting. If you’re looking for a specific one, they would need to be renamed to something else. When encountering this situation, I RENAME the field from the FORM LEVEL. I make sure each field name is unique from the attribute level (e.g. when I’m creating the fields, before saving them), and input an attribute name like Monthly Fee (Q1). Inside of the field properties on the form, there is a Display Name area. Rename the field here. Doing this keeps the form  clean (no parentheses), and keeps Advanced Find searchable.

Here’s a rough example:

FIELD 1: Monthly Fee would be the display name on the form, but the attribute’s true display name would be Monthly Fee (Q1)

FIELD 2: Monthly Fee would be the display name on the form, but the attribute’s true display name would be Monthly Fee (Q2)

FIELD 3: Monthly Fee would be the display name on the form, but the attribute’s true display name would be Monthly Fee (Q3)

FIELD 4: Monthly Fee would be the display name on the form, but the attribute’s true display name would be Monthly Fee (Q4)

The best way to accomplish the above example would be to plan for it – map it out before you create it. This will be much easier than fixing something that’s already built (mostly from a confusion standpoint rather than a time standpoint). However, if you already have an environment in place where this is an issue, the best way to do it would be to follow this process flow:

1. Rename the fields from the ATTRIBUTE level to a unique name (do this on all of the fields in question before moving onto step 2).

2. Rename the fields from the FORM level to a uniform name.

Continue Reading

 

New Dynamics CRM Post on MSCRM Team Blog: CRM Data Connector for SRS

Posted December 3rd, 2009 / No Comments

I was checking out the MSCRM Team Blog today, and I found a new post surrounding the CRM Data Connector. It includes information about what the Data Connector is, how it’s used, and a common issue that can emerge when utilizing the connector – definitely an informative read. Access it on the MSCRM Team Blog site by clicking here.

Continue Reading

 

How to make life more convenient: Duplicate Detection Status Exact Match

Posted September 29th, 2009 / 2 Comments

When you begin creating an new Duplicate Detection rule or continue altering an existing one, the common behavioral actions are to include First Name, Last Name, Company Name, etc. The basics. And from there, yes, you will be able to detect duplicates as long as the data related to the records are in fact exact matches. 

Here comes the big question: once you deactivate a particular record, wouldn’t the record automatically be excluded from Duplicate Detection results? No. It wouldn’t. Yes, it is an Inactive record, but it will still be included unless you specifically state that you do not want Inactive records to be included in the results.

The rule is set up to do exactly what you tell it to do. It won’t read your mind  and think about what would be the most efficient additions to the rule. 

If you want to only search inside of active records for duplicates, you need to include an Exact Match line on the Status field. (Be sure to save and republish the rule after making any alterations.)

01 - Duplicate Detection Window

This way when you go through and merge any records you find that are in fact duplicates, they won’t be included again and again in the search results. This makes it much easier to quickly dwindle down the amount of records that appear in the Duplicate Detection results.

Hope this helps!

Continue Reading