Archive

Archive for the ‘CRM’ Category

CRM 2011 – Employee Self-Service CAL (ESS) (Reduce 90% of CAL cost!)

A new type of CAL has been introduced to the model to allow for licensing internal users that use other applications to connect to CRM without using the CRM web or outlook user interfaces. This employee self-service CAL (ESS CAL) is particularly useful for line-of-business (LOB) xRM applications and for intranet portals that are connected to CRM.
This license type is still a CAL, and that means that it is needed for every internal user. The good news is that it is approximately 10% of the cost of the full-use CAL.
In the past, if you were to build a helpdesk portal for internal users, you would have to license every user in your organization for CRM, even if they were not actually using CRM. For example, you may have a helpdesk staff of 10 users supporting a company of 500 users. Without the ESS CAL, you would need 510 CRM full use CALs. With the new ESS CAL, you would need 10 full use CALs and 500 ESS CALs, representing a savings of just under 90%.
There are some restrictions with the ESS CAL. First off, the obvious – the user can only access CRM through an application that uses the CRM SDK. They cannot access CRM using the CRM Outlook or Web UIs. There are also limitations on which SDK calls can be made. The ESS CAL can create, read, and update all entities in CRM but is restricted to not delete, assign, or share through the SDK. The good news is that it can change state, so the delete capability can be achieved by changing the state to InActive, which is probably best practice anyways, especially if you have turned on auditing and want your audit data to stick around…

Read more..

Advertisements
Categories: CRM

How to add a custom page to CRM 4.0 like the Settings page

August 12, 2010 4 comments

I wanted to add a custom developed aspx page to the CRM site like the Settings page in order to have some functionality that cannot appear in an iframe on an entity form (that’s a business point of view).

The Target:
CRM Settings

The Result:
Custom CRM Page

So here are the steps to implement the same page in the above image (considering you have visual studio installed on the CRM server):

  1. Create new Class Library project
  2. Reference these DLLs: Microsoft.Crm.Application.Components.Application.dll, Microsoft.Crm.Application.Components.UI.dll, Microsoft.Crm.SafeHtml.dll you can find these DLLs in the bin directory of your CRM site (ex. C:\inetpub\wwwroot\bin)
  3. Add reference to System.Web
  4. Add a new class with the following code:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Microsoft.Crm.Application;
    using Microsoft.Crm;
    using System.Web.UI.WebControls;
    
    namespace iDemery.Crm.CustomPages
    {
        [QueryStringParameter("pid", ParameterType.Integer), QueryStringParameter("vid", ParameterType.Integer)]
        public abstract class AdminTestPage : AppNavPage
        {
            public AdminTestPage()
            {
    
            }
    
            protected override void ConfigurePage()
            {
                base.HomePage = "adminTest.aspx";
                base.Area = "custom administration";
                base.Nav = "nav_administration";
                base.ConfigurePage();
            }
    
            protected override void Render(System.Web.UI.HtmlTextWriter writer)
            {
                //base.Render(writer);
    
                Button button = new Button();
                button.Text = "helloooooooooooo";
                button.RenderControl(writer);
            }
        }
    }
                 
  5. To enable debugging, right click on your project’s name in the solution explorer window and open the properties page, change the output path from the build menu to the bin directory of your CRM site (ex. inetpub\wwwroot\bin\)
  6. Create a new page and name it adminTest.aspx with the following line
    <%@ Page language="c#" Inherits="iDemery.Crm.CustomPages.AdminTestPage" %>
            

    Put this page in the CRM Site, Tools, Admin directory (ex. C:\inetpub\wwwroot\Tools\Admin)

  7. Now the page is ready and we want it to appear on the left CRM menu, go to Settings, Customization, Export Customization and choose to export the Site Map customization
  8. In the exported customizations.xml file add the following area:
          <Area Id="CustomPages" ShowGroups="true" Icon="/_imgs/settings_24x24.gif">
          	<Titles>
            	<Title LCID="1033" Title="Custom Pages" />
            	<Title LCID="1025" Title="Other language" />
          	</Titles>
          	<Descriptions>
            	<Description LCID="1033" Description=" Custom Pages" />
            	<Description LCID="1025" Description="Other language" />
          	</Descriptions>
    	<Group Id="TestSettings">
            	<Titles>
              		<Title LCID="1033" Title="Test Page" />
              		<Title LCID="1025" Title="Other language" />
            	</Titles>
    		<SubArea Id="nav_administration" Title="Test 1" DescriptionResourceId="Administration_SubArea_Description" Icon="/_imgs/ico_18_administration.gif" Url="/tools/Admin/adminTest.aspx" AvailableOffline="false" />
    	</Group>
          </Area> 
                     
  9. Of course you can change the title, add titles from other languages, change the icon and save the customizations.xml file.
  10. Go to Settings, Customization, Import Customizations and import the customizations.xml file.
  11. Back to visual studio, build your project and you are done.
  12. To start debugging, go to Tools, Attach to process, and choose to attach to the w3wp.exe process
Categories: CRM Tags: