The Mask Data Form

The Mask Data form is used to create and manage an application's masks (lists and forms). It contains the default masks, which you can use as templates for your own masks. You can also create masks from scratch, for example to accept user data, to display data in linked tables or to display data which is calculated at runtime. The sublist are used to select specific mask attributes and predefined fields for your mask.


In the Mask Data form you can


Sublists

Additional Attributes
Field Assignment
Field Defaults


Fields and functions in the header form

Mask Name a mask's name
Mask Title a masks's title
Row a mask's vertical position on the screen
Column a mask's horizontal position on the screen
Length number of rows occupied by a mask
Width number of columns occupied by a mask 7
Vert. Scroll flag for vertical scrollbars
Horiz. Scroll flag for horizontal scrollbars
Sig. Fields number of significant fields
Max. Records maximum number of records in a mask
Sel. Menu name of a Select menu
NoSel. Menu name of a NoSelect menu
Edit Menu name of an Edit menu
Sel. Buttons name of a Select button area
NoSel. Buttons name of a NoSelect button area
Edit Buttons name of an Edit button area

Reconfigure updates the copy of the mask in main memory
Delete deletes a mask's definition from the database

Mask Name

A mask's name

attribute master attribute for mask (T_MASK)
type, entry string, entry required
max. no. of characters 20
selection tool no
multilingual field no

The masks's name identifies it uniquely. You'll want to use consistent naming conventions, to differentiate between lists and forms.

Attention! Any default masks created when the model is defined are required internally by DataView, and cannot therefore be modified. If you want to use a default mask as a template, you need to copy the mask record and save it under a different name.

Mask Title (multilingual)

A mask's title

attribute master attribute for mask (T_MASK)
type, entry string, entry optional
max. no. of characters 40
selection tool no
multilingual field yes

The masks's title appears on the left of its title bar.

Syntax:

