Amongst the various options to quickly lookup or search data in Dataverse / Dynamics 365, the most popular remain
1. Search box in the view – search within the view being listed
2. Advanced find search – you can setup your detailed search criteria for specific tables and columns and get the desired results
3. Dataverse search aka Relevance search – Global search box that lets you type a keyword and get the results by scanning records across entities and fields.
In this article, we focus on the update that Relevance search received in the last update cycle.
Let us start with what got me exploring this feature in depth
I see a search bar and type Mumbai – to see if it will search for records in Mumbai and as I type, the search list starts displaying matches as can be seen in the screenshot below with the option to show more results…
And I click show more and this is what I see
Could be a bug, if it shows in the drop-down, it should list them as well. And this is how it started…
How does it know which columns and tables to look for?
Quick View – is a special kind of view that is available for every table that you add to Dataverse.
Add the table/entity to the solution and then navigate to the view section of the selected table
Edit the Quick Find view to configure the find by section, which is where you provide the list of fields that should be searched as part of relevance search. Note this is also used when you type in the search box of a view
As can be seen the address 1 city field is not selected in the search field list, and yet when I did a search, it did search for the entered keyword in this column as well.
This column though not included in the search field list, was included as part of the columns in the view to show the search results
Take this column off the view and save and publish the view. Now search for the keyword Mumbai and it does not find any match
This means the search is performed not only on the search columns specified in find by but also the columns included in the view to show the results.
Per the above article the fields that are present in the filter conditions, view columns and find by columns are included in the Dataverse search index.
The relevance search is powered by the Dataverse Search Index. You can manage and configure the index from the Overview section of a solution as shown below
Manage Search Index is where you will see all the tables listed
It will list all the tables present in the current solution. You can enable or disable indexing on these tables from here.
In the above example, I uncheck the Account table and save the changes. Now if you search for a keyword that you know for certain is available as Account, you will still not find it listed in the search results
While Quick Find view lets you configure the tables and fields that should be used for search. It won’t be included as part of Dataverse search until it has been indexed.
If you select show more results in the above list, you get the following screen with the results categorized by table/entity type.
The columns for each of these entity results are picked up from the view column configured in the Quick Find View.
You can further filter results using the filter pane
The columns available for filter are the date, numeric/currency and lookup attributes available in the results view for that table.
The search results in the list show call to action buttons against each of the result for quick access to operations that you commonly use.
This list is configurable. As you can see there is no quick action button available for the quotes table. Let us see how this can be enabled.
Here we will be enabling OOB Assign button for quick action on Quote. As you can check in below screenshot currently there is no option available.
We will update Assign button on Quote entity using Ribbon workbench. For the same, you have to create an unmanaged solution and add Quote entity within solution. Then open same solution using Ribbon workbench.
You have to Add custom button or customize OOB button from Home area as shown below so buttons can be available for Quick action. Here we choose Customize Command for ASSIGN button.
Then we have to add Enable Rule for button command as below.
Add Enable rule with below properties.
Id : Mscrm.ShowOnQuickAction
Un-customised (IsCore): True
You need to add same Enable rule for your custom button to be available for Quick Action. Details about the new enable rules available to support are provided here
With this modification, now the search list will show the assign quick action against the search results for quotes.
If you would like to use the relevance search functionality programmatically to support your own custom canvas app, you can refer this blog on how to go about with it.
With the new updates, it is not just easy to find data but with the call-to-action or quick action buttons added, it helps minimize the clicks required to get there