Archive for the ‘USD’ Category

Field value null check in USD

September 27, 2016 Leave a comment

We have configured ‘Session Overview Line’ for ‘Account’ entity which would come as below.



However, for few Accounts, ‘Session Overview Line’ was not loading and it even breaking further USD configurations.


  • Few ‘Account’ fields specified in ‘Display’ of ‘Session Line’ are Null which prevented ‘Session Overview Line’ load.


  • Add ‘Null Check’ (i.e., Suffix + operator) while defining fields in “Session Overview Line”.





Text=”Annual Revenue: [[account.revenue]x+]”

Text=”Account Name: [[]x+]”

Text=”Primary Contact: [[]x+]”


Categories: USD Tags: , ,

Denote an Unsaved record in a Session – USD

We got a requirement to denote an unsaved record with * in a session.

Below is the scenario.

  • User opens an Account record in USD
  • USD opens a new Account Session
  • User clicks ‘Create Task’ link from Agent Script.
  • System should display * on ‘Task’ Tab until it gets Saved.
USD - Unsaved Task

USD – Unsaved Task

It’s very easy to achieve using ‘Scriptlet’.

Add a Scriptlet “SetTaskTitle” and set to the hosted control’s Display name (i.e., [[$Scriptlet.SetTaskTitle]] )

USD - Using Scriptlet To Set Display Name

In the “SetTaskTitle” Scriptlet

  • if Task.Subject == “”
    • Set DisplayName=”Task *”
  • Else
    • Set DisplayName=”Task.Subject”
USD - Scriptlet

USD – Scriptlet

Script Text:

function SetTaskTitle() {
if (“[[task.subject]+]” != “”) {
return “[[task.subject]+]”;
return “Task *”;

Once the Task gets Saved, Tab name changes to ‘Task.Subject’

USD - Saved Task

USD – Saved Task


Categories: USD Tags: , ,

Create an Incoming Phone Call Activity when a Call received from CTI – USD

August 27, 2016 1 comment

In one of our requirement, we had to create a new “Incoming Phone Call” activity against the calling ‘Contact’, whenever a call received.

USD - Incoming Phone Call Created

USD – Incoming Phone Call Created

In this article, I am using “CTI Simulator” (Download) to generate an incoming call.

Refer MSDN article contains a Walkthrough on how to

  • Catch the phone call (Triggered from Simulator)
  • Search ‘Contacts’ in CRM with the ‘Phone number’
  • If match found, open the ‘Contact’ in USD.

Open Calling Contact Record in USD

  • In USD configurations in CRM, create a “Windows Navigation Rule”, to open a ‘Contact’ record, if there is a Contact with incoming phone number.

USD - Nav Rule To Open Contact On Incoming Call

  • In the Action Call “Show tab for Contact”, we set focus on ‘Contact’ which was opened in USD.
USD - Focus on Contact Tab

USD – Focus on Contact Tab

Create Phone Call Activity

  • Now coming back to our requirement, we need to create an “Incoming Phone Call” for the matched ‘Contact’, which got opened in USD.
  • To achieve this, create a Sub Action Call “AC Create Contact Inbound Phone call”, under “Show tab for Contact”.
USD - Sub Action Call To Create Phone Call

USD – Sub Action Call To Create Phone Call

  • In “AC Create Contact Inbound Phone call”, define a “CreateAction” to create “Phone Call” copying information from “Contact”.
USD - Create Phone Call

USD – Create Phone Call

  • Data:

subject=Inbound Phonecall to [[$User.fullname]]

  • The ‘AC Create Contact Inbound Phone call‘ action call triggers after ‘Show tab for Contact‘ and a new ‘Phone Call’ gets created.
USD - Created Incoming Phone Call

USD – Created Incoming Phone Call


Categories: USD Tags: , ,

Set Regarding Lookup and open a new Task form – USD

I was exploring USD and tried below scenario.

From a new Account Session

  • Add a ‘Create Task’ Agent Script Answer.
  • On click, open Task form in a new Tab, pre-populated with ‘Regarding’ lookup with Account.
Set Regarding Lookup

Set Regarding Lookup

I had a tough time to set ‘Regarding’ look up with ‘Customer’ using ‘New_CRM_Page’ UII Action.

I could achieve with ‘Navigate’ UII Action.

Navigate To Task

Navigate To Task

In the URL, I read Account details from Context and set

  • regardingobjectid = Account GUID
  • regardingobjectidname = Account Name
  • regardingobjecttypecode = Schema Name





Exclude “navbar=off&cmdbar=false” from URL, if you want CRM tool bar on the new ‘Task’ form.


Categories: USD Tags: ,

‘http://event’ pop-ups with hosted controls of Hosting type ‘IE Process’ – USD

In my USD, I have a hosted control of type “IE Process”.

Hosted Control

Hosted Control

Whenever it gets loaded, I was getting “http://event” IE pop-up and its blocking configured events of Hosted control to be triggered.


  • These popups occur in IE 11
  • When the protected mode of IE set to ‘Off’ for the Intranet Zone, which is a default setting of IE.


  • Either change the “Hosting Type” of hosted control to “Internal WPF” (or)
  • ‘Turn On’ the protected mode for the Intranet zone.

Refer this article for more info.


Categories: USD Tags: , ,

Trigger USD event from CRM Hosted Control’s Jscript

August 22, 2015 1 comment

In one of our requirement we had to trigger a USD Event from CRM Hosted Control’s onchange event of an option set.

Below are the steps to invoke USD event from option set’s ‘onchange’ event.

  • Assume your USD event name is “USDOnChange
USD - Events

USD – Events

  • In my CRM Hosted Control’s onchange event placed this statement

function TriggerUSDOnchangeEvent() {“http://event/?eventname= USDOnChange“);



Categories: CRM, USD Tags: ,