Tuesday, December 23, 2008

Community Contribution more than 100 answers

Dear Readers, this is just to show you my activities for forum, I am busy now a days in Singapore so could not write any thing. I hit more than 150 even correct answers less than 30 days.

Hopefull with new year, I will come again with new posts (Technical for MS CRM 4.0).


MVP CRM https://mvp.support.microsoft.com/profile/imran.mustafa

MSN : mscrmexpert@gmail.com
SKYPE : mscrmexpert

BLOG : http://microsoftcrm3.blogspot.com/

Monday, December 15, 2008

List Webpart for MS CRM 4.0

Hi Readers,

I just setup new list webpart from Microsoft for Sharepoint 2007. its cool thing if you are using Sharepoint 2007 and MS CRM 4.0

Download Link: http://www.microsoft.com/downloads/details.aspx?FamilyID=3B6EB884-EC15-4288-A2A3-D0B47E057458&DisplayLang=en

MVP CRM https://mvp.support.microsoft.com/profile/imran.mustafa

MSN : mscrmexpert@gmail.com

SKYPE : mscrmexpert

BLOG : http://microsoftcrm3.blogspot.com

Thursday, November 13, 2008

Install MS CRM 4.0 on multiple servers (Cluster environment)

Dear readers,

Here is one step by step guide for NLB Settings or install on multiple servers.


It will help you to install on multiple servers with clusters and NLB settings.

Have a fun!!!!!


MVP CRM https://mvp.support.microsoft.com/profile/imran.mustafa

MSN : mscrmexpert@gmail.com

SKYPE : mscrmexpert

BLOG : http://microsoftcrm3.blogspot.com

Monday, October 06, 2008

MVP-Microsoft CRM


I am now MVP-MS CRM , see https://mvp.support.microsoft.com/profile/imran.mustafa

Thanks for all you cooperation and help to get this achivement.


Monday, June 23, 2008

Maximize Attachment size in MS CRM

Dear Readers,

here are how you can increase size of attachment in MS CRM. by default it is 5mb.

1. Open the web.config of MS CRM

2. Locate httpRuntime the key within the element and change the values to the following:

httpRuntime executionTimeout="9999" maxRequestLength="10240"

3. Locate httpRuntime the key within the element of the element, and change it to the following:

httpRuntime maxRequestLength="10240"

save the web.config and restart IIS.



msn : mscrmexpert@gmail.com

skype : mscrmexpert

Show Associated activities in IFRAME

Dear readers,

Go to "Settings" -> "Customizations" -> "Customize Entities" after this steps in CRM, we find the Contact card and we open this card. We select the "Forms and Views" in navigation bar at left and we clicked the Form.Where you want place the your activities screen you select the interested tab and click the "Add IFrame" button. A window will be opened;

1.set the Name "HistoryFrame",
2.set the URL "about:blank",
3.we check the "Pass record object-type code and unique identifier as parameters",
4.we uncheck the "Restrict cross-frame scripting"

Here is code

function GetFrameSource(tabSet)
if (crmForm.ObjectId != null)
var oId = crmForm.ObjectId;
var oType = crmForm.ObjectTypeCode;
var security = crmFormSubmit.crmFormSubmitSecurity.value;
return "areas.aspx?oId=" + oId + "&oType=" + oType + "&security=" + security + "&tabSet=" + tabSet;
return "about:blank";
crmForm.all.IFRAME_HistoryFrame.src = GetFrameSource("areaActivityHistory");


msn : mscrmexpert@gmail.com
skype : mscrmexpert

Wednesday, February 27, 2008

Kerberos MS CRM

Dear Readers,

Thanks for Francos, sharing this document with me for you people.

An updated doc on Kerberos delegation published Jan 25th

click this link: Start download.

It also applies to CRM 4 : SBS R2 (running reporting services)
2003 R2 (running CRM with hostheader)

You can connect to the reporting services from the console but not from the client PCs are we need double hop authentication with SPN. I just have nightmares when

I need to set up Kerberos, ‘cause usually it ends up with me not sleeping and the things not working


Friday, February 08, 2008

New CRM 4.0 SDK

Check out this month’s update of the Microsoft Dynamics CRM SDK – version 4.0.2!


New or updated topics in the help file (CHM):

ISV Extensibility Best Practices - New information about where to deploy custom code.
Recurrence Pattern in Asynchronous Job Execution – A new topic about how to set the recurrence pattern for an asynchronous job.
Workflow: Attributes and Microsoft Dynamics CRM Types - Updated information about the supported types for custom workflow activities.
Enabling Duplicate Detection - Updated the information about the use of the isduplicatedetectionenabledforonlinecreateupdate property.
Import File Entity Capabilities - Updated information about the correct ordering of messages for the import entity.
Activity Party Entity Capabilities – New information about how to control which e-mail address should be used for sending or replying to e-mails.
Programming Reference - Added information to incomplete topics and fixed broken links.
What's New in Microsoft Dynamics CRM 4.0 - Added data management features to What's New topic.
Changes in the sample code folders:

