Form Designer: Basic ComboBox - Properties

This control is frequently used for domains (*_TBD). When a form is created, every attribute with a relation to a domain receives a basic combo box. All entries in TB_RELATIONS are analyzed.

Basic combo box properties: A combo box always has a drop-down arrow that you use to select an entry. If the related feature has geometry, you can optionally set an FID Selection button to identify and assign the related object in the map and a Highlight button to highlight the related object in the map.

Property

Description

System Category

 

ClassName

ComboBox

Name

Name = attribute name, for example ID_STATUS

Base

 

AllowReference

If True, the value can be entered by using a reference record.

IsLocked

True = cannot be edited

IsMandatory

True = must always be acquired. In edit mode these attributes are highlighted by a red background color.

ValidationCode

Defines a validation code for each input field. During validation, values from other attributes can also be queried.

ValidationMessage

Defines a message to display if validation fails.

Specific Category

 

AllowDoubleClick

True = default = If you double-click, the form of the related table will appear.

False = If you double-click, no table will appear.

Detail

All Detail entries belong together. They can be entered together in a separate dialog box that appears when you click any of the respective drop-down arrows.

DetailIndustryModel

The detail table may also reside in an industry model that is not the current industry model.

DetailFieldName

Detail attribute that is stored, for example, ID; usually the attribute is set according to TB_RELATIONS.

DetailFilter

Default filter = empty. Detail Listfilter: You can define which records of the detail table are available, for example, ACTIVE=1. Also, you can define an additional filter.

DetailList

Detail Listfiled: attribute to show in the form, for example, VALUE.

For example, use ID || ' - ' || VALUE to show both ID and VALUE.

For domains usually the ID is listed. It is reasonable to change this into VALUE, as this is more clarifying.

DetailOrderBy

Defines the sort order of entries in the detail table, for example, VALUE.

DetailTable*

The related table. For example *_TBD, which is usually the detail table that is set according to TB_RELATIONS.

FidButton**

True = an FID selection button is shown next to the input box. Use this only if the relation points to a geometry feature that can be identified in the map.

HighlightButton

True = shows a highlight button

UseBuffer***

True = default; by default, all values of the specified detail table are loaded once in a session. If set to False, loads the detail table every time you open the combo box (by pressing the drop-down arrow button) or you change (update, or navigate to) the record.

Note: A False setting negatively impacts performance.

Always set this option to True if you work in Table View mode, because in this case records are changed frequently in order to show all records.

ValueDefault

Specifies a default value to insert when you add a new record. You can also use this for the AutoIncrement value or date/time and to create GUIDs.

* DetailTable: The preview pane shows the detail list. Click refresh to check whether your definition has the desired results.

** FID button: The Fid Selection button is used to assign the related object by clicking in the drawing. It is visible even if the attribute is locked. That means that the drop down list will not open, and the user will always need to use the button to select the feature in the map. He cannot select one from the list. In this special case, locked means that the user cannot enter any values using the keyboard.

Combo box detail table settings: Normally you would change the Detail Listattribute or Detail Sort Order only, because the Detail Table and Detail Attribute values are read from TB_RELATIONS.

*** UseBuffer: Normally, you set the UseBuffer property to True for best performance. In the case of real domain tables (*_TBD), the entries do not change much, so they are not loaded every time you change the record. It may be necessary to set the UseBuffer property to False, for example, if the related table is not a real domain, but an ordinary feature table, whose contents frequently change.

Multi-relations, which are relations to several tables, can be set in the data model administrator. If a multi-relation is defined, you can select those tables from the Detail Table dropdown list as well. In this case, you will see an entry in the dropdown list in {} as the first item.

If you have a complex expression instead of a simple attribute, you can use multi-relations, which means that you can have a list of FIDs from several defined feature classes. For example: 'FID: ' || FID || ', NR: ' || NR

To get this working, the expression in the property box has to look like this: 'FID: ' || FID || ', NR: ' || NR, NR. Note, that you should list all attribute names used in the expression after the expression and separated by commas. The attribute name FID is an exception and should not to be listed.