Tuesday, June 8, 2010

How to send email through email template which contains image links in email body

Once we observed that creating a new email activity using an email template with some images in its body does not come through properly and only image links appear in the body.
During our research, we found another way to send an email with the above same email template in it. The steps to perform this are as follows:

· Instead of creating new email from Activity -> New -> Email, create the email from the grid of the entity’s record to whom the email is to be sent.

· Suppose, an email is to be sent to a particular contact, then go to contacts grid -> select that particular contact and then click on “Send Direct E-mail” button seen on the grid’s menu.

· This will ask the user to select an email template and here select the same template with images in it as was mentioned above.

· The email sent can be checked from that contact’s history and user can find that all the images come through perfectly.



Monday, May 31, 2010

Permissions to users for closing opportunities

In our organization, we wanted that some of our users should not be allowed to close an opportunity. In the user roles we didn’t find this specific privilege. Hence, we removed the “AppendTo” privilege from the opportunity entity for the role of those users who are not allowed to close opportunities.

Thereafter, whenever that user tries to close an opportunity for which he does not have permission, he would get the following message of “Insufficient permissions”

Note: Having done the above privilege changes, this particular user would not be able to associate any type of activities with opportunities.

Wednesday, May 26, 2010

Call an Update on the Post Update event of an entity

Now everyone knows, this would result in a recursive loop. It is always preferred that in such cases, the attribute that needs to be updated should be added to the property bag in the Pre-Update event itself.

However, if you do come across a situation where you need to update an attribute on the successful update of another attribute of the same entity, you might want to check the “Depth” property that is available in the Plug-in context.

The Depth property stores the depth of the plug-in that is count of the call that has been made to the same plug-in. In case of our situation, when it calls itself the depth is incremented and we can break the recursion by check for Depth Count > 1.

Tuesday, May 18, 2010

How to change top(n) rows command in sql server 2008

By default SQL allows editing of only 200 records at a time. In case you want to we edit more than 200 rows you can edit the setting for the count of rows to be edited. Here are the steps to make this change.

Goto Tools -->Options

In the commands tab,

Monday, May 10, 2010

User Mapping Error while Importing Organization

While importing an organization into CRM, one may come across the following error message “At least the setup user needs to be mapped before this organization can be imported”.

For this issue follow these steps:
- Update “Accessmode” , “Setupuser” and “IsDisabled values in systemuser table.
Query to update:
Update SystemUser Set Accessmode=’0’, Setupuser=’0’, IsDisabled=’0

- Click Start, All Programs, Microsoft Dynamics CRM, and then click Deployment Manager.
- Click on “Import organization”


- Type the SQL server name to which you want to restore the SQL Server database in the SQL Server , select the organization database and then click Next.


- Type the display name and then click Next.


- Type the report server URL, and then click Next.


- Select Manually map users, and then click Next.


- You will be able to see all the users in selected database so you need to map existing CRM users.


- Click Next after the system requirements checks are completed.

- Click Import to start the Import Organization Wizard.

- Lastly click Finish.