Added Data Binding sample code.
Removed workflow tools and walkthroughs to reduce confusion. The workflow tools previously included in the SDK are not needed for custom workflow activities.
Updated the readme file with late breaking information.
In addition to the download package, the documentation will be live on MSDN soon.

We’ve got more in the pipeline for future releases:

More sample code, including custom workflow activities and data migration
Additional walkthroughs
Report writers guide
E-mail provider extensibility
Using the Outlook client SDK
Updated XML reference documentation for the customization file
And more!

Best Regards,

Monday, February 04, 2008

Steps to Check for Custom Applications Upgradation to MS CRM 4.0

Dear CRM developers,

I have written many applications and get requirement of upgradation to new version CRM 4.0, from bigning of this year, it was painful activity I was performing. Microsoft CRM Team should work for such things while new version release as it will be problamatic for every one and every time in future versions. Anyhow there are few things keep in mind while doing your upgradation of custom applications.

I have done upgradation of following things and done successfuly with passage of time.

1. Callouts / Pluggins (mostly work , but some time need to modify the dlls and Code

2. Reports (Custom reports need to modify most of the cases)

3. Javascript ( Normall Javascript code related to customization works fine , but some time like filters lookups, accessing CRM webservices in Javascript need to modify with new code. For more see CRM SDK or my upcoming posts related to Javascripts upgradation etc.

4. ASP.Net Application, As I have written many ASP.Net applications for customers , need to modify the code.

a. Remove your web reference and then add new one
Server Path/MSCRMServices/2007/CRMService.asmx

b. Your code should be migrated to VS 2005 / .Net 2.0

c. Check CRM new data types like double , CRM Money etc

5. Restart Async Service if you are attempt to do IIS restart (iisreset).

Above Points need to check regarding upgradation of your code.

6. .Net Assemblies for CRM Workflow. Also check your custom applications link to workflow (Workflow .net assemblies), some time you have to recompile and link that.

If you have any issues, let me know - might be with my experience you save your time. email me with your issue and screen shots (mscrmexpert@gmail.com)


Entity Relationships in MS CRM 4.0

Dear Programmers,

here is some stuff for you, I was working on Entity relationships of MS CRM 4.0, how you will use and how you will work with them,

1. One-to-Many System-System (1:n)

In CRM 4.0 you can link system entity to another system entity. The child system entity has a lookup field to associate it with a parent system entity.

2. Self-Referential

In CRM 4.0 you can link An entity to itself. For example a Case can be linked to a master Case.

3. Multiple Relationships Between Entities

Many of you know about mulitple lookups issues with same entity, now it can be achieved in MS CRM 4.0 e.g the Account entity might have two relationships with a Contact entity - a primary and secondary Contact.

4. Many-to-Many System-System, System-Custom & Custom-Custom (n:n)

In CRM 4.0 this is major requirement for many to many relationship, now it is possible . Not only will this remove the need to build a “joining” entity, but you have control over how the relationships show up in the UI.

Here is sample code how to associate many to many in MS CRM Code.

// Create an AssociateEntities request

AssociateEntitiesRequest request = new AssociateEntitiesRequest();

// Set the ID of Moniker1 to the ID of the lead.request.

Moniker1 = new Moniker();
request.Moniker1.Id = new Guid("B050F053-6968-DC11-BB3A-0003FFBAD37A");

request.Moniker1.Name = EntityName.lead.ToString();

// Set the ID of Moniker2 to the ID of the contact.request.

Moniker2 = new Moniker();
request.Moniker2.Id = new Guid("1DCDEE97-35BB-44BE-8353-58BC36592656");
request.Moniker2.Name = EntityName.contact.ToString();

// Set the relationship name to associate on.
request.RelationshipName = "contactleads_association";

// Execute the request.


Happy Programming with MS CRM


Thursday, January 31, 2008

Hide Tab , Button base on Security Role in Javascript in CRM 4.0


Here is some code for Javascript in CRM 4.0 I am using , it will help you and cover your queries as many of you looking CRM 4.0 Javascript help.

// Check Current User Security Roles and hide tab / field / Button base on that

Here is some code for Javascript in CRM 4.0 I am using , it will help you to hide/ disable Tab, Field, Section using Javascript in CRM 4.0

// pass string of role like Sales Person,/ Administrator and check if that is role exist
function CheckCurrentRole()


var userXml = GetUserRoles();
if(userXml != null)
//select the node text
var allRoles = userXml.selectNodes("//BusinessEntity/q1:name");
if(allRoles != null)
for(int i = 0; i < text ="="" visibility = "hidden" position = "absolute" text ="="" lisdocument =" document.getElementsByTagName('LI');
j= j + 1;


function GetUserRoles(){

// define XML for retrieve query, for more ask me if you have to buid any query regarding
var xmlQuery = "" + "" + "" + GenerateAuthenticationHeader() + " " + " " + " " + " role" + " " + " " + " name" + " " + " " + " false" + " " + " " + " roleid" + " role" + " systemuserroles" + " roleid" + " Inner" + " " + " " + " systemuserid" + " systemuserroles" + " systemuser" + " systemuserid" + " Inner" + " " + " And" + " " + " " + " systemuserid" + " EqualUserId" + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + "" + "";
var xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");
xmlHttpRequest.Open("POST", "/mscrmservices/2007/CrmService.asmx", false);
xmlHttpRequest.setRequestHeader("SOAPAction"," http://schemas.microsoft.com/crm/2007/WebServices/RetrieveMultiple");xmlHttpRequest.setRequestHeader("Content-Type", "text/xml; charset=utf-8");xmlHttpRequest.setRequestHeader("Content-Length", xml.length);
// send xml query and get xml data from CRM in Javascript.
var resultXml = xmlHttpRequest.responseXML;
// return xml for user role

If you have to get current user info ( user id, organization id, etc)

// Get Current User Information in Javascript

function GetWhoAmI(){
var crmserver = http://crmserver/;

var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
xmlhttp.open("POST",crmserver + "/mscrmservices/2007/crmservice.asmx", false);
xmlhttp.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
xmlhttp.setRequestHeader("SOAPAction", http://schemas.microsoft.com/crm/2007/WebServices/Execute);
var soapBody = ""+""+""+"";
var soapXml = "";s
oapXml += GenerateAuthenticationHeader();soapXml += soapBody;soapXml += "";
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");

// Load XML and parse the nodes.
// Get Current User ID
var uid = xmlDoc.getElementsByTagName("UserId")[0].childNodes[0].nodeValue;
// Get Current Business Unit ID
var bid = xmlDoc.getElementsByTagName("BusinessUnitId")[0].childNodes[0].nodeValue;

// Get Current Organization ID Value
var oid = xmlDoc.getElementsByTagName("OrganizationId")[0].childNodes[0].nodeValue;

alert("Current User Id: " + uid + "\r\nBusiness Unit Id: " + bid + "\r\nOrganization Id: " + oid);

Contact me directly if you have any query ( mscrmexpert@gmail.com)


Tuesday, January 29, 2008

MS CRM 4.0 - Common Upgrade Issues

Dear Readers,

I came to know many upgrade issues questions, here are little bit detail for you while upgrading.

Keep following things in your mind if you are upgrading from MS CRM 3.0 to CRM 4.0

  • Any Un supported customization will not upgrade
  • Any 3rd party tool will not upgrade like C360 components etc. It will give you trouble so first remove that and check your vendor for upgradeable version for CRM 4.0, I am sure they are upgrading it.
  • Any Connector like GP Connector, Biztalk Adapter will not upgrade
  • CRM Mobile Express 3.0 will not upgrade
  • CRM Accelerator for Seible will not supported to upgrade.
  • Sharepoint list webpart will not upgrade
  • Datamigration Pack will not upgrade
  • Your custom calls or code will not upgrade, you have to rebuild your code using new crm services, atleast you have to use crm discovery as it is multi-organizational system.
  • CRM Outlook Client will not upgrade
  • Any custom code for outlook will not upgrade
  • CRM Callouts need to modify and register with Plugin Register tool
  • Your code web to lead or web to contact need to modify by using CRM Discovery Service and updation manually
  • Any Code will not upgrade by MS CRM 4.0, you have to do manually all configuration
  • Assembly written for workflow will not upgrade and link, you have to again link with it

Standard CRM Reports will be upgraded and link will automatically build with new CRM SRS connection. but following types of reports will not upgrade

  • The Reports has been modified to use expressions for linking will not upgrade.
  • The Report has been modified to use stored procedures will not upgrade.

  • Reports that use information about workflow, such as sales pipeline report etc will not upgrade.

Dear Consultants / implementers please check above list, you have to care while upgrading as there are 90% questions so far about this on forums.

Hopefull it will help you alot to understand CRM Upgrade issues.



Friday, January 25, 2008

TOP Answerer on the CRM Forums

Dear Readers,

I am now TOP1 answerers on the MS CRM Forums (CRM, Deployment & Development).

Check out this one plz

http://forums.microsoft.com/Dynamics/TopAnswerers.aspx?SiteID=27 - (Imran - mscrmexpert).

Thanks for your cooperation.


msn : mscrmexpert@gmail.com

skype : mscrmexpert

Sunday, January 06, 2008