A Modern Replacement for Microsoft’s Deprecated Hierarchy Control

With Microsoft’s deprecation of the out-of-the-box hierarchy control in Dynamics 365 and no viable alternative available, many organizations were left without a robust solution to view and interact with hierarchical data. I went ahead with Microsoft’s recommendation and decided to create a PCF control, that not only serves as a worthy alternative but also surpasses the original with enhanced performance and features. This control was designed to enable organizations to continue enjoying a feature that might be essential to them, by working seamlessly with any table—be it standard tables like Accounts and Contacts or custom ones.

What Is a PCF?

The PowerApps Component Framework (PCF) empowers developers to build high-quality, reusable components for Dynamics 365. With PCFs, you can create controls that offer a superior user experience, improved performance, and a level of customization that’s hard to match with traditional web resources.

A Dynamic, Flexible Hierarchy Control for Any Table

One of the standout features of this new control is that it works just like Microsoft’s original hierarchy control—while expanding on its capabilities. It dynamically applies a hierarchy based on the table’s hierarchical relationship. Whether you’re working with standard tables such as Accounts or Contacts, or even custom tables, this control adapts to your data model effortlessly.

Key Features

  • Universal Compatibility: Works with any entity that has an active hierarchy-type relationship.
  • Customizable Display: Displays all columns from the selected card form, enabling users to choose which fields to display.
  • Lookup Support: Supports lookup fields, enabling users to click and navigate to related records.
  • Dynamic Node Cards: Displays multiple columns on node cards, with expand/collapse functionality to show or hide child nodes.
  • Side Panel with Tree View: Includes a collapsible side panel with a tree component for easy navigation. Clicking a node in the tree centers it in the main view.
  • Interactive Hierarchy Chart: The hierarchy chart can be fully expanded, collapsed, and moved around for better visibility.
  • Zoom Controls: Includes zoom functionality (scroll or dedicated controls) for easier navigation of large hierarchies.

 

Opening Hierarchy from a View

To make the experience similar to Microsoft’s original implementation, I’ve also developed an additional PCF that allows users to open the hierarchy view for a given record directly from views.

With Microsoft’s hierarchy control, users could open a record’s hierarchical view from a dedicated column in a table’s view. Our additional Hierarchy View Control works the same way—ensuring a seamless transition for users who relied on this functionality.

This enhancement allows:

  • Quick access to hierarchical views for individual records.
  • A familiar experience for users who previously used Microsoft’s control.
  • A smooth transition for organizations looking for a drop-in replacement for the deprecated functionality.

How It Works

At its core, the control uses React framework to manage data rendering and user interactions. The control’s architecture is designed to automatically detect and apply the hierarchy relationship defined in your table, ensuring that it works dynamically with any dataset—be it standard or custom.

Additionally, by enabling the Hierarchy View Control, users can open the hierarchy view for a specific record directly from views, just like they could with Microsoft’s original solution.

Getting Started

  • Download the Solution: Download the bundled solution file containing both the Hierarchy and Hierarchy Indicator PCF controls.
  • Import the Solution: Import the solution into your Dynamics 365 environment.
  • Open Hierarchy Control from a View (Optional): Add the Hierarchy Indicator Control control to a view to open the hierarchy control from a view.
  • View Hierarchy Control in a Form (Optional): Add the control to a column in a form to view the hierarchy control from within a form
  • Open Hierarchy Control from a Ribbon Button (Optional): Create a new button and use the following JavaScript code to open the Hierarchy control from a ribbon button:

You can find a detailed step-by-step guide on GitHub.

 

Looking Forward

This PCF represents a significant step forward in providing organizations with a proper alternative that allows them to continue managing complex hierarchical data. By mirroring Microsoft’s original functionality and expanding on it, this control delivers a modern, dynamic, and flexible solution that not only replaces but outperforms Microsoft’s deprecated offering.

As an open-source project, this control can evolve over time with contributions from the community, ensuring continuous improvements and new features that adapt to the needs of organizations using Dynamics 365.

If you have ideas, improvements, or feedback, I encourage you to contribute or open an issue on our GitHub repository.