Was this helpful?
ABF System Catalogs
The extended system catalogs that are required by the ABF system are as follows:
ii_abfclasses
ii_abfdependencies
ii_abfobjects
ii_sequence_values
ii_abfclasses Catalog
The ii_abfclasses catalog contains information on the attributes of ABF record types. Name, owner, and class information is stored in ii_objects; information about the record types is stored in ii_abfobjects:
Column Name
Data Type
Description
appl_id
integer
Object ID of the ABF application that contains this object.
class_id
integer
Object ID of the record type containing the attributes.
catt_id
integer
Object ID in the ii_objects catalog.
class_order
smallint
Unused.
adf_type
integer
Integer code representing the type of the attribute (user frames, procedures). Valid values are listed below; NULLable data types are represented as the negative of the listed value:
0 none
3 date
5 money
30 integer
31 floating point
37 text
40 string
type_name
varchar(32)
Description of adf_type.
adf_length
integer
Length of return type.
adf_scale
integer
Scale factor of return type.
ii_abfdependencies Catalog
The ii_abfdependencies table describes how the objects listed in the ii_abfobjects table depend on each other, and on other database objects such as reports. To get a list of application dependencies, you must join this table with ii_objects over the object_id column. For an example of joining ii_abfdependencies with ii_objects, see Sample Queries for the Extended System Catalogs for SQL.
The ii_abfdependencies catalog is structured as btree, keyed on the abfdef_applid and object_id columns:
Column Name
Data Type
Description
object_id
integer
Object ID of an ABF application object that is dependent on another object. Other information about this object (such as name, owner and object class) is stored in the ii_objects and ii_abfobjects catalogs.
abfdef_applid
integer
Object ID of the ABF application that contains this object.
abfdef_name
varchar(32)
Name of depended-upon object. If the row indicates a frame or procedure's dependence on an ii_encodings entry, the name is fid plus the object ID of the ii_encodings entry. If the row only exists to avoid an outer join problem between this table ii_abfobjects and ii_objects, the name is DUMMY.
abfdef_owner
varchar(32)
Catalog updater. Present for naming consistency across user interface catalogs, not currently important for correct ABF operation.
object_class
integer
Object manager class of depended upon object.
abfdef_deptype
integer
Type of dependency:
3502 Dependent on a database object.
3503 Call with no use of return code.
3504 Call with return code.
3505 Menu dependency.
3506 Dependency on a global variable.
3507 Dependency on a record type.
3508 Dependency on table form [type of table] declaration.
3509 Dependency on form [type of form] declaration.
3510 Dependency on form [type of table field] declaration.
abf_linkname
varchar(32)
Vision Menu item text for menu dependency.
abf_deporder
integer
Vision Order of menu dependency.
ii_abfobjects Catalog
The ii_abfobjects catalog contains ABF-specific information on ABF objects. Name, owner, and class information on each object is contained in the ii_objects catalog, and is obtained by joining ii_abfobjects with ii_objects over the ID column. For an example of joining ii_abfobjects with ii_objects, see Sample Queries for the Extended System Catalogs for SQL. The ABF application is also considered an object, and corresponds to a row in which applid=object_id.
The ii_abfobjects catalog is structured as compressed btree unique on the applid and object_id columns:
Column Name
Data Type
Description
applid
integer
Object ID of the ABF application that contains this object.
object_id
integer
Unique identifier (object ID) for identifying this object in the ii_objects catalog. Other information about this object (such as name, owner, and object class) is stored in the ii_objects catalog.
abf_source
varchar
(180)
Source file name (without path) for objects with source files; source path for the application.
abf_symbol
varchar(32)
Linker symbol corresponding to object, for objects that are compiled and linked (compiled forms, user frames, procedures).
retadf_type
smallint
Integer code (ADT type) for return type of objects that have return types (user frames, procedures). Possible values are listed below with NULLable data types being the negative of the listed value:
0 none
3 date
5 money
30 integer
31 floating point
37 text
40 string
rettype
varchar(32)
A textual description of retadf_type.
retlength
integer
Length of return type.
retscale
integer
Scale factor of return type.
abf_version
smallint
Release number for latest update of object. Contains 0 for release 5.
abf_flags
integer
32-bit flag variable; the flags describe the state of the component.
abf_arg1
varchar(48)
Object specific (field 1):
applications: Contains the executable name.
report or QBF frames: Command line flags (if specified).
procedures: The host language (descriptive string only, derived from fill extension).
constants: The language of the constant (for example, English or French).
abf_arg2
varchar(48)
Object specific (field 2). If object is:
An application: this field contains its default starting frame.
Report-writer: this field contains the output destination (file)
QBF frames: this field contains the joindef/table flag.
abf_arg3
varchar(48)
Object-specific field 3. For applications: The link option file.
abf_arg4
varchar(48)
Object-specific field 4. For applications: specifies the query language (QUEL or SQL).
For 3GL or 4GL frame: contains the date of the last unsuccessful compile.
abf_arg5
varchar(48)
Object-specific field 5. For applications: Contains the role under which the application runs.
For Vision frames: Contains the date and time the form was generated.
abf_arg6
varchar(48)
Object-specific field 6. For Vision frames: Contains the date and time the code was generated.
ii_sequence_values Catalog
The ii_sequence_values catalog is used by the 4GL sequence_value function to generate a series of increasing values (for example, in an application that automatically assigns the next invoice number).
The format of ii_sequence_values is as follows:
Column Name
Data Type
Description
sequence_owner
varchar(32)
The owner of the table that receives the sequence value.
sequence_table
varchar(32)
The table that receives the sequence value.
sequence_column
varchar(32)
The column that receives the sequence value.
sequence_value
integer
The last value generated by the sequence_value function.
Last modified date: 11/28/2023