Adding Ribbon Workbench SmartButtons to the Unified Client

If you've used or read about the Unified Client, there are some notable omissions from the command bar. This is mostly because the unified client is being developed and enhanced still and I suspect that the effort is being focused on stability and performance (both of which are very good already).

The most notable omissions are:

  1. Advanced Find – Advanced Find has not been implemented yet in the UCI – but in the meantime, you can add the old Web UI advanced find to the UCI using my solution that I've already posted about.
  2. Run Workflow – there is no run workflow button on forms or views at the moment. In this post, I'll show you how to add buttons to run specific workflows using Ribbon Workbench Smart Buttons
  3. Run Report – as for Run Workflow in this post I'll show you how to add a run report button.
  4. Run Dialog – I am not entirely sure that Dialogs will ever make their way to the Unified Client because they are deprecated.

What are Smart Buttons?

When you start the Ribbon Workbench, it scans for any smart button enabled solutions and displays them in your toolbox. Smart Buttons are essentially small pre-defined templates that can be added to your ribbon customisations and are defined by a smart button manifest in an installed solution. You can read more about them in my post explaining Smart Buttons in more detail.

Installing the 'starter' Smart Button Solution

Once you have installed the Ribbon Workbench, you can download and install my Smart Button Solution. You can obviously define your own smart buttons – but my solution provides some of the most common buttons that customisations need – namely Run Report and Run Workflow.

  1. Download the solution from https://github.com/scottdurow/RibbonWorkbench/releases
  2. Install the solution into Dynamics by importing it into the Dynamics Administration Solutions Area
  3. Create a solution that contains just the entity that you want to add smart buttons to
  4. Load the solution into the Ribbon Workbench

Running Workflows in the UCI

Once you have the smart buttons solution installed, you'll see them in the Ribbon Workbench toolbox:

Adding a Run Workflow and Run Report Button

You can simply drag the buttons from the smart button toolbox into the entity ribbons. You will be presented with a configuration box when you drop them onto the design surface:

The newly created buttons will appear on your design surface and also appear as buttons and commands in the Solution Elements

Ensuring that the Run Workflow and Run Report Buttons show in the Unified Client

The key to showing the smart buttons in the Unified Client is the Enable and Display Rules. Currently, the Smart Button templates are set up for the Web UI – in the future, I will adapt these for the Unified Client, but during this transitional period it is up to you to decide if you want them to appear or not by managing which rules are included.

To enable the 'Run Workflow' and 'Run Report' buttons you need to remove the display/enable rules from their respective commands:

  • Mscrm.HideOnModern
  • Mscrm.RunWorkflowPrimary
  • Mscrm.ReadReport

You do this by selecting the command in the solution elements panel, and then right-click 'Remove from Command'

You can then publish the solution and the buttons will appear in the UCI! You can also set some nice SVG images in the 'Modern Image' property of each button in the Ribbon Workbench by creating some SVG Webresources to use.

Probably the biggest difference when developing on the UCI is that you need to take a mobile/tablet-centric approach to your customisations. Whilst the Run Workflow button will work on the Mobile/Tablet App – the Advanced Find and the Run Report buttons use a user interface that was never designed for this type of use and will only work when using the UCI via a web browser.

Comments are closed