Invantive Estate can be started on a demonstration database, which needs no Oracle database, no repository and no network. The database is the `Dummy` driver filled with invented data that is consistent with the data layer of the product, so that the screens, the tree and the translations can be shown, tried and photographed on any workstation. The data is read from files and is not meant for production.
## What It Holds
The demonstration database holds about 730 tables of the data layer of Invantive Estate, 175 of them with invented rows about projects, contracts, processes and users, and the definitions of 418 reporting views that the driver runs over those tables. The files are text files in the NDJSON format, one file per table, in the folder `DummyData` beside the executable of the product. Everything that the Oracle database works out in its own code, such as translated texts, labels, the personal calendar and the functions of the user, is worked out by the driver from those tables each time it is asked for, so a changed row is seen in the product at the next refresh.
The log on user is `SAMPLE`; the log on window asks for no user name and no password. [[Invantive Estate/Demo Tour|Demo Tour]] walks through the data.
## Obtaining a Demonstration Build
The folder `DummyData` is not part of a normal installation, because it weighs about 80 MB. A demonstration build of the product has it beside the executable. Without the folder the database is not offered and the product behaves as always.
## Logging On
Start the product and select "Estate demo (Dummy)" in the group "Various" of the log on window, then select "Connect". The database needs no entry in a [[Settings]] file: it is added while the folder `DummyData` exists, and it disappears with the folder. A database of the same name in a settings file takes precedence.
After logging on the tree and the screens show the demonstration data in the language of the user, in English or in Dutch.
## Changing Data
The tables are read-only. A statement or a screen that inserts, updates or deletes is refused, except on the few tables marked writable in their header. A change is kept in memory only; logging on again restores the content of the files. The connection attribute `dummy-data-writable` set to `true` makes every table whose header does not say otherwise writable for the same duration, on that database only.
## Dates Moved to Today
Some reports look back a few days or an hour, while the invented hours, visits and news are from years ago. The driver therefore moves those dates to the present when it reads them. The connection attribute `dummy-rebase` set to `0` keeps the dates of the files; a list of table names separated by commas moves the dates of those tables only.
## Using Other Folders
The connection attribute `dummy-data-folders` of the data container of a database names one or more folders with NDJSON files, separated by semicolons, for that database only, so two databases can read other folders side by side. Without the attribute the folder `DummyData` is used. The product accepts such a database as its own when its folders hold the tables. A table in a later folder replaces the table of the same name in an earlier one, which allows a small folder with a few changed rows to simulate how the data looks at a later moment. See [[Environment Variables/Folders|Folders]] for the other folders of the products.
The attributes are part of the connection string of the data container in the [[Settings]] file, in the same form as the demonstration database uses, here with two folders:
```text
dummy-data-folders="C:\Demo\DummyData;C:\Demo\Later";dummy-data-writable=false;dummy-rebase="1"
```
The demonstration database states its folder and the attributes `dummy-data-writable` and `dummy-rebase` in its connection string. It is offered while the folder `DummyData` exists. The settings are connection attributes only; no environment variable is read.
## Limits
- Columns that hold documents and pictures are empty.
- Actions of the product that run PL/SQL on Oracle, such as posting a financial transaction, answer as if no repository were installed.
- Reports over data that the demonstration database does not hold, such as cash flow projections, show no rows.
- The texts are translated into English and Dutch only. The product keeps downloaded translations for a number of hours in a file `translations.<language>.cache` beside the executable; deleting the file shows changed translations at once.