Release Notes - User Interface Integration for Microsoft Dynamics CRM – April 2010 – Release 1.0




User Interface Integration (UII) for Microsoft Dynamics CRM uses the features of Dynamics CRM to deliver composite applications that share a common user interface. UII includes development and run-time components. Applications built with UII can provide unified access to customer information spread across different systems, and can aggregate different modes of customer interactions or channels. Unlike expensive, rip and replace approaches or risky investments on custom development, UII provides non-intrusive integration with existing systems.

These release notes provide information about the features included in this release of UII, as well as known issues. It also provides links and references to other useful UII documents and resources.

This document contains the following sections:

·         Features: This section outlines the major features included in the current release of UII.

·         Known Issues: This section describes known issues that you might need to work around in this release of UII.

Additional information

For more information, refer the following documents:

·         UII Deployment Guide

·         UII Development Guide

·         UII API Reference Guide




Main Category



Application Integration Framework (AIF)

Application hosting

Application hosting enables integration of disparate systems into a single integrated desktop. Application hosting takes existing Windows, Web, legacy applications, and Java or Citrix applications, and unifies them in a single shell as hosted applications. Additionally, application hosting supports new UI controls for connecting to existing applications.


Session management

Session management allows agents to handle multiple customer sessions simultaneously, without losing context or the state of each session.


Information and event sharing across applications

Hosted applications can share information and events, so changes made in one pane affect the other hosted applications.


Role-based UI support

UII supports role-based UI settings, enabling user access rights to specific screens and workflows. Additionally, hosted applications can be assigned various scopes based on business needs. Scopes include Global, Session, and Workflow.


Centralized management

The configuration of the layout and of hosted applications is done centrally through a CRM Administration Web page.


Single sign-on

UII provides support for single sign-on, either through Microsoft Enterprise Single Sign-on or through a third-party ESSO product.


Shell APIs

UII provides a set of APIs to rapidly develop an integrated shell.

Computer Telephony Integration (CTI)

CTI providers

To provide rapid integration with telephony systems, UII provides sample code that supports client-side TAPI and TSAPI standards out-of-the-box. Other CTI systems can be integrated, but will require custom programming.

Auditing and Reporting

Agent activity logging

UII enables organizations to audit agent activities within a call or session and create custom reports. Sample reports are also provided in the Quickstarts.

Hosted Application Toolkit (HAT)

Application automation

The Hosted Application Toolkit (HAT) allows applications to be hosted and automated in the Integrated Desktop with minimal coding. It provides an application inspector tool, a set of data-driven adapters (DDA) and a visual designer that is used to create the business logic automation (for example, click button A, copy data from textbox and paste it to…), between hosted applications. This way, the process of integrating an application is the execution of three well-defined steps: inspect, automate, and host.


Inspector tool

The Inspector tool is a Software Factory that allows visual inspection of the UI controls, and generates an XML description file of the controls that will participate in the automation step, performed in a Visual Studio environment.


Data-driven adapters (DDA)

DDAs provide generic access to user interfaces through XML documents. UII provides DDAs for Windows-based applications, Web applications, and Java-based applications.


HAT Core Engine

The HAT Core Engine drives automation that leverages Windows Workflow Foundation (WF) 3.5.



UII includes code sample for developing with AIF, HAT, and other functional areas.


Known Issues

This section contains information about issues that adversely affect the expected and/or perceived behavior of the product and its features.

Hosted Application Toolkit (HAT)

Data Driven Adapters (DDA)

·         The RegisterActionForEvent activity does not work for Web ActiveX controls for certain events. The registered action will not be triggered even if the corresponding event occurs.

·         When you use HAT automation for Java controls in a Web applet, the ExecuteControlAction and SetControlValue activities update the control values; however, the updated values are not visible in the application user interface.

o   Workaround: To make the values visible, refresh the control.

·         Lost Focus events do not trigger the registered actions for the following Link Button activities for a Windows application:

o   Win_LinkButton_RegisterAction_GotFocus

o   Win_LinkButton_RegisterAction_LostFocus

o   Win_LinkButton_UnRegisterAction_GotFocus

o   Win_LinkButton_UnRegisterAction_LostFocus

o   Web_HyperLink_RegisterAction_onfocus

·         When you try to automate unsupported operations, an exception should be thrown. However, because of the Microsoft Active Accessibility (MSAA) limitation, these exceptions are not thrown for the following unsupported operations:

o   WinApp-SetControlValue-LinkLabel

