Quick Fixes
If a reference does get broken, Business Studio provides several quick fixes.
- Reload the working copy quick fix removes stale unresolved reference problem markers.
- Clear the reference quick fix simply clears the offending reference.
- Repair the reference quick fix helps you to locate a suitable replacement model element.
Reload the working copy - Quick Fix
This quick fix is used to remove the unresolved reference markers that can sometimes linger after the missing resource has been reinstated; this can sometimes happen during project import.
Clear the reference - Quick Fix
This quick fix can be applied to multiple unresolved reference problem markers simultaneously. It simply clears the offending references, which often places the referencing form model into an invalid state that is then reported by other problem markers. Such problems must then be fixed individually from within Form Designer.
Repair the reference - Quick Fix
This quick fix can only be applied to one unresolved reference problem marker at a time. It presents a dialog that lists all the possible model elements that could be used as a replacement for the missing referenced model element.
The Repair Reference dialog has a set of filters that allow you to broaden or narrow the scope used to identify potential matches. When the dialog first comes up, all filters are active and no candidate items are visible. You can selectively disable filters to broaden the match scope until the list of candidates includes the desired replacement. The dialog remembers the filter settings. You can also type part of the target element name in the search box at the top the list will be filtered to show just the elements which match the search string. The filters are:
Project name
When this filter is active the list shows only matching items from the same project as that containing the originally referenced element. If no project of that name exists in the workspace you will have to deselect this filter to see anything at all.
File name
When this filter is active the list shows only items which reside in a file of the same unqualified name as that containing the originally referenced element. If no file of that name exists in the workspace you will have to deselect this filter to see anything at all.
Element type
When this filter is active the list shows only items which have the same type as the originally referenced element. For example, if the originally referenced element was a BOM class, the list will only show BOM classes. It is recommended to leave this filter enabled.
Element qualifier
When this filter is active the list shows only items which have the same qualifier name as the originally referenced element. For example, if the originally referenced element was a BOM type or property, the qualifier is the containing BOM package, so the list will only show BOM types or properties from a BOM package of the same qualified name as the original.
Element name
When this filter is active the list shows only items which have the same unqualified element name as the originally referenced element. For example, if the originally referenced element was a BOM type or property, the element name is the unqualified BOM type or property name (not the label).
Selecting the desired replacement and pressing the OK button closes the dialog and updates the form to point to the selected element, and the unresolved reference marker goes away. If the chosen item is in an unreferenced project the wizard requests permission to add a project reference.
Alternatively, pressing the Clear button closes the dialog and clears the unresolved reference – see the description for the Clear the reference quick fix.
Delete the model element - Quick Fix
This quick fix cascade-deletes the model element that holds the unresolved reference. That is, depending on the actual element type, it deletes either the element itself or the nearest containing model element whose removal would restore the form model to consistency.
For example, consider the end-point of a binding that references an object which no longer exists. This end-point holds an unresolved cross-reference. If the quick fix were to delete only the offending end-point, the binding would remain broken, as one of its two mandatory end-points would be missing. So, the quick fix cascade-deletes the entire binding rather than just the offending end-point.
In many cases, cascade is not necessary and the quick fix removes only the element bearing the unresolved reference.