Microsoft Dynamics CRM - Web Resources

Web Resources in CRM are the virtual web files that are stored in CRM database and used to implement web page functionalities in CRM. These files can be of HTML, JScript, Silverlight, or any other supported types.

CRM being a product, comes with an extensive set of features and functionalities. However, most of the times, you would have to extend these existing functionalities to meet your custom requirements. Extending these functionalities generally happens in two ways −

  • Extending on Client Side − Using Web Resources and Form Scripting.

  • Extending on Server Side − Plugins, Workflows and Web Services (we are going to learn this part in the upcoming chapters).

Uses of Web Resources

As mentioned above, extending CRM on the client side is where Web Resources comes in picture. To understand this clearly, consider the following use cases −

  • You have a CRM form containing certain fields. CRM provides out-of-the-box features for basic validations such as mandatory fields, field lengths, etc. However what if you would like to have a more complex validation such as validating if the entered phone number is in the correct format, or validating if the entered address actually exists, or if the entered SSN is correct?

  • CRM provides out-of-the-box UI customizations such as creating sections and tabs on a form, rearranging fields, etc. However, what if the client wants to build a custom page which shows all the information of the customer coming from their other ERP system?

  • CRM comes with a standard ribbon bar, which contains all the buttons and options. What if you want to add a ribbon button of your own?

  • Consider that you have an ERP system already in place. What if you would like to open some CRM screens from this ERP system?

  • You can always call any external web services in your server-side plugin code. However, what if you would like to call any external web services while you are still on the client-side?

The answer to all these “What ifs” is Web Resources. Every Web Resource can be accessed via its unique URL. You can either upload a Web Resource file or for codebased resources (such as HTML, Jscript, etc.) you can even edit them directly inside CRM. Since Web Resources are stored within CRM, they can easily be migrated from one environment to another together, along with any CRM customizations.

Types of Web Resources

Type of Web Resource Sample Application in CRM
WebPage (HTML) You may want to create any custom HTML page such as maps, custom application page, etc. and place it inside your CRM form.
Style Sheet (CSS) Any CSS files that will be used together with the HTML files.
Script (JScript) Any client-side logic such as validations, manipulating field values, etc.
Data (XML) Can be used to store any static settings or configuration data.
Image (PNG,JPG,GIF, ICO) Any images used in the application on ribbon buttons, icons, forms, etc.
Silverlight (XAP) Any custom Silverlight application embedded within CRM.
StyleSheet (XSL) Used to transform XML data.

Out of all these types of web resources, we will be studying the most important types of web resources - HTML Web Resources and JScript Web Resources, in the subsequent chapters.

Accessing Web Resources for Any Entity

All the Web Resources stored in the database can be accessed in CRM. Following are the steps involved −

Step 1 − Go to Settings → Customizations → Customize the System.

Step 2 − From the left navigation, select Web Resources. Currently, you will not be able to see any Web Resources since we have not created anything yet.

Mscrm Access Web Resource Step 1

We will be looking at how to create web resources in the next chapters.