Home Evaluation Summary for programmers Product limitations Goals of Axisbase Quick start Installation Using the launchpad and opening databases Connecting to a sample database Using building blocks Planning Define the purpose Define the requirements Borrow existing work Determine the architecture Design the data model Design the process model Deploy and maintain the product
building blocksPerforming a mailmerge Bulk e-mailing
ProgrammingSingle-threaded progress indicator in c#
Database menu itemsImport XML Save Copy As Integrity Check Change Password
Database Properties windowOpening the database properties window Record types tab Display types tab Roles and Users tabs Sidebar tab Database ID/Links tab Counters tab
Building blocksBuilding blocks window Editing grids and cells Hyperlinks and nesting Data Subset window Data Outsource window List window Window window Report window Bulk Operation window Label Printer window Choosing a data source
Special topicsExpression syntax Browse records Storing building blocks within other building blocks Programming Using custom code in building blocks Using Axisbase as an embedded database Axis1.Util namespace reference Axis1.Data namespace reference (Fishnets) Axis1.Data namespace reference (other) Axis1.Forms namespace reference
Deploy and maintain the product
There are two main taks that are on-going tasks after you finish building a product: backups and documentation.
Keep backups and practice a data restoration plan. Don't put off this task until after you lose the data! Every computer that has ever been built has either (1) already crashed, burned, been destroyed, or been stolen; or (2) will crash, burn, be destroyed, or be stolen. If you choose to ignore this absolute certainty, your data will be lost when that day comes.
The basic idea: Backups are made automatically by the Axisbase server. Copy these files to a different computer in a different building, or to a CD or other removable media, and then carry the media to a different building. Keep at least two different backups at any one time in addition to the file that you may be overwriting. Never bring the most recent backup back onto the premesis where the live database is located.
Backups often seem complicated, and many people are never quite sure if they are keeping backups the right way. Ask yourself this question: If the computer where your main data is kept is stolen tonight, and all the furniture and files in that building are destroyed, could you be up and running on a new computer by noon tomorrow? If you use an on-line backup service, this may involve keeping the account information for that service off site.
The expanding time-series method: Besides the need to restore a completely lost database, there is another reason to keep backups. That is, to see what data were in your database at a point in time in the past. For example, suppose a user accidentally deleted 300 records on a Monday, and you didn't discover the loss until Thursday. If you only keep two daily backups, and you overwrite the older backup each night, then you would only have Tuesday and Wednesday nights' backups when you discover the problem, and it would be too late to restore from Monday's backup. That doesn't mean you have to keep every daily backup forever, but you should keep some of them indefinitely. For example: keep backups for each day of the past week, then once per week for the last few months, then once per month for the past year, then quarterly. As you go back in time, the time between backups that you keep can expand; thus, the name "expanding time series method".
The Axisbase server automatically uses the expanding time series method. You specify the backup path, and it creates a daily backup, then erases some older backups in order to keep an expanding time series of backups.
Corruption: A database can become corrupt because of a software bug or hardware failure, but the damange caused by the corruption may not be noticed for some time. This is another reason why the expanding time-series method is valuable.
Backing up the configuration database is also important: This is not turned on by default. To include the configuration database in backups, create a new record in the served databases with a blank file path, Axis ID = "AXIS", and check the Backup checkbox.
When you need to add features, you will want a current description of the data model and building blocks, and any external code, so that you can repeat a design process for the additional work. Most software projects have little or no useful documentation and suffer because of it.