[#Filename:]Text
If you only specify text, a default icon for the entity type appears next to the text, so long as one exists in the folder specified in DATAVIEW_CBMP. If no icon exists, a dummy icon is displayed.

#Filename: (without .bmp suffix) sets an icon for the mask, which must be in the folder specified in DATAVIEW_CBMP.

Note! Default masks automatically use the mask's name as title. You can modify this in a copy of the mask record, but not the original.

More information: -> Mask titles

Row

A mask's vertical position on the screen

attribute master attribute for mask (T_MASK)
type, entry Integer, entry required
max. no. of characters 5
selection tool no
multilingual field no


Mask

Entry:

0
DataView automatically positions the mask a few rows below the last active mask.

n not 0
DataView positions the mask n rows below the DataView toolbar. If the mask is used in a combined form, n determines its vertical offset from the header form's title bar.

More information: -> Position and size of masks


Mask component

Mask components are positioned like fields in the parent mask. If the mask is used only as a component, you should set the row = 0, so that you can define its position relative to the parent mask in the mask-field relation alone.

More information: -> Mask components

Column

A mask's horizontal position on the screen

attribute master attribute for mask (T_MASK)
type, entry Integer, entry required
max. no. of characters 5
selection tool no
multilingual field no


Mask

Entry:

0
DataView automatically positions the mask a few columns to the right of the last active mask.

n
DataView positions the mask n columns from the left edge of the desktop. If the mask is used in a combined form, n determines its horizontal offset from the header form's left edge.

More information: -> Position and size of masks


Mask component

Mask components are positioned like fields in the parent mask. If the mask is used only as a component, you should set the column = 0, so that you can define its position relative to the parent mask in the mask-field relation alone.

More information: -> Mask components

Length

Number of rows occupied by a mask

attribute master attribute for mask (T_MASK)
type, entry Integer, entry required
max. no. of characters 5
selection tool no
multilingual field no


Mask

You should try to set the length and width of masks so that all of its fields and records are visible. If this is not possible or desirable, you can set flags to cause scrollbars to appear automatically.


Masks on index cards

Using Autoresize (see below) for the mask, you can control the index card's behavior when the header form is resized.

Entry:

0/0, 0/n, n/0 (product length x width = 0)
Autoresize is on. The size of the index card (or index card group) changes to fit the header form. Lists on a index card are automatically resized, but not forms.

n/n
Autoresize is off. The size of the index card(s) and its masks remain unchanged.

More information: -> Appearance, size and behavior of index card groups

Width

Number of columns occupied by a mask

attribute master attribute for mask (T_MASK)
type, entry Integer, entry required
max. no. of characters 5
selection tool no
multilingual field no


Mask

You should try to set the length and width of masks so that all of its fields and records are visible. If this is not possible or desirable, you can set flags to cause scrollbars to appear automatically.


Masks on index cards

Using Autoresize (see below) for the mask, you can control the index card's behavior when the header form is resized.

Entry:

0/0, 0/n, n/0 (product length x width = 0)
Autoresize is on. The size of the index card (or index card group) changes to fit the header form. Lists on a index card are automatically resized, but not forms.

n/n*
Autoresize is off. The size of the index card(s) and its masks remain unchanged.

More information: -> Appearance, size and behavior of index card groups

Vert. Scroll

Flag for vertical scrollbars

attribute master attribute for mask (T_MASK)
type, entry logical, check button

Entry:

not set
deactivates vertical scrolling

set (default)
activates vertical scrolling

More information: -> Scrollbars

Horiz. Scroll

Flag for horizontal scrollbars

attribute master attribute for mask (T_MASK)
type, entry logical, check button

Entry:

not set
deactivates horizontal scrolling

set (default)
activates horizontal scrolling

More information: -> Scrollbars

Sig. Fields

Number of significant fields in a mask

attribute master attribute for mask (T_MASK)
type, entry Integer, entry optional
max. no. of characters 5
selection tool no
multilingual field no

Significant fields uniquely identify records when they appear in masks. You can only label a number of consecutive fields - starting with the first - as significant. The sequence in which they are defined is crucial.

More information: -> Significant fields

Max. Records

Maximum number of records in a mask

attribute master attribute for mask (T_MASK)
type, entry Integer, entry optional
max. no. of characters 5
selection tool no
multilingual field no

Limiting the number of records in a mask ensures that a poorly formulated query, for example, does not overflow local memory. You should not try to display more than 0 records in a mask.

If a query returns more than the given maximum records, DataView displays only that number of records, aborts the query and puts up an alert. The user can then either start a new more restrictive query or call up the remaining records via Record Scan.

Sel. Menu

Name of a Select menu (lists only)

attribute master attribute for mask (T_MASK)
type, entry string, entry optional
max. no. of characters 20
selection tool menu with all menu and button areas already created
multilingual field no
hyperlink opens the menu in an own form

The Select menu provides a contextual menu which is available whenever the user selects a record in the list (Select state). It should only contain functions appropriate to records (e.g. edit, copy, open a list of dependent elements...).

All the items of the Select menu are automatically available in the top menu bar's dynamic Edit menu as well, so long as the mask is active and in selection mode. This feature requires an Edit menu with the name TOP@MAS to be installed as a pull-down menu for the top menu bar.

More information: -> Mask menus

NoSel. Menu

Name of a NoSelect menu (forms and lists)

attribute master attribute for mask (T_MASK)
type, entry string, entry optional
max. no. of characters 20
selection tool menu with all menu and button areas already created
multilingual field no
hyperlink opens the menu in an own form

The NoSelect menu provides a contextual menu which is available in forms and lists when no element is selected (Widget state). It should only contain functions appropriate to the data as a whole (e.g. Search, Insert...). In forms, the NoSelect menu can also contain functions which act on the currently displayed record (e.g. edit, copy, open a list of dependent elements...), as the current record is considered a selection.

All the items of the NoSelect menu are automatically available in the top menu bar's dynamic Edit menu as well, so long as the mask is active and nothing is selected. This feature requires an Edit menu with the name TOP@MAS to be installed as a pull-down menu for the top menu bar.

More information: -> Mask menus

Edit Menu

Name of an Edit menu

attribute master attribute for mask (T_MASK)
type, entry string, entry optional
max. no. of characters 20
selection tool menu with all menu and button areas already created
multilingual field no
hyperlink opens the menu in an own form

The Edit menu provides a contextual menu which is available in forms and lists when they are in the Edit state.

It should contain appropriate functions for exiting the current edit mode (e.g. Close or Abort for Update mode, Fetch or Count for Query mode, etc.).

The availability of items in the Edit menu can be determined according to the current task.

All the items of the Edit menu are automatically available in the top menu bar's dynamic Edit menu as well, so long as the mask is active and nothing is selected. This feature requires an Edit menu with the name TOP@MAS to be installed as a pull-down menu for the top menu bar.

More information: -> Mask menus

Sel. Buttons

Name of a Select button area

attribute master attribute for mask (T_MASK)
type, entry string, entry optional
max. no. of characters 20
selection tool menu with all menu and button areas already created
multilingual field no
hyperlink opens button area in an own menu

A button area is an invisible object, the same size as its mask. The user sees only its child objects (pushbuttons and also, in forms, index cards). The child objects of the Select button area become active when the user selects at least one record in the mask (Select state).

Attention! If you define a Select button area for a list, you must also define a NoSelect button area.

More information: -> Pushbuttons in masks, -> Index card groups in forms

NoSel. Buttons

Name of a NoSelect button area

attribute master attribute for mask (T_MASK)
type, entry string, entry optional
max. no. of characters 20
selection tool menu with all menu and button areas already created
multilingual field no
hyperlink opens button area in an own form

A button area is an invisible object, the same size as its mask. The user sees only its child objects (pushbuttons and also, in forms, index cards). The child objects of the NoSelect button area are active when the user has made no selection in the mask (Widget state).

Attention! If you define a NoSelect button area for a list, you must also define a Select button area.

More information: -> Pushbuttons in masks, -> Index card groups in forms

Edit Buttons

Name of an Edit button area

attribute master attribute for mask (T_MASK)
type, entry string, entry optional
max. no. of characters 20
selection tool menu with all menu and button areas already created
multilingual field no
hyperlink opens button area in an own form

A button area is an invisible object, the same size as its mask. The user sees only its child objects (pushbuttons and also, in forms, index cards). The child objects of the Edit button area are active when the button area is in an Edit state.

You can make functions available as they become appropriate to the current task.

More information: -> Pushbuttons in masks, -> Index card groups in forms

Reconfigure

Updates the copy of the mask in main memory

A new or modified mask (its mask attributes, field assignments) must first be copied into main memory, before changes are visible in the user interface.


Mask component

When you create a mask component in local memory, DataView automatically updates all the masks in main memory to which the component belongs (even indirectly). Parent objects which are already in main memory need not be updated.


Delete

Deletes a mask's definition from the database.


Deleting from the database:

The mask can only be deleted from the database under these conditions:

Attention! The mask definition is immediately and permanently deleted from the database. It cannot be recovered from the trash.