Entity Relationships

Documentation home

 

Display References Panel 1

Display Uses Panel 2

Refactor Panel 3

Deletion. 3

Renaming. 3

Broken References 4

Opening an entity containing broken references 5

 

There are numerous occasions when one entity has a relationship with another entity, and this relationship is implemented using the target entity’s path e.g. a form refers to a Presentation Template. Relationships can also exist at a lower level, for example a form field within a form can refer to a Static List, a page within a form can refer to a style sheet, a control within a form page can refer to a property set within a Presentation Template etc. In fact, it’s normal for a form to have many of these relationships.

 

The Ebase Xi Designer contains many tools to provide information on these relationships and to maintain their integrity. These are described in this document.

 

Display References Panel

A list of references can be requested by right-clicking and selecting References. You can do this for anything that can be referenced: any entity within the designer tree, a field, table, resource, property set etc. This panel shows all other entities which have a relationship with the target entity. For example, requesting references for a script will show all forms/components/services that refer to this script; requesting references for a Static List will show all the fields which refer to the list.

 

The example below shows references to the script SYSADMIN_DBCON_VALIDATE: there is just one reference - from the Button Control OK_BUTTON on page DBCON_EDIT of form EBASE_INTERNAL_DBCON_EDIT. Right click to display a menu where you can open the item or get its references or uses. Double clicking on the bottom line in any relationship (in this case the On Click line) will open the referencing form to the appropriate place.

 

 

Display Uses Panel

This panel shows the reverse of the References Panel described in the previous section i.e. it shows all the entities or sub-entities which are used by something. Usually this “something” is a complex entity like a form, a component or a workflow process. This panel is also very useful for identifying any broken references which are shown in red at the top (see example below).

 

The panel consists of two sub-panels: the left-hand panel shows a list of items which are used by the selected item (this is shown at the top). Clicking on any leaf item in this left-hand panel shows where it is referenced in the right-hand panel. Double-clicking on a leaf item in the right-hand panel opens the designer to show the reference (this isn’t possible in all circumstances so the system tries to show the closest point e.g. if the item selected is a script referenced in a before page event, the designer will show the page and its properties will be shown in the Properties View).

.

Additional options are available via a right-click menu to open/select items or to drill down to see additional uses or references displays.

 

When one or more referenced entities are missing, these are shown at the top of the left-hand panel in red as shown in this example (script SYSADMIN_SET_LANGUAGE is missing);

 

Refactor Panel

This panel is shown when you delete or rename something and references to it exist. An information popup is then displayed and if you click References within this popup, the Refactor Panel is shown.

 

Deletion

When you delete an entity or an element within an entity and one or more relationships exist, the system prompts with a popup similar to the one show below:

 

 

Renaming

When you rename an entity or an element within an entity and one or more relationships exist, the system prompts with a popup similar to the one show below:

 

 

 

Broken References

A broken reference exists where there is a link to an entity and the entity at the specified path does not exist. This situation can occur if something has been deleted and the warning about existing references has been ignored, or changes have been made to the workspace outside of the designer. A broken reference should be fixed as soon as possible as it can result in failure at runtime.

 

These broken references are shown in red text with a mouse-over text showing the full path of the referenced entity that is missing. Here is an example of a missing Static List - this has been configured using the Lists tab of the Form Field properties panel:

 

 

Here is an example of a missing script:

 

    

 

Opening an entity containing broken references

Each time an entity is opened, the system checks whether it contains broken references. If one or more broken reference is found, two things happen:

 

1.      The entity is shown with a red X in the bottom left-hand corner on the open items toolbar at the top of the designer, something like this:

 

2.      The Uses Panel is displayed containing a Missing Entities Section in red at the top which details each missing reference. Clicking on the missing entity in the left-hand panel will show where it is referred to in the right-hand panel. Here’s an example showing missing script SYSADMIN_SET_LANGUAGE which is referred to in the before form event of form ebaseInternalWsdl.