We’re very happy to announce that Working with Microsoft Dynamics CRM 2011, by Mike Snyder, Jim Steger, and Kristie Reid (ISBN 9780735648128, 624 pages) is now available for purchase.
The book’s table of contents and Introduction are available in this previous post.
Configure, adapt, and extend Microsoft Dynamics CRM 2011—guided by two of the leading implementation specialists in the field. Whether you’re an IT professional, a developer, or a power user, you’ll get pragmatic, hands-on insights for customizing CRM in your organization—with or without programming.
Discover how to:
Set up and configure your system
Plan and configure security settings and information access
Easily customize form attributes, views, and relationships
Create and deploy custom reports
Use xRM to quickly create and efficiently manage line-of-business applications
Automate business workflows
Extend Microsoft Dynamics CRM with scripts and assemblies
And now, an excerpt from Chapter 4, “Data and Document Management”.
Data and Document Management
One of the primary goals of most CRM systems is to make users more productive and efficient with their time. In today’s world of knowledge workers, most employees spend a lot of time each day interacting with data and documents. Therefore, it makes sense that any CRM system should provide excellent data and document management tools. In this chapter, we’ll review the key capabilities in Microsoft Dynamics CRM related to:
- Data Management
- Document Management
A CRM system can provide your organization lots of great benefits, but poor data quality in your database can eliminate many of the best benefits. Many times you’ll hear the expression “garbage in, garbage out” when organizations talk about data in their CRM system. If you don’t do a good job of keeping your database up to date, you shouldn’t expect great analytics, insightful reporting, or improved efficiency from your system.
Fortunately, Microsoft Dynamics CRM includes several features to help you load, update, and cleanse your data on a regular basis:
- Import Data Wizard
- Data Enrichment
- Duplicate Detection
- Bulk Record Deletion
Import Data Wizard
Very rarely does a company deploy Microsoft Dynamics CRM without any existing customer data. Even if you don’t already have a software system with customer names, addresses,
and so on, you probably have a bunch of customer data in various Excel and Outlook files. Consequently, there’s almost always a data import process to go along with each Microsoft Dynamics CRM deployment. After the initial setup and data import, you will find that at times you want to bulk load additional data into Microsoft Dynamics CRM. The Import Data Wizard feature in Microsoft Dynamics CRM provides excellent bulk data capabilities to minimize the time you need to manually enter data into Microsoft Dynamics CRM. With this wizard, you can import hundreds or thousands of records in just a few clicks. In addition to importing core record types such as leads, contacts, and accounts, you can also use the Import Data Wizard to import other record types, including any custom record types.
Examples of bulk data imports might include:
- A list of leads, contacts, or accounts purchased from a third party.
- A list of contacts obtained from a conference recently attended by the sales staff.
- A file full of business contacts brought by an employee who has just joined the company.
One of the key benefits of the Import Data Wizard is that it’s easy enough for most end users to learn. However, it also contains some powerful tools that allow system administrators to perform more complex data imports. You can even use the Import Data Wizard to dynamically create new data fields and custom entities on the fly, assuming that you have the proper security credentials.
For the most part, the Import Data Wizard always follows the same basic process:
1. Prepare the import files.
2. Import the file and map the records.
3. View the results and correct failures.
Prepare the Import Files
Obviously, before you can import anything, you need to gather the data into electronic files. The import files should meet the following criteria:
- The source data files must be in one of the following formats:
❑ XML Spreadsheet 2003 (.xml)
❑ Comma-separated values (.csv)
❑ Text (.txt)
❑ Compressed files (.zip)
- Include a column for each business-required field on the entity into which you are importing the data.
- You need one import file for each type of entity that you want to import. For example, if you want to import leads, accounts, and contacts, you need three files. Note that you can import multiple source files in one process by combining them into a single .zip file.
- Each import file must be 8 megabytes (MB) or smaller in file size. If you zip multiple files together, the total (including attachments) must not exceed 32 MB.
- If you want to import multiple source files that link records together (such as linking opportunities to accounts), each source file must contain at least one common column containing a unique ID or value that can be used to link the records.
Fortunately, Microsoft Dynamics CRM allows you to create templates for your import that you can download from the system. You can access the import templates one of two ways:
- On the application ribbon, click the Import Data button and select Download Template for Import.
- In the Settings area, click Data Management and then click Templates for Data Import.
When you download an import template, Microsoft Dynamics CRM outputs an XML file with all of the columns for the entity you selected. Starting with the import template provided by Microsoft Dynamics CRM (instead of starting from scratch to create your data file) provides several benefits, including:
- All possible data fields for the entity are included.
- All of the column headers are named and labeled correctly. This helps later because the Import Data Wizard will automatically map the fields.
- Required data field names are bolded in the top row.
- Hovering your cursor over a cell in Excel provides you with additional information about the data that should go in the field, such as its data type, maximum and minimum values, or maximum length.
- For option sets, the template displays a list of the possible values for the field. If you try to enter a value that is not included in the option set, you receive an error message. Please note that even though users cannot manually enter valid option set data into a cell, they could accidentally populate a cell with invalid option set values by dragging values through multiple cells where Excel auto-fills the values.
For these reasons, we strongly encourage you to download import templates from Microsoft Dynamics CRM as your first step when importing data, although this is not a requirement.
Import the File and Map the Records
With your source data files complete, you’re ready to import the data into Microsoft Dynamics CRM. To access the Import Data Wizard, click the Import Data button in the ribbon, or click the File tab, and then select Import Data from the Tools menu. The Import Data Wizard opens and you start by selecting your source file. Again, you can import multiple files at one time by zipping them together first and selecting the .zip file as your source. Microsoft Dynamics CRM then reviews the file you uploaded and provides a verification screen. If you used CSV source files, you also need to specify your delimiter settings at this time. If any of your records use the delimiter (such as commas included in number fields), you need to add quotation marks or a single quotation mark as the data delimiter.
On the next screen, the Import Data Wizard provides a list of the source data files it will import. If you uploaded multiple files zipped together, you’ll see the complete list of files contained in the .zip file.
After you verify the source import files, you need to choose a data map to use during the import process. Microsoft Dynamics CRM uses data maps as the basis for translating how a source field converts into a related destination field. Consider the following example: you have a file of contacts you would like to import into Microsoft Dynamics CRM. Within your source file is a column called First, which contains the first name of a contact. In Microsoft Dynamics CRM, the related field is named First Name. To import the data in the source file, you need to map the First field in the source file to the First Name field in Microsoft Dynamics CRM.
Microsoft Dynamics CRM includes the following options for mapping data in the Import Data Wizard:
- Default (Automatic Mapping) Microsoft Dynamics CRM automatically creates the data maps during the import process. This option is only available if you carefully name the source file column headers to match the field display names. Remember, downloading a data import template from Microsoft Dynamics CRM provides a quick way to get the correct headers in your source file.
- SampleDataMap Microsoft Dynamics CRM automatically creates a data map when you install the sample data. You will probably never use this map—it’s designed for use with the sample data utility.
- Salesforce.com Full Data Export This pre-built data map imports data from a full export .zip file extracted from Salesforce.com Enterprise, Unlimited, or Professional editions.
- Salesforce.com Report Export This pre-built data map imports report files exported from Salesforce.com. Use this option if you don’t have the full data export option in Salesforce.com.
- Outlook Business Contact Manager 2010 This pre-built data map imports data from Microsoft Outlook Business Contact Manger 2010.
Microsoft Dynamics CRM includes multiple data maps out of the box, shown in Figure 4-1.
After you select a data map, the Import Data Wizard tries to match the record types of the import files to correct entities in Microsoft Dynamics CRM. If you named your import file with the same name as the destination entity, the import will match the source file to the correct entity automatically. For example, if your source file contains account records, name it account.xml and the import process will know the source file contains account records. If one of the import file names doesn’t match an existing entity, the Map Record Types dialog box will present one of three options:
- Map the source file to an existing entity by selecting the entity name in a picklist.
- Choose the Ignore option in the picklist to skip the file in the import process.
- Select the Create New option in the picklist to create a custom entity in Microsoft Dynamics CRM on the fly for the data import, assuming you have the appropriate security privileges.
Figure 4-2 shows an import with a source data file named Project.xml. Because Project is not one of the Microsoft Dynamics CRM entities, it did not map automatically, as indicated by the yellow icon. For this example, let’s assume we want to create a custom entity called Project into which we will import the data.
After you select Create New, you need to enter the name and primary field of the new custom entity, as shown in Figure 4-2. Chapter 10, “Entity Customization: Custom Entities and Custom Activities,” explains how to create custom entities in more detail, but for the purposes of our import process, you can just accept the default primary field value of Name.
You also need to enter a plural name for the entity. We used Projects for our example, as shown in Figure 4-3.
After you finish mapping each of the source data files to an entity in Microsoft Dynamics CRM, proceed to the next step of the Import Data Wizard, where you will map fields. In the Map Fields dialog box, the import displays a green check mark next to the entities where the field mappings are complete and ready for import. If you used an import template downloaded from the system as your starting point, you probably won’t need to map any fields because that would be handled as part of the automatic mapping. Entities with a yellow yield icon indicate that you must complete the field mapping. In our example with the project data that will be imported into our new Project entity, we’ll need to address each field of the custom entity in the mapping process. Again, you have the option to ignore the field, create a new field, or map it to one of the two default fields (Created On and Owner) created by the Import Data Wizard. We will create new fields for everything except for the Owner field in the source file, which we will map to the Microsoft Dynamics CRM Owner field.
Creating New Fields When you select the Create New Field option, you need to enter the name and data type of the new field. In Figure 4-4, notice that you can create fields with most data types during the import process, but you cannot create fields with the following data types during the import process:
- Floating point number
- Multiple lines of text
You might also notice that when you create fields you cannot adjust some of the additional parameters regarding the data type, such as maximum length, maximum and minimum values, and precision. After you complete the import process and the entity is created, you can adjust these settings using the standard entity customization process.
In our example with the custom Project entity, the limitations on data types we can use in our new fields force us to ignore the following columns:
- Budget Currency data type
- Description Multiple lines of text data type
- Customer Lookup field that we want to map to the Account entity
Option Set Mapping When you’re importing data into option sets (formerly known as picklists), you might need to further adjust your data map because the source values need to match the option set values in Microsoft Dynamics CRM. If the Import Data Wizard finds option set values that don’t exist in Microsoft Dynamics CRM, it assumes you want to automatically create new option set values to match the source file. Table 4-1 shows an example of importing option set data into the Category field on the Account entity with a source data file that contains account category values that do not exist in Microsoft Dynamics CRM.