Debug Ribbon button customization using Command Checker in Dynamics 365 CE Unified Interface

Developers, it’s a little irksome to keep struggling with issues around making your ribbon buttons work correctly during the development phase.

At times, you wonder why your button didn’t show up on the form although you had set everything up correctly. Or even for out-of-box button, that didn’t show?

Scenario

In this example, I’ll find out by my Project Service Quote record doesn’t have a Activate Quote button on the ribbon.

noActivationButton
We can use Command Checker to find out why.

 

Enable Command Checker

Remember, this only works in the Unified Interface and not on the classic UI.

Command Checker is a developer feature to identify how a certain ribbon button has or has not rendered on your form/view. So let’s begin –

Add this command to the end of the Entity form page URL: &flags=FCB.CommandChecker=true&ribbondebug=true

Add make it look like something like below –
https://<ORG_NAME&gt;.crm<REGION>.dynamics.com/main.aspx?appid=7fbb5a25-b903-ea11-a816-000d3a58f769&pagetype=entityrecord&etn=account&id=aaa19cdd-88df-e311-b8e5-6c3be5a8b200&flags=FCB.CommandChecker=true&ribbondebug=true

 

Command Checker

Form Command Checker

  1. Now, if you navigate to the ellipses on the ribbon, check that Command Checker has now appeared.
    formCommandChecked
  2. A Command Checker Window will appear as below. Navigate to the button you are having issue on.
    baseWindow
  3. Then, click on Command Properties as shown above to see what didn’t pass through. And as shown below, we could see that one of the conditions in Enable Rule didn’t get through and hence, the button didn’t show up on the ribbon.
    commandCheckerWindowIn case you are also looking at how to hide out-of-the-box ribbon buttons, check this – Hide Custom Ribbon Button [Easy Way] – Ribbon Workbench

Global Command Checker

And with that, you must have also observed the Command Checker on the Navigation Ribbon bar as well.
globalCommandChecker
And it opens up as below –
globalCommand

 

Some other Ribbon Workbench related posts –

  1. Show Ribbon button only on record selection in Dynamics CRM
  2. Enable Flow button on D365 Ribbon
  3. [SOLVED] Navigating URL from Ribbon’s custom button in Dynamics for Phones app
  4. Fix Ribbon icons on the Unified Interface in D365 CE
  5. Create a New Record button for Activity Type entity using Ribbon Workbench: D365
  6. D365 Ribbon Button shortcut to open a Document in SharePoint Online

Hope this helps! Happy 365ing!

 

Refresh button missing on Roll-Up fields in D365 UCI? Quick Tip.

As we are transitioning to the Unified Interface, some visual cues are a little misplaced or say, hidden.

If your Roll-up field on the Classic UI appeared like this where you could simply click on refresh and update the Roll-up field

classicRefresh

It doesn’t seem to be the case in terms of UCI-
missinginUCI

It’s Hidden!

So, simply click on the Calculator icon –
clickToReveal
And the Recalculate button will be revealed which updates the value
recalculate
And results into the below in my case –
updated
Note: Toggling the calculator icon will reveal/hide the button.

Hope this quick tip helps!!

 

Unified Interface App URLs – 3 different ways

Couple of different ways you can generate/get your Unified Interface App’s URL from. And another one if you want to go an unusual way –

Additionally, if you’re also looking to change the App Icon for Unified Interface, check this – Change the Unified Interface App Icons

App ID Method

This being the easiest and most obvious way to save your App URL when you create a new Unified Interface app –

whileCreating

Or when you’re in the App Designer, look for the Properties of the App itself and in the bottom, you’ll see the URL, you can save this too –

inAppDesigner

So in this case, your URL is – https://<orgname&gt;.<CRMRegion>.dynamics.com/Apps/uniquename/<AppUniqueName>

App Suffix Method

This is another easy way to create your Apps URL. You can get it when you open the Manage Roles option in My Apps and open the same.

Open Manage Roles –
openManageRoles

And in the right hand pane, you can set the App Suffix
addAppSuffix

In this case, your App Name will simply be – https://<orgname&gt;.<CRMRegion>.dynamics.com/apps/<AppSuffixName>

Once you add an App Suffix, the same can also be seen in the Properties as well in the App Designer and the URL Interface URL will be the one with the Suffix Name unlike the one without Suffix in the first method above.
appSuffixAdded

GUID Method

This is not the best way to save or use an App URL, but if you’re interested, here we go! 🙂

You can use this URL – https://<orgname&gt;.<CRMRegion>.dynamics.com/main.aspx?appid=<GuidFromAppDesigner>

You can get the GUID part from the App Designer itself –

guidPart

Obviously, this is not recommended but I thought I’ll share anyway.

Hope this helps!

Change the Unified Interface App Icons

Default App Icons for typical D365 environment look like these.

defaultAppIcons

But here’s what you can do to change these to put custom SVG icons.

SVG Icons

Regardless of dimensions, SVG icons work everywhere. So why keep them to just Ribbons, you can even change your App Icons to SVG Icons in your Dynamics 365 implementation.

  1. Make Web Resource for your SVG Icon.
    svgWebResource
  2. Open your Model Driven App in Dynamics 365 Solution. In the App Designer, go to Properties of the App itself and look for the drop-down above App Tile.
    defaultSalesIcon
  3. Select your SVG Icon and Publish the same
    newIcon.png
  4. And you’re set!
    updatedIconTile
    updatedIconSidebar

Hope this helps!

 

D365 Quick Tip: Shortcut to Settings from the Unified Interface

If you’re spending time looking and wondering that you always need to go to the app switcher to go the Settings from the Unified Interface, you need to do the following –

Once you are in the Unified Interface, click on the Gear icon next to the help icon on top-right corner as shown below and click Advanced Settings

advancedsettings

 

Right on the next tab, Settings with the classic UI is shown –
fullsettings

And there’s nothing else on that SiteMap.

 

And that’s it! 🙂

 

D365 Quick Tip: Why BPF wouldn’t appear in D365 Unified Interface?

Got stuck trying to figure out why the Business Process Flow you created/modified couldn’t be seen in the Unified Interface?

Like I have this BPF called ‘Onboarding Process’

actualprocess

But when I look at the form on the Sales Hub, it won’t show up
blankrec

 

And when I Switch Process and try to apply, it won’t apply either
applying

Where could we check to make sure it appears –

  1. Whether it was Activated.
  2. Whether it was corrected ordered in the Order Process Flow
  3. Logged in user had correct privileges to access it.
  4. Even trying to switch to the process won’t make it appear!

and so on.

But there’s one thing that needs attention when

App Designer is the answer

The reason is the App Designer for the Unified Interface app you are in.

  1. In this case, the Sales Hub app.
    Open the Sales Hub app and look for Business Process Flows section and expand it.
    missingprocess
  2. On the right hand pane, find your BPF and add it in the App Designer
    foundprocess
  3. Once you added, it should appear in the included BPFs. Save and Publish once confirmed
    added

BPF is now applied

Now, your BPF is finally added and you can work on it.
appeared

Hope this helped! 🙂

D365 Unified Interface: Enabling embedded legacy dialogs / Advanced Find

Quite simply put, some of the embedded dialogs like the Advanced Find, Merge Records, Assign window are not by default visible on the Unified ClientnoButtons

Like when you multi-select records, you can’t see the typical Merge, Edit buttons on the ribbon.

Here’s how you enable them

System Settings

In your Web Application’s system settings, you have an option under general where you can enable these buttons in the Unified Interface

systemSettings

Now, you can retain those buttons in the Unified Interface as well

visibleButtons

Have a great time exploring Unified Interface!