Previous Topic

Next Topic

Vision System Catalogs

Vision requires the following catalogs. These catalogs comprise the APPLICATION_DEVELOPMENT_3 module.

Previous Topic

Next Topic

ii_framevars Catalog

The ii_framevars catalog describes the local variables and hidden table fields of a frame:

Column Name

Data Type

Description

object_id

integer

Object ID of the frame.

fr_seq

smallint

Sequence number (for ordering).

var_field

varchar(32)

Field name.

var_column

varchar(32)

Column name (if field is a table field).

var_datatype

varchar(105)

Data type of the field.

var_comment

varchar(60)

Comment for the variable.

Previous Topic

Next Topic

ii_menuargs Catalog

The ii_menuargs catalog describes the arguments to be passed to a called frame for a given menu choice:

Column Name

Data Type

Description

object_id

integer

Object ID of frame.

mu_text

varchar(32)

Menu item text.

mu_seq

smallint

Sequence number beginning at 0 (for argument ordering).

mu_field

varchar(32)

Field name in called frame to assign value to. If field name is of the form X.Y, this contains the X portion only.

mu_column

varchar(32)

Portion of field name in called frame to assign value to. Only used when field name is of form X.Y, in which case this contains the Y portion.

mu_expr

varchar(240)

4GL expression (field, constant, byref(), etc.) in the parent frame to assign to field in the called frame.

Previous Topic

Next Topic

ii_vqjoins Catalog

The ii_vqjoins catalog describes the joins involved in a visual query:

Column Name

Data Type

Description

object_id

integer

Object ID of the frame.

vq_seq

smallint

Sequence number (for ordering).

join_type

smallint

Type of join specified by this row.
0 = Master/Detail join.
1 = Master/Lookup join.
2 = Detail/Lookup join.

join_tab1

smallint

Index to table 1 of the join. Relative table number in visual query beginning with 0.

join_tab2

smallint

Index to table 2 of the join. Relative table number in visual query beginning with 0. (table 2 is always below table 1 in visual query).

join_col1

smallint

Join column for table 1. Index into array of columns for table 1. (Same as ii_vqtabcols.vq_seq).

join_col2

smallint

Join column for table 2. Index into array of columns for table 2. (Same as ii_vqtabcols.vq_seq).

Previous Topic

Next Topic

ii_vqtabcols Catalog

The ii_vqtabcols catalog describes the columns of the tables involved in a visual query:

Column Name

Data Type

Description

object_id

integer

Object ID of the frame.

vq_seq

smallint

Column sequence number (for ordering).

tvq_seq

smallint

Sequence number of table in visual query from ii_vqtables.

col_name

varchar(32)

Column name.

ref_name

varchar(32)

Name used on the form for field containing data.

adf_type

smallint

Type information for column. See description of iicolumns. column_ingdatatype for details.

adf_length

integer

Column size in bytes.

adf_scale

integer

Currently not used.

col_flags

integer

This column contains multiple pieces of information about the column in a bitmap format. The following values are present (expressed in Hex):
1 = Column is to be used on form/report.
2 = Column is joined to a detail table and must be displayed.
4 = Column is joined to a lookup table and must be displayed.
8 = Column is a subordinate join field; therefore it cannot be displayed.

0x10 = Column is sequenced (generate new surrogate key value for INSERT statements).
0x20 = Column is descending (for sort).
0x40 = Column is part of the table's unique key.
0x100 = Set if column allows defaults.

col_sortorder

smallint

Sort order for this column. Set to 0 if not part of sort sequence. For lookup tables, this gives the order of the column in the lookup screen.

col_info

varchar(240)

Information entered by developer for this column in visual query. For Browse & Update frames, this is a query restriction and is added to the WHERE clause of the SELECT statement. For Append frames, this gives default value information and is either used in 4gl assignment statements for a displayed column, or in the INSERT statement for a not-displayed column.

Previous Topic

Next Topic

ii_vqtables Catalog

The ii_vqtables catalog describes the tables involved in a visual query:

Column Name

Data Type

Description

object_id

integer

Object ID of the frame.

vq_seq

smallint

Order of table in visual query.

vq_mode

smallint

This column contains multiple pieces of information about the frame as a whole, in a bitmap format (although note that the first 4 entries below are mutually exclusive; only one of them can appear). Can contain the following values (in Hex):
0 = Frame has no tables (menu frame).
1 = Master/Detail frame.
2 = Master only in a table field.
3 = Master only in simple fields.

0x10 = If set, the Qualification Processing frame behavior is Disabled (can only be set for Browse & Update frames)
0x20 = If set, the Next Master Menuitem frame behavior is Disabled (can only be set for Browse & Update frames)
0x40 = If set, the"Hold Locks on Displayed Data frame behavior is set to Yes (can only be set for Update frames).

tab_name

varchar(32)

Table name.

tab_owner

varchar(32)

Table owner.

tab_section

smallint

Visual query section table is in.
0 = table is in master section.
1 = table is in detail section.

tab_usage

smallint

How this table is used in the visual query.
0 = Append table.
1 = Update table.
2 = Browse table.
3 = Lookup table.

tab_flags

integer

Bitmap flag that indicates the frame behaviors in the visual query. Valid values (in Hex):
0x1 = For lookup table: lookup requires a qualification screen. For update table: insertions are allowed into the table field (only relevant to the detail table, and to masters in table field)
0x2 = OK to Delete data in this table.
0x4 = If set: update of join field cascades to detail; if clear: update of join field not allowed if details exist.
0x8 = If set: delete of master cascades to detail; if clear: delete of master not allowed if details exist.
0x10 = Table does not have a unique key.
0x20 = DBMS handles referential integrity on details when join field is changed. Generated code updates master table only.
0x40 = DBMS handles referential integrity on details when master is deleted.

Previous Topic

Next Topic

Additional Vision Catalog Information

The Application Flow Diagram and Escape Code provide additional Vision Catalog information.

Vision's Application Flow Diagram is built from menu item information in the ii_abfdependencies catalog. See ii_abfdependencies Catalog.

Frame Escape Code is stored in the ii_encodings catalog. See ii_encodings Catalog.

All escape code for a frame is combined into one (possibly resequenced) entry in iiencodings. Each piece of escape code in the entry is preceded by a type code. For example:

1 = form-start
2 = form-end
3 = query-start
4 = query-new-date
5 = query-end
6 = append-start
7 = append-end
8 = update-start
9 = update-end
10 = delete-start
11 = delete-end
12 = menu-start
13 = menu-end
14 = field-entry
15 = field-change
16 = field-exit
17 = user-menuitem


© 2007 Ingres Corporation. All rights reserved.