Reference manual

Objects page

Object view

The object view shows the current object as a structure: its heading, links to its declaration groups, and each declaration with its properties and code, in semantic colors and with module annotations. Every declaration has a context menu for finding its usages and flows. Use it to read an object and to navigate from it.

Opening it

Prism for AL object view of table 27 Item, with its declaration groups, its extensions and its namespace
1 2 3
The object view of a table.
# Name Description
1 Declaration groups A link per group of declarations, such as fields, triggers or procedures, with the number of declarations in it. Select one to scroll to the first declaration of the group. A group is listed only when it has declarations; trigger events only when they have subscribers.
2 Extensions The objects that extend this object. Select one to go to it.
3 Module annotation The publisher and name of the module an object reference belongs to.

Right-click the object heading for the object's context menu, the same as on an object in the Objects panel.

Semantic coloring

Identifiers in code are colored by what they are. Parameters and fields have their own colors, global variables are set in italics, and variables holding temporary records have a dotted underline:

Prism for AL procedure with parameters, variables and code in semantic colors, a temporary record underlined
Semantic coloring of a procedure.

Immediate insights

When the workspace has a code graph, a line of immediate insights stands above each procedure and trigger: what the code reaches when it runs. The counts fill in while Prism analyzes the object.

Prism for AL immediate insights above a procedure: graph buttons and Commit, EventPublisher, UserAction and RIMD counts
1 2 3 4 5 6
Immediate insights above a procedure.
# Name Description
1 Inbound procedural graph Opens the Procedural flow graph window with the flows into the procedure or trigger.
2 Outbound procedural graph Opens the Procedural flow graph window with the flows out of the procedure or trigger.
3 Commit Shown when an explicit Commit is reachable on a path with no CommitBehavior set. The number is how many procedures and triggers commit. Select it to list them in the Flows window.
4 EventPublisher The number of event publishers the procedure or trigger reaches. Select it to list them in the Flows window.
5 UserAction The number of user actions that reach the procedure or trigger. Select it to list them in the Flows window.
6 RIMD A button per kind of table operation reached: Read, Insert, Modify and Delete, with the number of tables. Select one to see the tables in the RIMD overview window.

Immediate insight layout on the Settings page sets whether the buttons show an Icon, the Name (the default) or the Icon and Name.

Right-click the line of immediate insights for its context menu. It works while the analysis is still running.

Event publishers and subscribers

A lightning symbol marks event publishers and subscribers:

Prism for AL object view with an event publisher and its subscriber, each with a lightning symbol
1 2 3
An event publisher and a subscriber.
# Name Description
1 Outlined lightning symbol An event publisher.
2 Filled lightning symbol An event subscriber.
3 Subscribed event The event the subscriber subscribes to. Select it to go to the publisher.

An identifier that refers to a declaration shows the declaration in its tooltip. Select it to go to the declaration:

Prism for AL object view with the tooltip of a field reference in code
A field reference and its tooltip.

Prism selects the target line and marks it with a bar in your Windows accent color. The navigation history records the jump, so going back returns you to where you started; see History menu and Navigation arrows.

Selecting a built-in function or a data type opens Microsoft's documentation of it in your default browser.

Select the name of a declaration, such as a variable, a procedure or a field, to find its usages. The Find Usages item of its context menu shows this as LeftClick.

Prism for AL declaration context menu with LeftClick beside Find Usages
Select a declaration's name to find its usages.

Declaration context menu

Right-click the name of a declaration for its context menu. Each kind of declaration offers the items that apply to it; the table after the menu lists them. A search item that cannot run is shown dimmed, with the reason in brackets, such as Find Inbound Flow (graph unavailable) or Find Usages (Unlicensed). The flow items need a code graph; see Auto-build graph and Start code graph button. Without a license only Find Usages of parameters and variables runs.

Declaration Items
ProcedureAll of the above, and the items of the Procedure context menu.
TriggerAll of the above except the event subscriber items.
Trigger event, such as OnAfterInsertEventFind Usages, the inbound and outbound flows and flow-graphs, Copy Prism Path to Clipboard, both event subscriber items, Go to Source and Go to Line in Visual Studio Code.
FieldFind Usages, Find Inbound Flow, Copy Prism Path to Clipboard, Generate Event Subscriber Code…, Go to Source and Go to Line in Visual Studio Code. A system field has no Go to Source or Go to Line.
Parameter, variable, text constant, enum valueFind Usages, Find Inbound Flow, Copy Prism Path to Clipboard, Go to Source and Go to Line in Visual Studio Code.
Key, field groupFind Usages, Copy Prism Path to Clipboard, Go to Source and Go to Line in Visual Studio Code.
Page field or action, report data item or column, query or XMLport elementFind Usages and the flows and flow-graphs the declaration supports, Go to Source, Go to Line in Visual Studio Code and Copy Prism Path to Clipboard. Fields and actions in page layouts add Generate Event Subscriber Code….

A label variable with an XLIFF translation adds Copy Translation Id to Clipboard, which copies the XLIFF translation id; search for it in XLIFF files.

See Declaration search feature matrix for which searches each kind of declaration offers.

Procedure context menu

Procedures, event publishers and subscribers included, add these items to the Declaration context menu:

On a procedure, Generate Event Subscriber Code… and Copy Default Event Subscriber Code to Clipboard are available when the procedure is an event publisher: a business, integration or internal event.

Return value context menu

A procedure or trigger with a named return value shows the name after its parameters. Select the name to find its usages, or right-click it for:

Used global variables

With Show used global variables on, on the Settings page (off by default), each procedure and trigger lists the global variables its code uses. Select one to find its usages within that procedure or trigger, or right-click it for:

Code call context menus

Some calls in code have a context menu with one item; the mouse pointer changes over a call that has one. Right-click the call for:

Line context menu

Right-click the background of any line, such as a property or a declaration, for:

Code section context menu

Right-click the Code header of a procedure or trigger for:

Select and copy code

Select the margin to the right of the line numbers on a first and a last code line to mark the lines between them. Select a marker again to clear it. Prism keeps your marked lines while Remember code line selections is on (the default), on the Settings page. Right-click the start or end marker for:

Inlined XLIFF translations

Prism shows translations from the workspace's XLIFF files in place, in the selected language. Hover over the translation symbol to see where the translation comes from. When a language has several translations of a text, the tooltip lists them all in priority order, each with the reason it was not chosen.

A caption translated in place, with its tooltip.