database
By the term database we mean the total of all data belonging to an application. The major part of our database will be stored by the C-ISAM method into a so called relational database. The most important idea behind such a relational database is to store one data-subject just one time within the total database. If this is the case, the database will also be called a normalized relational database.
Within a relational database one will place similar informations (eg. abaout articles, customers etc.) into so called databasetables. The data of one object (eg. one article) are combined into one datarecord. Within one datarecord we have fields of data. Each field has a name and some characteristics, including its kind, length, fraction, as well as some descriptions. The letter may be used as prompts within masks etc.. The summary of all field description within one databasetable is called its data-dictionary.
The programming of an application just uses the names of the fields, for the speed of data retrievel each databasetable includes some so called key's (keyfields) which are indexed for rapid data access. Such a key may be the article code, the customers-no. or an order-no.. The keys are also acting as the connection between the different databasetables. Eg. the article-code within a order position record points back into the article table. Some keys are designed to be unique (eg. article-code within the article table), other keys may be duplicatable (eg. the article-code within the order positions table).
microGlas-6 includes currently, depending on the scope of used modules (functions), between 30 and 80 such databasetables.
Some special kinds of information don't fit well into the paradigma of relational database, as there are eg. text, images and the pricematrixes for glass. These objects are stored in different formats but attached (by names) to the relational database. For special control data we use in addition so called associative arrays.