Video: Tools I Use: Browse objects in a world after C/Side

In this video, I’ll show the AL Object Browser from the awesome AZ AL Dev Tools extension to Visual Studio Code for Microsoft Dynamics 365 Business Central development.


In this video, Erik walks through one of the tools he uses daily to browse objects in Business Central now that C/Side is no longer available. If you remember the classic Object Designer in C/Side — with its organized list of tables, pages, reports, and codeunits accessible via Shift+F12 — you’ll appreciate how the AZ AL Dev Tools/AL Code Outline extension for Visual Studio Code brings back much of that experience.

The Problem: Life After C/Side

One of the great advantages of working in C/Side was the Object Browser (or Object Designer). You could press Shift+F12 and instantly see all your tables, pages, reports, and codeunits in a clean, organized list. It was intuitive and fast. But C/Side is gone, and many developers have been left wondering how to replicate that browsing experience in Visual Studio Code.

Erik has been asked multiple times in comments about the tool he uses to browse objects, so this video is dedicated to showing exactly that.

The Tool: AZ AL Dev Tools / AL Code Outline

The extension is called AZ AL Dev Tools/AL Code Outline, created by Andrzej Zwierzchowski (referenced as “Andrzej” in the video). Erik describes it as “awesome” and uses it constantly. While the extension has a lot of features, the two Erik relies on most are:

  • AL Object Browser — for browsing objects just like in C/Side
  • AL Wizards — for quickly creating new AL objects

To get started, simply install the extension from the Visual Studio Code marketplace and you’re ready to go.

Understanding Symbols and .app Files

When you download symbols from a server (whether a cloud sandbox or a Docker container), you receive .app files. These are essentially just zip files. If you open one with a tool like 7-Zip, you’ll find some logo files, layout references, and a bunch of JSON files inside. Trying to browse objects by reading those JSON files manually is painful — and that’s exactly the problem this extension solves.

Erik demonstrates this with symbols downloaded from two different environments: a cloud sandbox running version 16.1 and a local Docker image running version 16.3. In both cases, you get three symbol packages: the System Application, the Base Application, and the System symbols.

Browsing Objects with the AL Object Browser

To use the Object Browser, simply right-click on a symbol file (like the System Application .app file) and select “Open in AL Object Browser”. This opens a view that closely resembles what you had in C/Side — you can see tables, pages, reports, codeunits, and more, all neatly organized.

List View vs. Tree View

The default view is a List View, which gives you a flat list of all objects, much like C/Side’s Object Designer. But you can also switch to a Tree View, which presents the objects in a hierarchical tree structure. One nice advantage of the Tree View is that when you select an object, you immediately see its symbols (its public interface) without any additional steps.

Symbols vs. Source Code

It’s important to understand the difference between symbols and full source code:

  • Symbols represent the public interface of an app — what objects it exposes and what properties those objects have. For a table, this means fields, keys, and field groups. It does not include the implementation details.
  • Source (debug AL files) — By double-clicking an object in the browser, the tool can reach out to your server to retrieve the debug AL file, which contains the full implementation. This lets you see all the code behind triggers and procedures.

Erik demonstrates this by opening the Base Application and navigating to the Payment Terms table. By double-clicking and selecting his server, he retrieves the full .dal (debug AL) file and can inspect field behaviors, such as seeing how a Payment Terms Code field updates a Payment Terms ID — which ties into the concept of multiple keys on the same record.

Practical Example: Answering a Colleague’s Question

Erik shares a real-world example from that very morning. A colleague asked whether there was a Variant field on the production planning component table. Using the AL Object Browser, Erik was able to:

  1. Open the Base Application symbols
  2. Filter objects by “plan” to find the Planning Component table
  3. Open the symbols for that table
  4. Filter the fields by “variant”
  5. Confirm that yes, there is a Variant Code field on the Planning Component table

This entire lookup took just seconds — exactly the kind of quick investigation that was easy in C/Side and is now easy again with this tool.

Bonus Feature: The AL Table Wizard

Erik also briefly demonstrates one of the AL Wizards included in the extension. Using the New Table Wizard, he quickly creates a new table by specifying:

  • Table name and ID
  • A key field (Code, length 20, with SystemMetadata data classification)
  • A Name field (Text, length 100, with SystemMetadata data classification)

With a click of “Finish,” the wizard generates the complete AL table file — saving time and ensuring consistency.

Workspace Configuration

For reference, Erik’s workspace is organized with multiple folders for the app, tests, scripts, and CI/CD configurations:

{
    "folders": [
        {
            "path": "app"
        },
        {
            "path": "test"
        },
        {
            "path": "scripts"
        },
        {
            "path": ".github"
        },
        {
            "path": ".azureDevOps"
        }
    ],
    "settings": {
        "CRS.ObjectNameSuffix": "TBHLG",
        "CRS.OnSaveAlFileAction": "Rename",
        "al.compilationOptions": {
            "parallel": true
        },
        "al.enableCodeAnalysis": true,
        "al.backgroundCodeAnalysis": true,
        "al.codeAnalyzers": [
            "${CodeCop}", "${UICop}", "${PerTenantExtensionCop}"
        ]
    }
}

Note the use of code analyzers (CodeCop, UICop, and PerTenantExtensionCop) and background code analysis — good practices for maintaining code quality in Business Central development.

Summary

If you’ve been missing the C/Side Object Designer experience, the AZ AL Dev Tools/AL Code Outline extension for Visual Studio Code is the closest replacement available. It provides a familiar object browsing interface, the ability to inspect symbols and retrieve debug source code from your server, quick filtering to find fields and objects, and handy wizards for creating new AL objects. Erik emphasizes that this is a community-driven tool built by Andrzej out of the goodness of his heart, and it’s one of the most valuable extensions in his daily Business Central development workflow.