Code Examples
Program
An EGL Program part is a generatable logic part with one entry point. Each Program part contains a main function, which represents the logic that runs at program start up. A program can include other functions and can access functions that are outside of the program. The function main can invoke those other functions. Program functions are composed of a set of EGL statements, variables, and constants.
Program HelloWorld const GREETING string = "Hello, "; function main myName string = "John"; sayHello(myName); end function sayHello(name String in) SysLib.writeStdOut(GREETING + name + "!"); end endRecord
An EGL Record part defines a set of data elements. In this example, a record with the name CustomerRecord is defined with 6 fields.
Record CustomerRecord type BasicRecord customerNumber INT; customerName STRING; customerAddr1 STRING; customerAddr2 STRING; customerAddr3 STRING; customerBalance MONEY; endEGL has a specialized type of record called SQLRecord that is used to exchange data with a relational database.
record Employee type sqlRecord { tableNames = ], keyItems =} EMPNUMBER string{ column = "EMPNO", maxLen = 6}; FIRSTNME string{ sqlVariableLen = yes, maxLen = 12}; MIDINIT string{ isSqlNullable = yes, maxLen = 1}; LASTNAME string{ sqlVariableLen = yes, maxLen = 15}; DEPT string{ column = "WORKDEPT", isSqlNullable = yes, maxLen = 3}; PHONENO string{ isSqlNullable = yes, maxLen = 4}; HIREDATE date{ isSqlNullable = yes}; end- In this example, the record Employee is bound to a table (or view) named Employee.
Service
An EGL Service part contains public functions meant to be accessed from other applications or systems. In this example, a service with two functions is defined.
package com.mycompany.services; service EmployeeService function getEmployees returns(Employee) records Employee; // define an empty array of records get records; // retrieve records from the database return (records); // return the records end function addEmployee(emp Employee in) returns (boolean) try add remp; return (true); onException (ex AnyException) return (false); end end end- In EGL, code is organized in packages (like Java (programming language))
- The first function, getEmployees, returns an array of records populated from the records in a database.
- The second function, addEmployee adds a new record to the database and returns a true or false depending on whether the record was added successfully.
RUIHandler
The main component of a Rich UI application is a Rich UI handler part. These parts are generated into JavaScript.
package com.mycompany.ui; import com.mycompany.services.Employee; import com.mycompany.services.EmployeeService; import dojo.widgets.DojoGrid; import dojo.widgets.DojoGridColumn; handler EmployeeView type RUIhandler { initialUI = [ grid ], onConstructionFunction = start, cssFile = "main.css" } grid DojoGrid { behaviors =, headerBehaviors =, columns = [ new DojoGridColumn { displayName = "First Name", name = "FIRSTNAME" }, new DojoGridColumn { displayName = "Last Name", name = "LASTNAME" }, new DojoGridColumn { displayName = "Salary", name = "SALARY" } ] }; function start svc EmployeeService { }; call svc.getEmployees returning to displayEmployees; end function displayEmployees(retResult Employee in) grid.data = retResult as any ; end endRead more about this topic: EGL (programming Language)
Famous quotes containing the words code and/or examples:
“... the self respect of individuals ought to make them demand of their leaders conformity with an agreed-upon code of ethics and moral conduct.”
—Mary Barnett Gilson (1877?)
“There are many examples of women that have excelled in learning, and even in war, but this is no reason we should bring em all up to Latin and Greek or else military discipline, instead of needle-work and housewifry.”
—Bernard Mandeville (16701733)