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:

# | 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:

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

# | 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:

# | 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:

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.
Navigation and history
Identifiers that reference a declaration have tooltips and you can click to navigate to the 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:

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:

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:

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:

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.