o   WinApp-SetControlValue-Button

o   WinApp-SetControlValue-MenuItem

o   WinApp-SetControlValue-Label

o   WinApp+WebControl-ExecuteControlAction-Label

o   WinApp+WebControl-SetControlValue-Button

o   WebApp-SetControlValue-RadioButton

o   WebApp-SetControlValue-HyperLink

o   WebApp-ExecuteAction-TextBox

o   WebApplet-SetControl-MenuItem

o   WebActiveX-SetControl-Button

o   WebActiveX-SetControl-Label

o   JavaApp-SetControlValue-RadioButton

o   JavaApp-SetControlValue-Button

o   JavaApp-SetControlValue-MenuItem

o   JavaApp-Execute-TextArea

o   JavaApp-Execute-TextBox

o   JavaApp-Execute-Label

·         In the default HAT automation for a Web application, when you perform an operation in the default action, it might throw the exception, System.InvalidOperationException.

o   Workaround: Run the automation in asynchronous mode.

HAT Software Factory

·         In the HAT Software Factory the minimum and optimum size properties of an application are not reflected in the XML string fetched by ShowXML. It always shows zero as the value.

o   Workaround: Deploy the application by using the HAT Software Factory, and use the UII landing page to modify the minimum and optimum size properties.

·         The application cannot be dynamic and workflow dependent at the same time. Therefore, in the UII landing page, when you set Dynamic property to true, this disables the Workflow Dependent property, automatically. However, when you use the same settings in the application properties in the HAT software factory, the behavior is not the same. It allows you to set both Dynamic and Workflow Dependent properties to true.

·         In the Properties window of an application, the category name for hosting options is incorrect. It shows Host Inside when it should show Hosting.

UII Administration

·         After deleting workflowstep record in the CRM, mapping of workflowstep with workflow should be manually removed by the administrator. Otherwise Agent Desktop will shut down after displaying an error

·         All actions within an application should have a unique name. If you try to create an action with a duplicate name within an application, it will not be allowed. However, if you associate an action from one application with another application, a check for uniqueness of the action name is not performed. In this scenario, even if an action with the same name already exists in the second application, the association will still happen, leading to the second application having two actions with the same name.

o   Workaround: Make sure that you use unique action names.

Application Integration Framework (AIF)

·         The GetWorkflowSteps method of the Workflow service is non-virtual and therefore it cannot be overridden.

·         Workaround: To extend the GetWorkflowSteps method, you need to create a custom Workflow service that contains an instance of the AIF Workflow service. Then, from the methods within your custom class, you can invoke the GetWorkflowSteps method.

·         If you are using Internet Explorer 7 or higher, ensure you turn off Protected mode. To turn off Protected Mode, uncheck Enable Protected Mode in Internet Options > Security tab

·         When you have an existing instance of Internet Explorer running and you launch the agent desktop, with the LoadSession property is set to true, the agent desktop might close after displaying an error.

o   Workaround: Whenever you configure hosted applications, in CRM administration make sure you have at least one Global Web application with the UseNewBrowserProcess property set to true. If there is no Global Web application existing, then create a Global Web application with the URL property set to about:blank, and host this application in the hidden panel by setting the Display Panel property to HiddenPanel.


·         While CRM server customizations are being installed, the progress bar does not show any progress. This step may take several minutes to complete.

·         On the Custom Setup page, when you click Disk Usage it should show the available disk space for the volume on which you are installing UII. However, even if sufficient memory is available to install UII, clicking the Disk Usage button shows the following invalid message: “Highlighted volumes do not have enough disk space available for selected features. You can either remove some files from the highlighted volumes, install fewer features, or select different destination drives.”

·         If you start UII installation without installing the prerequisite software, the Pre-Requisites screen notifies you that you need to install the prerequisites. In this scenario, if you choose to install the missing prerequisite software while the installer is still running, the status is not updated on the Pre-Requisites screen.

o   Workaround: Cancel the installation and run it again after you have installed the prerequisites.

·         Repair for a server installation will only replace the DLLs. Import of custom entities, plug-in registrations, and setting repairs must be done manually.

o   Workaround: For manual steps, in the UII Deployment Guide, refer the “CRM Server Customization process for manual installation” section. Otherwise, uninstall the feature and then reinstall it.

·         When you uninstall UII, the data from UII custom entities on the Dynamics CRM server is not removed. In this scenario, if you are re-installing UII on the same server, then you must manually delete the old data for general settings before starting the new installation.