The data dictionary populated by Stonefield Query Studio is stored in a DBF file (along with accompanying CDX and FPT files) called Repmeta. All types of data objects—database, tables, fields, joins, data groups, and data dictionary user groups—are stored in this table. To distinguish data object types, RECTYPE, a single-character column, indicates the type of a record. The values are:
D: database
C: table ("C" stands for cursor)
F: field
R: join ("R" stands for relation)
G: data group
U: user group
The ID column contains a unique ID for each record. The contents of the rest of the columns depend on the record type.
Database Records
Many of the columns for a database record contain information about the data source used for the metadata discovery process (when you used the Add Database function). If your project uses only a single data source and you don't have a GetDataSources script for the database, this information is used by Stonefield Query to access the data source.
Some columns pertain to ODBC or ADO/OLE DB databases only and are empty for Visual FoxPro databases; those columns are indicated with "(ODBC only)" or "(ADO only)" below.
Column | Contents |
---|---|
RECTYPE | "D" |
OBJECTNAME | The name of the database record (not necessarily the name of the physical database; this is the name shown in the TreeView for the database). |
ALIAS | The data source name (DSN) used for the metadata discovery process (ODBC only). |
ALIASCAP | "ODBC" for an ODBC database, "VFP" for a Visual FoxPro database, or "ADO" for an ADO/OLE DB database. |
CAPTION | The descriptive name of the data source (this comes from the caption you entered in the Add Database dialog). |
HEADING | The name of the data source; this is usually the same as OBJECTNAME. |
FIELDEXPR | The name of the physical database accessed by the data source. In the case of a Visual FoxPro database, this includes the path for the database container or the free table directory. |
FORMAT | The name of the server (ODBC only). |
INPUTMASK | The name of the ODBC driver (ODBC only) or the OLE DB connection string (ADO only), if applicable. |
CLASS | Additional ODBC connection information (ODBC only). |
LIBRARY | The database specifier required by the ODBC driver, such as "dbq" or "database" (ODBC only). |
REPORTABLE | True if this is the main database. |
PATH | Name delimiters to use for table and field names. |
ALIAS1 | The user ID used to access the data source (ODBC only). |
ALIAS2 | The password, stored as an encrypted string (ODBC only). |
USER | First line: "Y" or "N" depending on whether Add all tables to data dictionary is turned on or not. Second line: "Y" or "N" depending on whether Include views is turned on or not. Third line (VFP only): the path for DBCX metadata. Fourth line (VFP only) or third line (other types): "Y" or "N" depending on whether Prompt for subtables is turned on or not. |
COMMENTS | The comment for the database. | UPDATED | The date the record was updated. |
Table Records
Column | Contents |
---|---|
RECTYPE | "C" |
DATABASE | The name of the database (matching OBJECTNAME for a database record) the table belongs to. |
DATAGROUP | A comma-delimited list of the ID values of the data groups the table belongs to. |
OBJECTNAME | The name of the table. If a table name has illegal SQL characters (such as spaces) or matches SQL keywords, it's surrounded with the delimiter you specified when you added the database in the data dictionary (for example, [Order Details]). |
ALIAS | The same contents as OBJECTNAME. |
CAPTION | The descriptive name of the table. |
HEADING | The main table name if this is a subtable. |
OUTPUTEXPR | The subtable filter expression if this is a subtable. |
FIELDEXPR | The schema or owner of the table (ODBC and ADO only). |
REPORTABLE | True if the user can query on any of the fields in this table. |
PATH | The path for the table (Visual FoxPro free tables only). |
USER | User-defined column; not used by Stonefield Query but can be by your scripts if desired. |
COMMENTS | The comment for the table. |
ROLES | A comma-delimited list of roles that can access the table (blank if everyone can access it). |
UPDATED | The date the record was updated. |
VERSION | The version number for this table if it doesn't appear in all versions of the target database. Use a "+" suffix if this table appears in the specified version and all later versions (that is, the table was added in that version) or a "-" suffix if the table appears in the specified version and all previous versions (that is, it was removed in the next version). For example, "5.3+" indicates the table is available starting in version 5.3 while "5.3-" indicates it was removed in version 5.4. |
Field Records
Field records have some redundant information with table records. For example, the DATABASE column contains the same information for a field record as the table record for the table the field belongs to, and the field's ALIASCAP column matches the table's CAPTION value. This is done for performance reasons. Stonefield Query Studio automatically fills in the appropriate information from the table record into the records of every field for that table.
Some columns pertain to Visual FoxPro databases only and are empty for ODBC or ADO databases; those columns are indicated with "(VFP only)" below.
See Field Properties for a list of valid values or further description of these columns.
Column | Contents |
---|---|
RECTYPE | "F" |
DATABASE | The name of the database (matching OBJECTNAME for a database record) the field belongs to. |
OBJECTNAME | The name of the field, prefixed with the name of the table (for example, CUSTOMERS.COMPANY). If either the table name or the field name has illegal SQL characters (such as spaces) or matches SQL keywords, the table name or field name are surrounded with the delimiter you specified when you added the database in the data dictionary (for example, Orders.[Ship Date], [Order Details].Quantity, or [Order Details].[Unit Price]). |
ALIAS | The name of the table (matching OBJECTNAME for a table record) the field belongs to. |
ALIASCAP | The descriptive name of the table (matching CAPTION for a table record). |
CAPTION | The descriptive name of the field. |
HEADING | The default column heading in a report for the field. |
FIELDEXPR | The expression used to retrieve the field from the database (usually the same as OBJECTNAME but contains the Output Expression property if the Stonefield Query Expression setting is turned off on the Calc page for a calculated field). |
FIELDTYPE | The data type of the field. |
FIELDLEN | The length of the field, including decimals and one place for the decimal character if there are any decimals. |
FIELDDEC | The number of places after the decimal for numeric fields. |
FORMAT | The format property for the field. |
INPUTMASK | The picture for the field. |
KEY | The key expression if this field appears in an index. Stonefield Query uses this to determine if the query can be case-insensitive by checking for UPPER() in the index expression (VFP only) |
CLASS | The class used for value entry in the Filter dialog. This contains "SFQEnumComboBox" for enumerated fields, "SFQForeignKeyComboBox" for fields with Display Field From Related Table turned on, and is empty for all other fields. |
LIBRARY | The library containing the class specified in the CLASS column. This contains "SFQFramework.vcx" for enumerated fields or fields with Display Field From Related Table turned on, and is empty for all other fields. |
GETMETHOD | Reserved for future use. |
SETMETHOD | Reserved for future use. |
VALUESMETH | The expression used to display unique values for the field when the Values button in the Filter Condition dialog or the Data Selection step of the Report Wizard is chosen. |
CALCULATED | True if this is a calculated field. If the Stonefield Query Expression property of a calculated field is turned off, this contains False. |
CALCFIELDS | A comma-delimited list of the fields involved in OUTPUTEXPR. This is empty if the Stonefield Query Expression setting is turned off on the Calc page. |
OUTPUTEXPR | The formula used to display the value in the field to the user, unless the Stonefield Query Expression setting is turned off for a calculated field, in which case this is blank. |
OUTPUTTYPE | The data type of the output expression (empty if the same as FIELDTYPE). |
OUTPUTLEN | The length of the result of the output expression, including decimals and one place for the decimal character if there are any decimals.(0 if the same as FIELDLEN). |
EXACT | If this column contains True, Stonefield Query add blanks to the filter comparison value when the "equals" operator is used so the comparison is exact. |
FILTERABLE | True if the user can filter on this field. |
REPORTABLE | True if the user can query on the field. |
SORTABLE | True if the user can sort on the field. |
ALLOWVALUE | True if the Values button is enabled for this field. |
UPPER | If this column is True, the data in the field is always stored in upper-case and there’s no index on UPPER(FIELD). This helps Stonefield Query to create an optimized query by not applying UPPER() to the field but only upper-casing the values the user enters to compare to the field (VFP only). |
PATH | The path for the table (Visual FoxPro free tables only). |
ALIAS1 | User-defined column (stored in the Other property of a field object). |
ALIAS2 | The default summary for the field. |
USER | User-defined column (stored in the User property of a field object); this is only used by Stonefield Query if the field is defined as an enumerated field. |
COMMENTS | The comment for the field. |
ROLES | A comma-delimited list of roles that can access the field (blank if everyone can access it). |
UPDATED | The date the record was updated. |
VERSION | The version number for this field if it doesn't appear in all versions of the target database. Use a "+" suffix if this field appears in the specified version and all later versions (that is, the field was added in that version) or a "-" suffix if the field appears in the specified version and all previous versions (that is, it was removed in the next version). For example, "5.3+" indicates the field is available starting in version 5.3 while "5.3-" indicates it was removed in version 5.4. |
Relation Records
See Relation Properties for a list of valid values or further description of these columns.
Column | Contents |
---|---|
RECTYPE | "R" |
DATABASE | The name of the database (matching OBJECTNAME for a database record) for the table specified in ALIAS1. |
OBJECTNAME | The name of the relation, which is the name of the parent table, a comma, and the name of the child table (for example, CUSTOMERS,ORDERS). If either of the table names has illegal SQL characters (such as spaces) or matches SQL keywords, the table name is surrounded with the delimiter you specified when you added the database in the data dictionary (for example, ORDERS,[ORDER DETAILS]). |
CAPTION | The name of the database (matching OBJECTNAME for a database record) for the table specified in ALIAS2. |
ALIAS1 | The name of the child table. The table name is delimited as necessary. |
ALIAS2 | The name of the parent table. The table name is delimited as necessary. |
EXPR1 | The aliased name of the field in the child table for the join (empty if RELEXPR is filled in). |
EXPR2 | The aliased name of the field in the parent table for the join (empty if RELEXPR is filled in). |
RELEXPR | The join expression if a complex join is used. |
OUTERJOIN | 0 for an inner join, 1 for a left outer join, 2 for a right outer join, or 3 for a full join. |
JOINWEIGHT | The join weight value. |
UPDATED | The date the record was updated. |
COMMENTS | The comment for the relation. |
VERSION | The version number for this relation if it doesn't appear in all versions of the target database. Use a "+" suffix if this relation appears in the specified version and all later versions (that is, the relation was added in that version) or a "-" suffix if the relation appears in the specified version and all previous versions (that is, it was removed in the next version). For example, "5.3+" indicates the relation is available starting in version 5.3 while "5.3-" indicates it was removed in version 5.4. |
Data Group and User Group Records
Column | Contents |
---|---|
RECTYPE | "G" for data groups and "U" for user groups. |
OBJECTNAME | The data group or user group name. |
UPDATED | The date the record was updated. |
© Stonefield Software Inc., 2023 • Updated: 03/10/20
Comment or report problem with topic