Reference manual

Object view

This view is shown when it has been selected via the View selector buttons. The object view presents the full details of the object as a logical structure using icons, colours, module annotations etc:

Prism for AL structured object view
Object view.
# Name Description
1 Declaration section shortcuts Links to sections of object content post-fixed with the number of declarations. Click the link to navigate to the first declaration of the kind. A link is only displayed when there are declarations of that kind. Trigger Events are only displayed when there are subscribers.
2 Object extensions List of objects extending this object. Click to navigate to the object.
3 Module annotation Object references have postfixed information about the module the object belongs to (publisher name and module name).

Semantic colouring

Identifiers in code are coloured based on their semantics. For example, there are special colours for fields and temporary records:

Prism for AL - semantic code colouring
Semantic code colouring.

Immediate insights

When a code graph has been generated for the workspace, immediate insights are available above procedure and trigger declarations:

Prism for AL: Immediate insights
Immediate insights.
# Name Description
1 Inbound procedural flow graph Opens the Procedural flow graph window showing inbound flows to the procedure or trigger.
2 Outbound procedural flow graph Opens the Procedural flow graph window showing outbound flows from the procedure or trigger.
3 Commit Indicates if explicit commit calls are reachable on a path with no CommitBehavior set. Click the button to find the actual commit invocation sites in the Flows window.
4 EventPublisher Indicates the number of event publishers reachable from the procedure or trigger. Click to view the actual publishers in the Flows window.
5 UserAction Indicates the number of user actions that can reach the procedure or trigger. Click to view the actual user actions in the Flows window.
6 RIMD Shows how tables are used when the procedure or trigger runs. The trailing numbers indicate the number of different tables. Click a button to drill down to table level in the RIMD overview window.

Immediate insights context menu

The immediate insights line has a context menu which corresponds to the button functionality described above. This menu can be used while the immediate insights analysis is running.

Events are highlighted with icons:

Prism for AL: Events are highlighted in object view
Object view event publishers and subscribers.
# Name Description
1 Unfilled lightning symbol Event publisher.
2 Filled lightning symbol Event subscriber.
3 Subscriber's publisher reference Click the subscriber identifier to navigate to the publisher.

Transfer fields mapping

When TransferFields is used on two different tables, a special context menu is available:

Prism for AL object view transferfields context menu
TransferFields context menu when tables differ.
Menu item Description
Show Inter-table Field Mappings Opens the Transfer fields window.

If you want to see the TransferFields mapping between any two tables, you can use the context menu on objects in the object panel.

Identifiers that reference a declaration have tooltips and you can click to navigate to the declaration:

Prism for AL object view goto declaration
Object view – goto declaration.

Following navigation, the target code line will be selected and marked with a vertical box with your Windows accent colour. Also, the navigation history is updated, so hitting the back button after navigation will bring you back to the navigation source. See History menu and Navigation arrows.

When clicking an identifier that resolves to a built-in function, a window with Microsoft's official documentation is opened in your default browser.

Identifiers that declare something, e.g. variables, procedures, fields etc, offer Find usages via left-click in addition to the context menu shown here:

Prism for AL left-click declaration to find usages
Left-click declaration to find usages.

Default declaration context menu

The default declaration context menu is:

Menu item Description
Find Usages Find usages searches the whole workspace including packages for usages of the declaration and opens the Usages window.
Find Inbound Flow Finds flows to the declaration and opens the Flows window. This menu item is only enabled when a code graph has been generated, see Auto-build graph checkbox and Start code graph button.
Find Outbound Flow Finds flows from the declaration and opens the Flows window. This menu item is only enabled when a code graph has been generated, see Auto-build graph checkbox and Start code graph button.
Show Inbound Procedural Flow-Graph Visualizes the inbound Procedural flow to a declaration. Opens the Procedural flow graph window and displays flows into the declaration. This menu item is only enabled when a code graph has been generated, see Auto-build graph checkbox and Start code graph button.
Show Outbound Procedural Flow-Graph Visualizes the outbound Procedural flow from a declaration. Opens the Procedural flow graph window and displays flows from the declaration. This menu item is only enabled when a code graph has been generated, see Auto-build graph checkbox and Start code graph button.
Copy Prism Path to Clipboard Copies the Prism path to the clipboard. Paste the path into your own notes or share with a colleague. In an open workspace you can navigate to the path with Ctrl-Shift-G which opens the Go to Prism path window.
Go to Source Changes view to Source view and positions cursor at the declaration.

See Declaration search feature matrix for information about which search features are available for which declarations and when.

Procedure context menu

Procedures (including event publishers and subscribers) offer the following additional context menu items on top of the menu items from Default declaration context menu The additions are:

Menu item Description
Copy Name to Clipboard Copies the name of the procedure, to the clipboard.
Copy to clipboard Copies the source code of the procedure to the clipboard including annotations.
Open in Text Editor Opens your default text editor with the source code of the procedure.

Background context menu

A context menu is available anywhere in the object view, so on properties, code lines etc by right-clicking the background of a code line:

Prism for AL context menu available anywhere in object view
A context menu is available anywhere, here invoked at the cursor position shown.
Menu item Description
Go to Source Changes view to Source view and positions cursor on the same line.
Go to Line in Visual Studio Code This menu item is available for objects defined in .al files in workspace folders, i.e. not in packages. Opens Visual Studio Code (if not already open with the current folder/workspace and navigates to the line where the function was invoked.
Copy Prism Path to Clipboard Copies the Prism path to the clipboard.
Copy Translation Id to Clipboard Copies the XLIFF Translation Id to the clipboard. You can use this to search in XLIFF files.

Code section context menu

Code sections of procedures and triggers offer the following context menu on the "Code" text:

Prism for AL code section context menu
Code section context menu.
Menu item Description
Copy Code to New Window Copies all code to a new Code fragment window.
Copy Code to Clipboard Copies all code to the clipboard.
Go to Source Changes view to Source view and positions cursor at the procedure or trigger.

Select and copy code

Code lines of procedures and triggers can be selected and be actioned in various ways. Left-click the area to the right of the vertical bar on the start and end line. The area will be marked with symbol, and the start and end indicators offer a context menu:

Prism for AL code line selection
Code line selection.
Menu item Description
Copy Code to New Window Opens the Code fragment window with the selected lines.
Copy Code to Clipboard Copies the selected code lines to the clipboard with context information.
Copy Code to Clipboard without Context Copies the selected code lines to the clipboard without context information.
Open Code with Default Text Editor Opens your default text editor with the code lines.
Clear Selection Clear the selection of code lines. You can also clear the start or end selection with a left-click.

Inlined XLIFF translations

Based on data in XLIFF files, Prism shows translations in place based on the selected language. Hover over the translation symbol to see how there the translation originates. In case multiple translations are available for the same language, all translations are displayed in priority order with a 'disqualification' reason.

Prism for AL in place display of label translation
In place display of label translation with explanatory tooltip.