Throughout this manual you will find the following symbol *. If you are reading this in the html Reader clicking on this item will take you immediately to the index.
DATAdesign is actually a special kind of database because it is 'free-form'. This means that the lengths of the fields are not limited, and that fields can be added and deleted at any moment you want to.
The main advantage for this is that you don't have to know in every detail how the data in your database will look like when you create it.
For instance, should you create a database with four lines for the address and you come across someone who needs five, what can you do?
These kind of problems will never occur in DATAdesign. On the other hand if you suddenly realise that you also have to keep the VAT number of some customers, you can just create a new field which contains just that.
Of course the fact that DATAdesign is a free-form database also has some more
negative implications. It is true that databases where all fields have a
fixed length are faster to access. You always know where your record is, and if
you change the record, it can never grow larger than it was, because all records
are equal in length.
A fixed-length database can be shorter if all fields are almost full but this is, however,
not very likely. In General a free form DATAbase will be much smaller and, in most cases
a lot more practical.
Can you imagine what a database of letters would do in a fixed-length database or, even
worse, a file which contains chapters of a book.
This is actually the fourth incarnation of DATAdesign. It is a program which has gone through two (r)evolutions.
It all started with DATAdesign v1.00. This version of the program was not much more then a simple cardfile database. Of course it already used the Pointer Environment , but that says it all.
After almost a year, and mostly because Wolfgang Lenerz asked for it, we split the original program in two parts: the main program and the engine. This had the main advantage that the DATAdesign database management system (dbms) was accessible by everyone, and there was finally an alternative to Archive.
This, however, had two problems, and we had to rewrite big parts of the main program. Firstly we added some extra features like filter, mark, duplicate and shortcuts to access some routines. Secondly, because of this, we had to call all the routines in a different way. We didn't write it properly though, so DATAdesign v2 relied heavily on the internal structures of the engine.
We supplied the engine (v1) in two parts; the engine itself, and the basic interface. The engine lacked some commands to access some of the embedded data, and the basic interface was quite stupid!
You had,for instance, to explicitly type in all the parameters, and the parameters were quite type sensitive (cannot pass an integer as a float).
About seven months later we released the second version of the basic interface. It was a major improvement because the commands were more readable and because you could omit the parameters you didn't need. The interface was also more friendly about accepting parameters of different types, but it had problems with array elements. We also made sure that the files were accessed more easily, with the disadvantage of having more problems when accessing several files simultaneously in a program.
16 months after that we released DATAdesign v3. It was now also sold in two parts, as not all DATAdesign users need the programming interface. This version had the basic interface integrated with the engine, and the engine was then made into v3, to ensure that the engine and main program at least had the same figure in front of the dot in the version number.
The DATAdesign main program was then finally a program which accessed the engine properly, without accessing the internal structures, and we redesigned the window. Actually this was (another) complete rewrite of the program and we tried, in the process, to make it better then it ever was.
The major difference was actually in the engine. The basic interface was perfected and became very flexible with regard to the parameters. It also had an improved method of error trapping.
This version was able to access several files in the same program with a lot more ease and this, together with unique numbers for fields and records, created a powerful relational database for the programmer.
More noticeable to the average user was the introduction of disk-based files and indexes. The first allows for large files to be accessed; this should prove very handy for all those people with large databases like doctors, lawyers and people who compile databases. The latter provides a fast search in a program and better handling of sorted and/or filtered files.
The engine now also allows types to be given to a field, thus allowing numeric values and raw data like screens or fonts or anything you want.
As a true Pointer Environment program, DATAdesign contains standard config blocks to enable the user to change aspects of the program to suit the system of style of the individual.
These blocks can be be configured from two different programs.
'Procon' is the ProWesS configuration program that is supplied with this package :
'Menuconfig', from Jochen Merz Software, is the standard P.E. configuration program supplied
with all programs written or sold by Jochen Merz.
The current version of DATAdesign supports level 2 Config Blocks which allows
the user to store all of the changes that have been made to the program in a
separate file called MenuConf_inf on the Program device. This information can then be used
by Menuconfig to initiate the same settings in another version of the program when,
for instance, an upgrade becomes available. This can be done in both cases by loading the new
version into 'Procon' or 'Menuconfig' and indicating the 'Update' item. The ProWesS program
does require that the user load the Menuconfig_inf file before use.
Further information on the 'Procon' Program can be obtained from the ProWesS documentation. If
you have copied the files in the '_pws_doc_' directory into the same directory as these files
you can read the information by clicking on the 'Procon' item here.
Further information on the Menuconfig program
can be obtained from Jochen Merz. The Standard QJump Config Program,which is public domain
cannot be used to configure level two config blocks. These blocks can be easily recognised by the
number <2> that is after the name of the block when the 'Menuconfig' configuration program is run.
You can configure the following items:
Option Name. Choice Action Get saved window position. Yes/No. If you answer yes to this item the the window size and position will be restored when you next load the file. Initial Size User Defined/ If you choose 'User Defined' then the values given Minimal. in the next two items become the size of the initial window. X-Size of Window Value. Y-Size of Window Value. Origin of main Window User Definer/ If you choose 'User defined' then the values given in next two items become the X and Y points of origin of the top left corner of the DATAdesign. X-Origin of Window Value. Y-Origin of Window Value. Main Colourways Colourways Sets the Colours of the main program window. Sub Colourways Colourways Sets the Colours of the sub menu windows. Button Colourways Colourways Sets the Colours of the sleeping button. Help File File Name Choose the filename and directory for the DATAdesign help file. Print Device SER / PAR Sets the printer device. Name of Directory Directory Select Sets the directory that will be presented Window. from the 'Load File' command. Toolbar Yes/No Selects whether theIcon Bar will be visible or not. Flash(0=Static Sprite) Value Selects whether the Sprite will flash or not when the file has been changed but not saved. ProWesS reader for help file Yes/No Selects if the ProWesS reader will be called for the help file.
These statistics are actually the statistics for the DATAdesign engine, as the main program actually does pose an additional restriction to the size of the visible part of a record (max 8k).