Dependencies tab
The Dependencies tab lists the objects that use the current object (Used by) or the objects it uses (Uses), one direction at a time, grouped by module, with a pill for each kind of dependency. Use it to judge the impact of changing an object, to see what an object needs, and to drill into where two objects depend on each other.
Opening it
- Select the Dependencies tab at the bottom of the Object view.
- Select View › Dependencies.
- Press Ctrl+D.
To show it in a window of its own, see Open it in a new window.
| # | Name | Description |
|---|---|---|
| 1 | Used by | Shows the objects that depend on this object, with their count. See Used by and Uses. |
| 2 | Uses | Shows the objects this object depends on, with their count. |
| 3 | Filter by name or id | Narrows the list by object name or id. See Filtering. |
| 4 | Group by object type | Groups each module's objects by type. See Group by object type. |
| 5 | Kind chips | Narrow the list to some kinds of dependency. |
| 6 | Hidden by the filters | How many objects the filter box and the kind chips hide, as N of M hidden by the filters. |
| 7 | Module row | A module with the number of its objects shown. See The list. |
| 8 | Object row | Type icon, id, name and a pill per kind of dependency. See Kinds of dependency. |
Used by and Uses
The switch at the top left picks the direction, and the chosen list fills the tab. Each side shows its total count.
| Direction | Lists |
|---|---|
| Used by | Objects that depend on this object. |
| Uses | Objects this object depends on. |
An object opens on Used by, or on Uses when nothing uses it.
Filtering
The filter box and the kind chips narrow the list together: an object shows when it matches both. A module row shows while any of its objects does. While objects are hidden, a caption under the chips says how many, such as 3 of 45 hidden by the filters.
Filter box
Type in Filter by name or id to match object names and ids. One box filters both directions. It takes the name and number search syntax:
| Type | To match |
|---|---|
| A name or an id | Objects with that name or id. |
A range, such as 18..20 | Ids in the range. |
* and ? in a name, such as *Customer | Names that fit the pattern: * stands for any text, ? for one character. |
| between terms, such as 18..20|22 or 18|*Customer | Objects matching any of the terms. |
Kind chips
| # | Name | Description |
|---|---|---|
| 1 | All | Shows every kind. Select it to clear every kind filter, including those under More. It is on while no kind is selected, and selecting it again does not switch it off. |
| 2 | Kind chips | The first five kinds the list has, in the fixed order of Kinds of dependency, each with its icon. Hover over a chip for the kind's description and how many objects have it. Select one or more to show only objects with any of them. |
| 3 | More | Opens the less common kinds. Shown when the list has more than five kinds. A dot on the button means one of its kinds is filtering. |
| 4 | Less common kinds | A check box per kind, with its icon and the number of objects that have it. Check a kind to filter by it as a chip does. |
Each direction has its own chips, built from the kinds its list has.
The list
The list holds a row per module, and under it a row per object.
| Row | Shows |
|---|---|
| Module | The module's icon and name, its publisher in smaller dimmed text, and the number of its objects shown. Unknown module when Prism cannot tell which module an object belongs to. Modules come in the same order as in the Objects panel. |
| Object | The type icon (hover for the type name), the id, the name, and a pill per kind of dependency. Objects are sorted by type, then by name. |
While you scroll, the module row of the top object stays pinned at the top of the list. With the keyboard, Left and Right collapse and expand a module row. Selecting a row does not open the object; see Opening objects and the row menu.
Group by object type
| # | Name | Description |
|---|---|---|
| 1 | Group by object type | Turns grouping by type on or off. |
| 2 | Module row | A module, with the number of its objects shown. |
| 3 | Type row | The type's icon and name, with the number of its objects shown. Pinned below its module row while you scroll. |
| 4 | Object row | Id, name and pills. The type icon is left out, as the type row names the type. Objects are sorted by id, then by name. |
The button at the right of the top row turns it on. It is off when Prism starts, and the setting applies to every object in the workspace, in both directions and in the Object dependencies window, until you change it or close Prism.
Kinds of dependency
An object row has a pill for each kind of dependency between the two objects, in the order below. Hover over a pill for its description. Pills of data sources take the accent color and event subscriptions are green; the rest are neutral.
| Pill | Description | Color |
|---|---|---|
| Source table | Named by a SourceTable property. | Accent |
| Report data item | A report data item. | Accent |
| Query data item | A query data item. | Accent |
| Object property | Named by an object property. | Neutral |
| XmlPort table element | An XmlPort table element. | Accent |
| Extends | Extends the object. | Neutral |
| Extends interface | An interface extending another interface. | Neutral |
| Customizes | Customizes the page. | Neutral |
| Page customization | Named by a page customization. | Neutral |
| Implements | Implements the interface. | Neutral |
| Interface implementation | Named by an interface implementation property. | Neutral |
| Table relation | Named by a TableRelation property. | Neutral |
| Permission | Named by a permission. | Neutral |
| Calc. formula | Named by a CalcFormula property. | Neutral |
| Field | The type of a field. | Neutral |
| Variable | The type of a variable. | Neutral |
| Parameter | The type of a parameter. | Neutral |
| Return type | The return type of a procedure. | Neutral |
| Name in code | The object's name written in code. | Neutral |
| Id in code | The object's id written in code. | Neutral |
| Page part | A page part. | Neutral |
| Control add-in | A control add-in. | Neutral |
| Event subscriber | Subscribes to one of the object's events. | Green |
| OnBeforeInsert, OnBeforeModify, OnBeforeDelete, OnBeforeRename, OnBeforeValidate, OnAfterInsert, OnAfterModify, OnAfterDelete, OnAfterRename, OnAfterValidate | Subscribes to the named trigger, such as “Subscribes to the OnAfterModify trigger.” | Green |
A subscription to a table trigger shows the trigger's pill, such as OnAfterModify, instead of Event subscriber. The ten trigger kinds have no chips of their own: they filter under the Event subscriber chip.
Opening objects and the row menu
Press Enter or double-click an object row to open the object. Right-click an object row for:
Without a license, the two Show where… items and Find all usages of this object… are dimmed, as finding usages of objects needs a license.
See where one object uses another
- Open the object and select the Dependencies tab.
- Select Used by to look into an object that uses it, or Uses to look into how it uses another object.
- Right-click the other object and select Show where it uses this object… or Show where this object uses it….
The Usages window lists each place where the one object uses the other.
Find the pages of a table
- Open the table and select the Dependencies tab.
- Select Used by.
- Select the Source table chip.
The list shows the pages, reports and other objects whose SourceTable is this table.
Open it in a new window
To give the list more room, or keep it next to the code, open it in the Object dependencies window:
- Right-click the Dependencies tab and select Open in new window….
- Select View › Open Dependencies in New Window.
- Press Ctrl+Shift+D.
These are dimmed when the current object has no dependencies.