Thursday, January 7, 2010

Debugging Script with CRM events

Writing JavaScript in CRM is a tedious job and finding the error in your script is even more difficult. The best way to find the error cause is to debug it. The blog will give you the steps to debug the scripts added on form events in CRM.

Steps to enable debugging script:

- Go to Internet Explorer settings.
- Click on Tools and select Internet Options. You will we see following screen.


- On the Advanced Tab, under Browsing find the Disable script debugging (Internet Explorer) option and uncheck it.
- In the script use “Debugger”, just before the statement where you want to start your debugging session.
- For example: you can write script under the CRM events such as onLoad, Onsave etc.
debugger;
//after start to write script
- After add script ,save it and publish. Refresh the page, you will see following screen.


- Select new instance of visual studio 2008/2005 and click on yes. After this open script code on visual studio for debugging mode where you can debug own script. (See below the screen)

Monday, January 4, 2010

How to change the properties of the Primary Attribute of an Entity

The blog will help you change the properties of primary attribute of an entity. Modifying properties of primary attribute is disabled when you try to do it from “Primary Attribute” tab. However you can change the properties if you opened the attribute from Attributes left navigation instead.


Follow the steps below to change the requirement level for account entities primary attribute “name”. (Note the Ownership of entity does not matter here i.e. as “User” or “Organization”)

1. Go to Attributes and select “name” i.e. primary attribute of entity. As shown in below screen shot.


2. Open primary attribute i.e. name and change its Requirement Level to “No Constraint” then Save and Close.


3. The changes will also get reflected in Primary Attribute tab. Publish account and test the changes.

Monday, December 28, 2009

CRM Relationship Behavior

The blog will help you in the scenarios when you requires to move records from one user to another user with some conditions. Like in scenario one of your sales rep leave the organization and you need to assign his records to the newly joined rep but you also need to keep the history of this old rep (completed work like activities etc) in such scenario you need to check what type relationship behavior is applied in your entity relationship.

The relationship behavior feature of CRM handles action output as per specified settings. Like you can decide major actions Assign, Delete, Share to be handled properly. Say you assigned accounts from one user to another user and in this action you also need to assign all active calls to new user but not need to assign completed call then in such scenario you need to provide relationship behavior of Account-Phone Call entity to Configurable Cascading and set apply rule as “Cascade Active” for Assign action. This will apply changes as per discussed above.



The different type of behaviors provided are,
Parental
o In a parental relationship between two entities, any action taken on a record of the parent entity is also taken on any child entity records that are related to the parent entity record. if you delete a record in the parent entity, the related child entity records are also deleted; or if you share a parent entity record, the related records from the child entity are also shared. All option are disable for Parental relationship
Referential
o In a referential relationship between two entities, you can navigate to any related records, but actions taken on one will not affect the other
Referential, Restrict Delete
o Actions taken on parent will not affect child record but parent record cannot be deleted till the child record exists. i.e you cannot delete a record when related records exist.
Configurable Cascading
o You need to specify your setting here.

The type we are interested here is “Configurable Cascading”. It allows you to decide what type of behavior we need to apply.

The useful details of different cascading rules are (note here me is referred to the user on whom you will perform actions)
• Cascade All: Perform action on all of my child records. Like if assigned my account to another user then all my activities, orders, invoices etc are assign to new user including open, completed and other user owned records
• Cascade Active: Perform action on only my active child records
• Cascade User-Owned: Perform action on all my child records which is owned by me
• Cascade None: do nothing to my child records
• Remove Link: remove link from child record
• Restrict: Applies to Delete. The delete is not allowed if there are other entity instances that reference the ID of the entity instance being deleted.

Friday, December 18, 2009

Send bulk mails from campaign and quick campaign using Mail Merge feature

The blog will cover the process on how to send bulk emails using Quick Campaign as well as Campaigns with the help of Mail merge document. The Mail merge document allows ability to create your own word document in which you can format the mail content as per your requirement easily. The most useful feature of using mail merge is you can add images in the mail which you can not directly add in CRM mail.

Send mail merge email using quick campaign
You can create quick campaign from marketing list/CRM view you can create it using following steps,

Click on toolbar button “Create Quick Campaign”


Now follow the steps and on selection of activity type select the “Email via Mail Merge” option. (Note the below option will only be viewable from outlook client machine i.e. where outlook client is installed)

Here select the mail merge document. Open word document and follow the steps. You can update the content of the document if you need. Once all the steps completed send mail from “Electronic mail” option this will send mail to the members present in Marketing list.

You can create activity in CRM by choosing the option from below screen,

In quick campaign you can track the sent mails and tracked response from the clients just one another below as shown in below screen shot.

Send mail merge email using campaign
Here you need to create campaign activity against campaign which should include target marketing list from campaign to distribute the mails. Note while adding marketing list in campaign you will be prompt that add this marketing list to undistributed campaign activities. Select this option.

On campaign activity choose Channel as “Mail via mail Merge”, now once the campaign activity created you can click on toolbar button “Distribute Campaign Activity” to send the mails. (Note the distribute campaign activity feature is only available in outlook client).

On click of button you will shown the pop up to select the mail merge document and you need to follow same steps to send mail and create activity in CRM.

The main difference in campaign and quick campaign is when you send mail from campaign activities it allows you to select different type of customer i.e. accounts, contacts, leads but in quick campaign you can create mails to single type of customers.

Wednesday, December 9, 2009

CRM data dictionary

To check the CRM data dictionary you can browse to

http://servername:port/OrganizationName/sdk/list.aspx

where
ServerName: Name of the server with port number.
OrganizationName: Name of the organization.


The data dictionary lists out both system and custom entities and attributes defined for the organization.

If you click on the icon in the Definition column, you can view all the attributes in the selected entity. At the top you can view ownership type of the entity, its type code, whether it is customizable, and if it is valid for Advanced Find.

In the next table we can see each attribute with various information as attribute type, length, valid for create, read, update and so on.

Also we can see the relationships of the current entity. It give a look of relationship name, condition, relationship type etc.