Tip #669: Organizing Unified Service Desk development environment

Disorganized desktopThis is for folks who write code as part of their jobs and for whom USD stands for Unified Service Desk and not United States Dollar.

If you’re developing custom hosted controls, the easiest way to ensure that the version is correct and all dependencies are included is to set up USD program folder as the output for your build process.

It works but sooner than you know, the folder is a mess, versions of dependent assemblies are out of sync with production which makes it real fun to troubleshoot, and the real issues begin when you have more than one control to develop or when you need to reproduce a production issue.

Unless you simply create a copy of your USD program folder because USD really does not care where does it run from and has no location dependencies.

  1. Copy the entire USD program folder (default C:\Program Files\Microsoft Dynamics CRM USD\USD) into another location on your disk (e.g. c:\dev\usd).
  2. Set this folder as the destination for your program output and set UnifiedServiceDesk.exe as the start program.
  3. Set the breakpoints in your hosted control code and fire away.
  4. Compare this folder with the original one to build a baseline for what needs to be included for your control to work. That will help you to build the customization file for your distribution.
  5. Need quickly to test something or develop completely independent control? Just create another copy of the USD folder!

2 thoughts on “Tip #669: Organizing Unified Service Desk development environment

  1. You don’t require to write code for the most part, when it comes to configure agent applications and you can save the lead time to design an agent application.

    • Of course, you don’t, Charles. Except when you need to:

      • Talk to your CTI system
      • Encapsulate and control external applications
      • Build custom data-driven adapter for legacy applications
      • Process multiple search results
      • Create appealing user interfaces
      • Call external services

      But other than that, I agree, configuration is the way to go. 🙂

Leave a Reply

Your email address will not be published. Required fields are marked *