This tutorial might require some optionally installable components. To ensure that you installed the appropriate optional components, see the System requirements list.
Enterprise Generation Language (EGL) is a development environment and programming language that you can use to write full-function applications quickly, freeing you to focus on the business problem your code is addressing rather than on software technologies.In this tutorial, you will create an EGL web project and import a sample database. You will then create a simple EGL web application that works with this database. The first of the two web pages in your application shows a list of customers from data stored in the database:

The second web page shows details about one customer and allows users to change those details:

EGL is the language that you use to manage the interaction between users and the database:
Each of the two pages pictured above are controlled by EGL logic parts called Handlers, which control the runtime interaction with a user interface. In this case, the Handler parts are JSF Handler parts, Handler parts specialized to control a single web page at run time. A JSF handler's function is invoked by a user click, and the function in turn invokes a library function that you create. The result is that a user working at a web browser can view and alter data stored in a database.
As shown in this tutorial, EGL promotes code reuse in several ways:
DataItem parts are similar to entries in a data dictionary, with each part including details on data size, type, formatting rules, input-validation rules, and display suggestions. You define a DataItem once and can use it as the basis for any number of variables or record fields.
In this tutorial, you create a record part that represents contact information for a customer. This Record part contains data items representing information about a customer, such as first and last name, telephone number, and address. Also, this Record part is specialized, or stereotyped, as an sqlRecord part, to work directly with the database.
A Record part can reference a series of DataItem parts, as shown in this tutorial. If you organize your data in this way, you can realize a more consistent definition of your data parts and can increase efficiency over time. Your changes to a single DataItem part will cause a change in every variable that accesses the related, stored data.
EGL also provides the Data Access Application wizard, which you will use to create the elementary code necessary to access a relational database. This wizard creates EGL parts that have these specific purposes:
The library functions include parameters that are based on the Record parts created by the wizard. You can start to build a robust application just by invoking those functions with arguments that are based on the same Record parts.