EGL ( Lenguaje de generación empresarial ) es un lenguaje de programación moderno de alto nivel para crear aplicaciones comerciales . Desarrollado por IBM . EGL es similar en sintaxis a otros lenguajes de programación para facilitar el aprendizaje. Los programas EGL generalmente se crean y depuran como un programa EGL y luego se pueden compilar en COBOL , Java o JavaScript .
Cada programa EGL tiene un único punto de entrada: la función main() . Las funciones EGL consisten en sentencias EGL , variables y constantes . Programa que imprime una cadena en la pantalla:
programa hola mundo const SALUDO cadena = "Hola, " ; función principal () miNombre cadena = "Juan" ; decirHola ( miNombre ); final función sayHello ( cadena de nombre en ) SysLib . writeStdOut ( SALUDO + nombre + "!" ); final finalLos conjuntos de datos diferentes se pueden combinar en un Registro ( Record ). Un ejemplo de un CustomerRecord con seis campos:
Registro CustomerRecord type BasicRecord customerNumber INT ; nombre del cliente STRING ; direccióncliente1 STRING ; clientAddr2 STRING ; clienteAddr3 STRING ; saldocliente DINERO ; finalPara el intercambio de datos con DBMS , EGL tiene un tipo de registro especial llamado SQLRecord . El siguiente ejemplo vincula el registro de Empleado a la tabla SQL Empleado :
record Employee type sqlRecord { tableNames =[[ "Employee" ] ] , keyItems =[ EMPNO ] } EMPNUMBER string { column = "EMPNO" , maxLen = 6 }; FIRSTNME string { sqlVariableLen = yes , maxLen = 12 }; cadena MIDINIT { isSqlNullable = yes , maxLen = 1 }; APELLIDO cadena { sqlVariableLen = yes , maxLen = 15 }; DEPT string { columna = "WORKDEPT" , isSqlNullable = yes , maxLen = 3 }; PHONENO string { isSqlNullable = yes , maxLen = 4 }; HIREDATE fecha { isSqlNullable = yes }; finalLos servicios ( Service ) en EGL son conjuntos de funciones que otras aplicaciones pueden utilizar. El ejemplo define un servicio con dos funciones :
paquete com.miempresa.servicios ; servicio EmpleadoServicio función getEmployees () devuelve ( Empleado [] ) registros Empleado [ 0 ] ; // define una matriz vacía de registros obtener registros ; // solicita registros del DBMS return ( registros ); // devuelve el final de los registros función addEmployee ( emp empleado en ) devuelve ( booleano ) intente agregar remp ; retorno ( verdadero ); onException ( ex AnyException ) return ( falso ); final final finalEl código en EGL está organizado en paquetes .