Back to articles
X++ Development

How to Access the Table Browser in D365FO

Learn how to open the Table Browser in Dynamics 365 Finance and Operations from Visual Studio or directly from the D365FO URL.

How to Access the Table Browser in D365FO#

The Table Browser is one of those D365FO tools I use constantly.

If I'm debugging something and just need to see what is actually sitting in SalesTable, InventTrans, CustTable, or one of our custom tables, I don't want to write a runnable class or query SQL just to look at the data.

That's exactly where the Table Browser comes in.

There are a couple of ways to open it, so let's go through the ones I actually use.


What is the D365FO Table Browser?#

The Table Browser lets you view the records stored in a D365FO table directly from the browser.

Instead of looking at the data through a form, you're looking much closer to the actual table structure.

I normally use it when I'm:

  • Debugging an issue
  • Checking whether a record was actually created
  • Looking at fields that aren't exposed on a form
  • Testing custom logic
  • Comparing values between tables
  • Trying to figure out what D365FO actually saved to the database

For example, if I want to see the records in CustTable, I can open CustTable directly in the Table Browser.


Option 1: Open the Table Browser from Visual Studio#

If you're working in a development environment, this is probably the easiest way to open it.

Open Application Explorer in Visual Studio and find the table you want to look at.

For example:

Code
Data Model
└── Tables
    └── CustTable

Right-click the table and select Open Table Browser.

Open Table Browser from Visual Studio
Open Table Browser from Visual Studio

You can also see the keyboard shortcut in the menu:

Code
Alt + O

Once you click Open Table Browser, Visual Studio opens the table in your browser.

That's usually how I get there when I'm already working in Visual Studio.


What does the Table Browser look like?#

Once it opens, you'll see the records from the table in a grid.

CustTable opened in the D365FO Table Browser
CustTable opened in the D365FO Table Browser

One thing you'll notice pretty quickly is that the fields don't necessarily look like what you see on the normal D365FO form.

That's because you're looking at the underlying table fields instead of the user-friendly controls and labels from the form.

That's also one of the reasons the Table Browser is so useful when debugging.

If a field exists on the table but isn't displayed anywhere on the form, you can still see its value here.


Option 2: Open the Table Browser directly from the URL#

You don't actually need Visual Studio to open the Table Browser.

You can build the URL yourself.

The basic format is:

Code
https://<your-environment>/?mi=SysTableBrowser&TableName=<table>&cmp=<company>

For example, to open CustTable in USMF:

Code
https://<your-environment>/?mi=SysTableBrowser&TableName=CustTable&cmp=USMF

Replace:

Code
<your-environment>

with the URL of your D365FO environment.

Replace:

Code
CustTable

with whatever table you want to view.

And replace:

Code
USMF

with the legal entity you want to look at.

The important parameters are:

ParameterWhat it does
mi=SysTableBrowserOpens the standard D365FO Table Browser
TableName=CustTableSpecifies which table to open
cmp=USMFSpecifies the legal entity

Once you know the URL format, it's pretty easy to open whatever table you need without going through Visual Studio.


Changing the table#

Let's say I'm currently looking at CustTable:

Code
&TableName=CustTable

and I want to look at SalesTable.

I can just change it to:

Code
&TableName=SalesTable

and reload the page.

The same thing works for other tables:

Code
&TableName=InventTable
Code
&TableName=InventTrans
Code
&TableName=VendTable

or one of your own custom tables.

This is especially useful when you're debugging something that touches several related tables. Once I have the Table Browser open, I'll usually just change TableName in the URL instead of going back to Visual Studio every time.


Changing the company#

The cmp parameter controls which legal entity you're looking at.

For example:

Code
&cmp=USMF

If you want to look at the same table in another company, change the value:

Code
&cmp=USRT

This is worth checking before assuming your code didn't work.

I've definitely had situations where I thought data was missing only to realize I was looking at the right table in the wrong company.


Filtering the data#

You can use the normal D365FO grid filtering directly in the Table Browser.

This becomes especially useful with tables like InventTrans, where opening the table without filtering can give you a ridiculous amount of data.

For example, if I'm debugging inventory transactions for one item, I'll normally filter ItemId immediately instead of scrolling through thousands of records.

Filtering the AccountNum field in the D365FO Table Browser
Filtering the AccountNum field in the D365FO Table Browser

Click the dropdown on the field you want to filter.

From there, choose the filter operator you need, enter the value, and click Apply.

For example:

Code
AccountNum
begins with
100

You can use the same approach for fields such as:

Code
ItemId
SalesId
PurchId
InventBatchId
RecId

This is normally enough for quick debugging without needing to write a select statement just to inspect the data.


A URL worth remembering#

If you work in D365FO development, this part is worth remembering:

Code
?mi=SysTableBrowser&TableName=CustTable&cmp=USMF

You don't really need to memorize the entire URL.

The important parts are:

Code
mi=SysTableBrowser
TableName=
cmp=

Once you know those three, you can build the URL for whatever table and company you need.


Can I use the Table Browser in production?#

Depending on the environment and your permissions, you may be able to access the Table Browser outside of a development environment.

But I would treat the Table Browser as a tool for looking at data, not as a way to manually fix application data.

Just because you can see an Edit, New, Delete, or Save button in a particular environment doesn't mean you should use the Table Browser as a replacement for the actual D365FO business process.

If data needs to be changed, use the proper D365FO process, a data entity, or a controlled data-fix approach depending on the situation.

For me, the Table Browser is primarily a debugging and troubleshooting tool.


Visual Studio or direct URL?#

If I'm already in Visual Studio, I use:

Code
Right-click table → Open Table Browser

If I'm already in D365FO and I know the table name, I'll usually just change the URL:

Code
?mi=SysTableBrowser&TableName=YourTable&cmp=YourCompany

Both get you to the same place.

Once you get used to the URL format, you'll probably end up using both depending on what you're doing.


Conclusion#

The Table Browser is a simple tool, but it's one of the most useful things to know when you're working with D365FO.

If you're debugging something and wondering:

Did my record actually get created?

or:

What value did D365FO actually save in this field?

open the table and look.

A lot of the time that's faster than adding more code, adding another breakpoint, or guessing what's happening.

Was this article helpful?Sign in to vote

Missing something?

Suggest a topic you'd like to see covered next. The most requested topics help shape future XppForge documentation.

Sign in to suggest a topic