I ran into a feature the other day that I thought would be worth writing an article about. This feature has been around for a while, but I feel that it might have slipped in without a lot of us noticing, so here goes!
Administrators can configure the knowledge base search control on the case form to automatically filter knowledgebase articles based on data populated in the case record. This functionality can be extended to automatically filter knowledge base records on any lookup field that is on the case record and the knowledge base article record. So for example, if I have a subject field lookup on my case form and I also have a subject lookup on my knowledge base article form this functionality will only show knowledgebase articles (on the case form) that have the same subject populated as the subject field on the case. I.E if I have a case with subject ‘products’, The system will automatically filter knowledge base articles on the case form that have the same subject field set to ‘product’. Pretty nifty!
In my example, I have added a lookup called subcategory on the case entity (lookup to a custom entity) that is used to categorize the issue type for each case. (I have configured additional functionality related to this custom entity which you can read about in this article.) I then added a lookup, also called subcategory, (to the same custom entity) to the knowledge base article entity.
Enable Relevance Search
In order for this functionality to work, we need to have relevance search enabled. You can do this by navigating to settings > administration > system settings. On the general tab, scroll down and check the box next to relevance search.
Configure Knowledge Article Views and Form
We also need to make sure that the subcategory field is added to the quick find view of the knowledge article entity. We can do this by navigating to Settings > Customizations > Customize the system. Expand entities on the left and scroll down to the knowledge article entity. Click on views and open the ‘Quick Find Active Knowledge Articles’ view. Click ‘Add View Colums’ and add the lookup field, then click ‘Add Find Columns’ and select the lookup view. Save and publish your changes.
The next thing we need to do is add the lookup field to the knowledge article form. Under the knowledge article entity click on forms and open the main form. Add the lookup field to the form and click save, then publish. Now make sure you update the newly added field with data, so you can do some testing later.
Configure the knowledge base search control on the case form
Scroll up and expand the case entity. Click on ‘forms’ and open the main case form. If the knowledge base search control isn’t on the case form yet, click ‘Insert’ on the ribbon and add the knowledge base search control. If it’s already there, you can open the control. Scroll down to get to the automatic filtering configuration. Click on ‘+Add filter’ on the bottom, this is where we select the lookup fields that we want to filter on. The KB Attribute is the lookup field on the knowledge article, the source entity attribute is the lookup field on the source entity, which is the case (incident) entity. Click the save icon and click the set button, then save the form and publish your changes.
Result: Now when you open a case and have data in the case subcategory field, the control will filter the knowledge base articles and only show the articles that have the same value in the subcategory field.
I hope you enjoyed this post!
This article was originally published here: https://d365goddess.com/dynamics-365-customer-service-kb-automatic-filtering/