A virtual table is one you define in the data dictionary and doesn't physically exist. When the user uses a virtual table in a report, script code you create is used to retrieve the appropriate data. Virtual tables, shown as in the TreeView, are typically used to hide the complexity of an application's data structures. For example, if you have individual invoices and credit notes tables, you may wish to create a virtual table that combines records from both tables. That would make reporting much easier for the user.
To create a new table, click the Create button () when a table node is selected in the TreeView; alternatively, you can click the drop-down arrow beside the Create button and choose Create Table from the menu, or choose Create Table from the Objects or shortcut menus. If you want to create a virtual table with the same fields as an existing table, choose the Create Virtual Table from Table function. You are prompted for the name for the new virtual table and whether you want to copy the relations for the existing table to the virtual table.
Enter the name and caption for the table, indicate whether it's reportable or not (it doesn't make much sense to create a virtual table that's not reportable), fill in the custom properties as necessary, and create a data access script by clicking the Create data access script link.