The Components of Application Development

In DataView you create objects and install methods which users can use to manage data in a database. You define the structure of the application in the data model. The required objects are abstract model objects which you map in the form of database tables. The tables contain application-specific data. On the user interface you display these data in masks. With the help of interaction objects, such as menus, buttons, or key functions you control the dialog flow of the application and give the users the possibility to manage the application-specific data in the masks. You guarantee the security of the user data with the help of objects and functions of the user- and privilege-management.

An application is developed step-by-step. The basic idea is to create the user interface as early as possible after having created the data model and then refine it in the development process. Thus you can include the users into the development process very early, you can check acceptance and you can react on changing requirements (Rapid Prototyping).

In the following section the components of the application development are described and the most important tools provided by DataView are named.


Step 1 - Creating the Data Model (Logical Model Definition)

You create the entity relationship model for your application by defining model objects in the Entity Data form and in the Link Data form. Model objects are entities, entity types, relations and links. These objects are suitable to represent real-life facts, such as items, suppliers, customers, projects, processors, and their interrelations. You can successively extend and refine the data model during application development by modifying existing model objects. Detailed information on that can be found in the chapter -> Creating Models.


Step 2 - Create Tables and the Database (Physical Model Definition)

For the existing model objects you physically create the corresponding tables in the database (with the exception of links). You define which columns or fields the table will contain and define table and field properties, such as table format, field type, field formats, indexing, multilinguality. The table and field definition is done corresponding to the creation of model objects in the Entity Data form. All existing tables can be managed in the Table Data list, all table fields in the Field Data form. Detailed information about that can be found in the chapter -> Creating Models.


Step 3 - Creating and Designing Masks (Objects of the User Interface)

You create default masks (lists and forms) for the model objects. They display the application data in the database tables in columns or fields. The masks provide a first view on the data model and allow working with test data using automatically provided standard functions. Masks are created corresponding to model objects in the Entity Data form. Detailed information on that can be found in the chapter -> Creating Models.

All masks are managed and designed in the Mask Data form, the fields which are displayed in the masks are managed and designed in the Field Data form. You define which columns/fields of the database tables are to be displayed in the masks and you define mask or field properties, such as size of masks, context menus, field positions, field titles, field defaults. Detailed information on that can be found in the chapter -> Masks and Fields.


Step 4 - Creating Interaction Objects (Objects of the User Interface)

You create interaction objects to allow users to navigate in the application and to manage the application data displayed in the masks. Interaction objects are menus with items, button areas with buttons, key functions (events) and messages. For entering the application you create the top menu with pull down menus and icon bars. You create context menus, push buttons, radio buttons, index card systems, and events to edit data in the masks. For situation-related user information you create messages. Menus and buttons are both created in the Menu Data and Item Data forms. Events are created in the Event Data list, messages in the Messages Data list. Detailed information on that can be found in the chapters -> Menus and Items, -> Button Areas and Buttons, -> Events, -> Messages.


Step 5 - Call Userexits (Dialog Flow)

Function calls in the application are installed with the help of C-userexits. Userexits are predefined program components used for instance to call masks, to call search or edit functions or to check field entries. Userexits are called at object triggers. All interaction objects on the user interface have such triggers. DataView provides important program functions in the standard userexits library. You use it to call frequently used functions without having to program the functionality again and again. Application-specific userexit functions can be individually programmed, called at triggers and provided with parameters there. Detailed information on that can be found in the chapter -> Triggers and Userexits.


Step 6 - Creating Users, Groups and Privileges (Data Security)

If several users work with the application, you must protect data and program functions from illegal access. To do so you create users, groups and profiles, grant access privileges, manager privileges, and passwords. These objects are created in the User Data, Group Data, and Profile Data forms. Detailed information on that can be found in the chapter -> Users, Groups and Privileges.


Step 7 - Transfer Application to Target System (Porting)

All object-describing information of the application (meta data) are stored in the extended repository of the database. Each object is a record in the DataView system tables. You port an application to a target system by first installing DataView there, then exporting the meta data from the source system using the table loader and importing them into the target system. In order to update existing applications and data stock there are options for a selective export and import. Detailed information on that can be found in the chapter -> Exporting and Importing Data.