How to filter Application Explorer?

Filtering Application Explorer
We always use filtering in Application explorer to search for elements inside AOT but there are a lot of  useful regular expressions that we can use to help us in finding what we are looking for faster. And in this article, I'm going to show you the different things you can do while filtering in your D365FO development environment.

Normal search:
If we simply type CustTable, we are going to get all elements that contains the word "CustTable". Whether CustTable is at the beginning, mid or end of the word

Contains filter

Begins with
If we want to filter for all elements that begins with "CustTable", then we can use ^CustTable

Begins with filter

Ends with
If we want to filter for all elements that ends with "CustTable", then we can use CustTable$

Ends with filter

If we want to filter for elements that exactly contains the word CustTable, then we can use ^CustTable$. Where "^" means it starts with and "$" means it ends with

Exactly filter

Certain number of characters in between
If we want to search for a certain number of characters between two words, then we use dot "."
Example, if we want only one character between "Cust" and "Table" then we use one dot like this "Cust.Table", if we want two characters exactly between them, then we use two dots "Cust..Table"..etc

Certain number of characters in between

Any number of characters in between
What if you are searching for an element where you know it contains more than one word, regardless if those words are next to each other or separated. Then in this case, you can use ".*". As you can see in the image below, it returned any element that contains both words "Cust" and "Table" regardless of the number of characters in between.
Where the dot "." means there is only one single character between the two words and you need to add star "*" to the dot, in order to make it return more than one single character or 0 characters between the two words

Contains more than one word

For more regular expressions, you can check the official Microsoft documentation Regular Expression Language - Quick Reference

Additional AOT Filtering Options
If you click on the "drop down" next to the AOT search, you'll find more filtering options

Filtering options

Filter By Type
If we want to filter for elements of a certain type like class, form, table..etc, then we can use this option.
So let's say we want to return all elements of type "class" that contains the word CustTable. In this case, we can type in the search "CustTable" then we click on "filter by type" where 
a predefined criterion is added to the search with type class. Or we type it directly like this: CustTable type:"class"

Filter By Type

Filter by type class result

Or if we want to filter on only the table "CustTable", then we can use this: ^CustTable$ type:"table"

Filter by table

Filter By Model
If we want to filter for elements in a certain model, then we can use "Filter By Model"
Example: If we want to filter for all elements inside "Application Suite" model, then we can do as the image below:

Filter by model

Or filter for elements that contains the word "CustTable" inside "Application Suite" model (the order of whether to type model then custTable or vice versa doesn't matter)

Filter by model and table

Filter By Name
If we want to filter the elements by Name, then we choose "Filter By Name". This is similar to the normal search we explained at the beginning of the article. So if we want to filter for an element that contains the word "CustTable", then we can use: name:"CustTable"

Filter by name

Filter By Modified Date
If we want filter for elements that were modified within a specific period, then we can use "Filter By Modified Date".
Example: Let's filter for elements that ends with CustTable and got modified between 10/5/2024 and 11/5/2024 (I noticed that the modified date returns everything regardless of what we put (even if the period is in the future), so I feel like this option is not working properly)

Filter by modified date

Filter By Extension Point
When you select on "Filter By Extension point", a predefined criterion is added to the search bar: extensionpoint:"eventhandlers,eventdelegates,pluginclasses,publicviews" 
Filter by extension point

You can filter on one of them, for example, if you type this: extensionpoint:"publicviews", then you'll get all views or entities that have "IsPublic" property set to yes

Filiter By Extension point: public views

Or if you choose "event delegates, then it will return all elements that contain delegates.

Here's Microsoft documentation about the additional filtering: Filtering Application Explorer


Popular Posts

How to update D365FO environments to a new Microsoft version?

How to create a new D365FO cloud-hosted environment?

How to apply database backup from LCS to your D365FO DevBox environment?