When working with Foxfire!, you may come across some terms that may not be familiar. Here’s a list of those terms.
Data Dictionary lies at the core of Foxfire!.
The Data Dictionary defines the different elements of your data that are used in creating Foxfire! Requests.
The Data Dictionary consists of Remote Data Source Information, Data Items, Relationships and Data item Groups.
Data Items are elements of information that can be included in a report. The Data Item may be a field from a table. It may be an expression. It could be a combination of two or more field values. It could also be defined as a UDF.
Data Item Groups
A Data Item group is a collection of Data Items that somehow are associated in the mind of the Designer. The association can be physical (for example, a group of Data Items fields that are located in the same table), or logical (for example, a set of Data Items that all relate to a particular business entity or activity). A Data item Group can contain Data Items from a specific table or from multiple tables. Each Data Item Group can be given a meaningful name to make it clear to the Designer what Data Items it contains. The Data Item Group has nothing to do with the physical relationships between Data Items. It is simply a way of narrowing the list of available Data Items so the Designer can more easily find and pick the items they want. Data Item Groups are maintained with the Data Item Group Editor
Note: By default Foxfire! will use the physical table name as the Data Item Group. This is usually not something your users will understand. For example, if you have two tables called INVHEAD and INVDET, this makes perfect sense to you as a developer, but your users will understand a Data Item Group called Invoices.
Request
A Request is the Foxfire! name for a report. We call them Requests because they are actually much more than simple reports.
A Request can be produced for a printer, a preview screen, an Excel Spreadsheet, a text file, a PDF file, a DBF table, an XML table or sent as an e-mail attachment.
Requests are stored as part of a Report Set. They are created using the Foxfire! Interactive Designer and are run or previewed from the Request Manager.
Report Set
A Report Set defines a Managed Reporting Environment.
Each Report Set contains a Data Dictionary, Relationships, Report Templates, Requests and user account information. The Report Set also contains a set of Permissions that define what the users can and cannot do. By managing these different elements of the reporting environment, the developer has a very fine degree of control over the user’s reporting experience.
Relationships
Relationships define how to relate one table to another.
For instance, in an Invoicing System, you would have a table of Invoice Headers and a separate table of Invoice Lines.
Each Invoice Header would have one or more Invoice Lines.
The Invoice Header table (the one side) would be the Parent table and the Invoice Lines table (the many side) would be the Child side. The field used to ‘relate’ the Invoice Header to the Invoice Line would be the Invoice Number.
A relationship defines how a Parent Table relates to a Child Table and specifies the expression that connects the two tables.
Remote Data Source
A Remote Data Source is a Data Source you access through an ODBC Driver.
Foxfire! can address FoxPro and Visual FoxPro tables directly, whether they are free tales or contained in a VFP Database container. When access data that is stored in SQL Server, Access or any other ODBC Data Source, you must tell Foxfire! how to access your Remote Data Source. You can manage the connections from inside Foxfire! or separately from Foxfire! If you manage the Remote Data Source through Foxfire! you must specify a connection string and, if necessary, a User ID and Password. The details of these connections will be dependent on your ODBC settings.