You're right, the standard "Set as Default" functionality within the Dynamics 365 interface is user-specific. Each user has to manually set their preferred dashboard as the default.
However, there are a few ways you can achieve setting a default dashboard for all new users or enforcing a specific dashboard as the initial view for everyone accessing the "Dashboards" sitemap area. Here are the best approaches:
1. Setting the Default Dashboard at the App Level (Recommended for Unified Interface Apps):
This is the most straightforward and effective way to control the initial dashboard displayed when users navigate to the "Dashboards" area within a specific Unified Interface app (like Sales Hub).
- Steps:
- Go to Settings > Customization > Customize the System.
- In the Solution Explorer, navigate to Apps.
- Open the specific Unified Interface App (e.g., Sales Hub) where you want to set the default dashboard.
- In the App Designer, look for the Pages section.
- Select the Dashboards area (it will likely have the dashboard icon).
- On the right-hand side, in the properties pane for the "Dashboards" area, you should see a setting called "Default Dashboard".
- Use the dropdown to select the "Sales Dashboard" (as shown in your image) or any other dashboard you want to be the default for this app.
- Save and then Publish your changes to the app.
- How it Works: When a user opens this specific Unified Interface app and navigates to the "Dashboards" area, the dashboard you selected as the "Default Dashboard" at the app level will be displayed initially. Existing users who have already set their own default dashboard might still see theirs, but for new users or when the user hasn't explicitly set a default, the app-level default will take precedence.
2. Modifying the App Sitemap (More Technical, Use with Caution):
You can directly modify the app sitemap to specify which dashboard should be loaded by default when the "Dashboards" area is selected. This involves editing the AppModuleSiteMap customization.
- Steps:
- Install the XRMToolBox.
- Connect XRMToolBox to your Dynamics 365 environment.
- Use the Site Map Editor tool within XRMToolBox.
- Load the sitemap for the specific Unified Interface app you want to modify.
- Locate the SubArea for "Dashboards".
- In the properties of this SubArea, look for the "DefaultDashboardId" attribute.
- Set the value of this attribute to the Object ID (GUID) of the "Sales Dashboard". You can find the GUID of the dashboard by:
- Navigating to Settings > Customization > Customize the System.
- Go to Dashboards.
- Open the "Sales Dashboard".
- The GUID will be in the URL of the dashboard record.
- Update and Publish your changes within the Site Map Editor.
- How it Works: By setting the
DefaultDashboardId in the sitemap, you are instructing the app to load that specific dashboard when the "Dashboards" area is first accessed. Similar to the app-level default, this will likely be the initial view for new users.
- Caution: Directly modifying the sitemap can have unintended consequences if not done carefully. Always back up your customizations or work in a development environment first.
3. Using JavaScript on Form Load (Less Ideal for the Entire "Dashboards" Area):
While technically possible, using JavaScript to redirect users to a specific dashboard when they navigate to the "Dashboards" area is generally less clean and less performant than the app-level or sitemap approaches. It would involve:
- Attaching a JavaScript web resource to a form that loads when the "Dashboards" area is accessed (this can be tricky to pinpoint).
- Using
Xrm.Navigation.openForm to navigate to the desired "Sales Dashboard".
This method is not recommended for setting a true default for the entire "Dashboards" sitemap option.
Which Method to Choose:
- For Unified Interface Apps: Setting the Default Dashboard at the App Level (Method 1) is the easiest, most supported, and recommended approach. It's configuration-driven and less prone to issues.
- Modifying the App Sitemap (Method 2) can also work but requires using the XRMToolBox and a bit more technical understanding. Use this if the app-level default doesn't fully meet your needs or if you need more direct control.
- JavaScript (Method 3) is generally not the best approach for this specific requirement.
In summary, go to the App Designer for your Sales Hub app and set the "Sales Dashboard" as the "Default Dashboard" for the "Dashboards" area. This will ensure that new users (and users who haven't set their own default) will see the "Sales Dashboard" when they navigate to the Dashboards section. Remember to save and publish your app customizations.