Dynamic references
The second way of referencing components is dynamically. Dynamic references can reference more than one component at a time. A specified criteria is used to determine which component will effectively be referenced at runtime. This method of referencing makes it easier to build extendable generic components.
Detailed information about this topic
Column-dependent references
A column-dependent reference references a component's column definition. This reference can be used everywhere where contents of a specific database table is shown or edited. An instance of the component is generated depending on which data type and other metadata is linked to the column.
By default, the following components are used as column-dependent references for editing.
Table 44: Overview of components as column-dependent references for editing
String |
VI_Edit_Default
VI_Edit_TextLong (if the column is multi-row defined) |
Int32 |
VI_Edit_Int |
DateTime |
VI_Edit_Date |
Foreign key |
VI_Edit_FK |
Dynamic foreign key |
QBM_Edit_FKDynamic |
Limited value columns |
VI_Edit_LimitedValues |
Multi-value columns |
VI_Edit_MultiValueProperty |
Multi-value columns with limited values |
VI_Edit_MulitLimitedValues (for parameter objects) |
Multi-value foreign key columns |
VI_Edit_MultiFK (for parameter objects) |
Numeric value range |
VI_Edit_NumericRange (for parameter objects) |
Date range |
VI_Edit_DateRange (for parameter objects) |
Boolean |
VI_Edit_Checkbox |
Double |
VI_Edit_Double |
Decimal |
VI_Edit_Decimal |
By default, the following components are used as column-dependent references for visualizing.
Table 45: Overview of components as column-dependent references for visualizing
Default |
VI_Edit_View_Default |
Binary column with contents "Picture" |
VI_Edit_View_Picture |
Column with contents "URL" |
VI_Edit_View_URL |
Defining a new column-dependent reference
A column-dependent reference is a conditional reference to a component. The type of column in a database table (for example, Bool, DateTime or String) determines which component is used to edit the relevant content. To this end, the standard scope of delivery includes VI components which cover all possible column types and finds them automatically.
NOTE: There are also custom entries in the web project file. You can tell which of the various tabs an entry belongs to by the prefix.
To open the "Column-Dependent References" tab
- In the Edit menu, select the Configure project > Column-dependent references menu item.
This opens Column-dependent references. The tab lists all existing columns with the corresponding default components, which are each given their own tab.
- Select the required tab.
The following tabs are available.
Table 46: "Column-dependent references" Tab
Edit values by column |
Select columns whose data can be edited in components.
For example, you want to use these components when you add a new employee in the Web Portal.
The prefix "ColumnEditor_" indicates that the entry belongs on Edit values by column. |
Display values by column |
Select columns whose data can only be viewed in components and not edited.
For example, you want to use a specific component for displaying an image.
"ColumnViewer_" indicates that the entry belongs on Display values by column. |
Foreign key filters |
Create a filter to limit the number of foreign key values.
An example of a filter would be, for the user to limit the number of departments an employee can use in the Web Portal. In this case, the filter should be set in "UID_Department" in the "Person" table.
The list of filters includes the filters given on the tab Editor tab as well as the filters that can be used without components.
"Filter_ColumnEditor_" indicates that the entry belongs on Foreign key filters. |
Edit foreign key values |
Specifies a component for all foreign key references to a table.
This means the user enters a combination of tables and components. The selected components are used in the Web Portal when the table is referenced by foreign key. In the case of "Person", this means that the same component is always used if an employee and a group owner or request recipient is selected, whether a manager is selected or not.
"FkColumnEditor_" indicates that the entry belongs on Edit foreign key values. |
Edit multi-valued foreign key values |
Specifies a component for all multi-value foreign key references to a table.
The user enters a combination of tables and components. The selected components are used in the Web Portal when the table is referenced by multi-value foreign key.
An example for using a multi-value foreign key would be a request for multiple employees. In the case of "Person", this means that "AutoComplete" is not only used to select the first recipient but also for subsequent recipients that are selected in the same request procedure. |
NOTE: You can only delete entries that you added yourself. Default entries are write-protected. The table and columns of a reference can only be edited if the entry does not have any default values.
Detailed information about this topic
Editing components for modifying
Components of a column-dependent reference can be edited for modifying.
To edit a component for modifying
- Open the Column-dependent references tab and, on the Edit values by column tab, select the desired entry.
- Check the box for the selected entry.
If there is a custom value for this entry, the value is shown in the Component (Customized) column.
When you enable the entry a custom value is added, just like when configuring the web project, which corresponds to the default value.
The control box cannot be disabled if the foreign key is customized.
- Edit the selected component by selecting another one from Component.
The selected component is the one to be used in the default web application.
NOTE: Instead of selecting a component, you can delete the configured entry using
![](/pt-br/technical-documents/image/4c621286-a05d-412f-9c47-3a5abb264757)
.
- Specify a filter by clicking in the Filter field on
and then creating a filter.
You can limit foreign key values with the help of the filter.