Monday, October 29, 2012

How to import sales data?

One of the most boring jobs in CRM 2011 deployment process is to import the data from old systems. I think the most complicated section is to import sales data. The import process is straight forward and you should follow some simple steps:
  1.  Export data from the old systems. You should consider the required fields of the CRM 2011.
  2. The most required and manual part of this process is data cleaning. Although systems use various validations, but some kind of dirty and invalid data could be found everywhere.
  3. Prepare a map to import data. Here, you have to specify a corresondence between the exported data fields and system fields of each entity.
  4. Excell files (.csv) are the most desired format of the export and import types.

Following are the notes one has to consider importing sales data (Opportunities, Quotes, Orders …):
  •  First of all the head of the entities have to be imported.
  •  Products of each entity are the second step.
  • If the products are not pre-defined, they should be imported as “write-in product”. This type has no units.
  • The last step is to change the status of the imported objects. Workflows or dialoges could be used for this step.
  • The objects should be imported by the order of the sales flow. For example, first the opportunities, then the quotes should be imported to avoid miss-linking.
  • After the completeion of each import job, check the errors and partial failures to prevent reimporting.

Tuesday, October 23, 2012

Send error to Microsoft

One of the most annoying alerts in the Dynamics CRM 2011 is the "Send, do not send" error. These kind of errors are not critical and do not prevent the system from working. Each user could configure self system to avoid these kind of error. To do this follow these steps:

  1. Click on the "File" at the upper left corner of the browser. Then click "Options".
  2. Navigate to "Privacy" tab.
  3. Set the option on "Never send and error report ..." or "Automatically send an error ...". Save the Changes.

These changes could be done by user for their systems. If it is desired to set this configuration organization wide, do the following steps:
  • Go to "Settings" at the site map. Then follow these path: Administration > Privacy preferences > Error reporting.

  • First, check the box "Specify the web ..." to activate the other options.
  • If the "Never send ..." option would be selected, then sometimes the error of the bellow picture could be encountered.

  • If the "Automatically send the ..." option would be selected, then non of the errors could be encountered.
  • After these steps, the "Privacy" tab of each user will be disabled.
  • Finally, you should consider that, mentioned error sometimes contain important information which helps in debugging the system. Hence, when you are going to debug the error sending should be activated.

Wednesday, October 10, 2012

Products and Price Lists

In this post the business and definition method of units, products, price and discount lists will be discussed. To define these items, the following steps should be used:
  •        Definition of units and unit groups.
  •        Definition of products.
  •        Definition of discount lists.
  •        Definition of price lists.

First of all, we have to describe the units and unit groups.

A unit group contains the base unit a product is available, and then lists all the different increments that this base unit is packaged for the sale [Dynamics CRM definition]. For example, if you sell milk the base unit would be liter. Other units could be Gallons, KGs etc. To define these units follow these steps:
  1.        Define a unit group, namely “Volume”. The base unit could be “Liter”.
  2.       After you have saved the group, the “units” tab in navigation bar would be activated. In this section new units could be added.
  3.        A Gallon is 4.546 liters. Hence, the quantity should be 4.546. Base unit is “Liter”.

After the units definition, the products could be defined. In this step, for a new product you have to enter some information such as name, ID,… . The unit group and unit could be selected according to what already defined. “Decimal support” shows the fraction of the product that could be sold later.

Next step is to define discount list. A discount list contains the specific discounts that can be applied to a product, based on volume purchased [Dynamics CRM definition]. The information of a discount list is completely independent of the product; hence it could be used for more than a price list item. To define a discount list, first you have to save a name and type for it. Then, the discount “begin quantity”, “end quantity”, “amount” should be entered.

The final step, is to define price list and its items. The price list items, are exactly what we need when creating quotes. Creating a price list item, one should specify the unit, product and discount list. Some important notes:
  •          A product could be sold as multiple price list items, with various discount list and units.
  •          If you select a discount list, the discounts automatically will take place when creating quotes.
  •          If you select “whole and fractional”, the decimal support of the product would be used for fractional option.

Congratulations, you are ready now to create a quote!

Sunday, September 30, 2012

Useful Java Scripts for CRM 2011


This is the first post of my blog. Hope to be useful! Here, we are discussing about adding Jscript to forms and fields.

To add script to a form follow these steps:
1- On the form, click on "Form Properties".
2- In the "Events" tab, add a new library.
3- Create a new library, and type a name and select the type as "Script". After you have saved, you can enter the script in "Text editor". At the end of this article you will find some examples.
4- At the last step, you have to add the handlers. In Dynamics CRM 2011, the forms have two type: "On load", "On save". Here, you should fill the library name and function. The function name is the same as in the script.
To add script to a filed follow these steps:
1- On the form, double click on the field.
2- Find the events tab.
3- Add required libraries for the field.
4- The fields in Dynamics CRM 2011 only has one type of handler: "On change".
After you have added and published the changes, the scripts should work! Of course, if it is true!

Some useful examples for CRM 2011:

1- Retrieving the value of a field:

Xrm.Page.getAttribute("schema name").getValue()

2- Setting value for the variables:

Xrm.Page.getAttribute("schema name").setValue()

3- Disabling a field:
Xrm.Page.ui.controls.get("schema name").setDisabled(true)

4- Disabling the options of an option set:

Xrm.Page.getControl("schema name").removeOption(option value)

5- Hiding a ribbon button:

var x=top.document.getElementById("entity name|NoRelationship|Form|button name");'none';

6- Hiding a filed on the form:
Xrm.Page.getAttribute("schema name").setVisible(false)