Un componente de biblioteca se declara en un archivo EGL, que está descrito en Formato fuente EGL.
Library CustomerLib3 // Declaraciones Use Use StatusLib; // Declaraciones Data exceptionId ExceptionId ; // Recuperar un cliente para un correo electrónico // Entrada: cliente, con emailAddress establecido // Salida: cliente, estado Function getCustomerByEmail ( customer CustomerForEmail, status int ) status = StatusLib.success; try get customer ; onException exceptionId = "getCustomerByEmail" ; status = sqlCode ; end commit(); end // Recuperar un cliente para un ID de cliente // Entrada: cliente, con ID de cliente establecido // Salida: cliente, estado Function getCustomerByCustomerId ( customer Customer, status int ) status = StatusLib.success; try get customer ; onException exceptionId = "getCustomerByCusomerId" ; status = sqlCode ; end commit(); end // Recuperar varios clientes para un correo electrónico // Entrada: startId // Salida: customers, status Function getCustomersByCustomerId ( startId CustomerId, customers Customer[], status int ) status = StatusLib.success; try get customers usingKeys startId ; onException exceptionId = "getCustomerForEmail" ; status = sqlCode ; end commit(); end end
El diagrama de un componente de biblioteca es el siguiente:
Para conocer otras reglas, consulte Convenios de denominación.
Por omisión, la biblioteca es de tipo basicLibrary.
Todas son opcionales:
Record aRecordPart type basicRecord 10 myItem01 CHAR(5); 10 myItem02 CHAR(5); end
myRecord aRecordPart;
myValue = myRecord.myItem01;
myValue = myItem01;
Se recomienda aceptar el valor por omisión, que ofrece un mejor resultado. Especificando el nombre de contenedor, se reduce la ambigüedad para quien lea su código y para EGL.
EGL utiliza un conjunto de reglas para determinar el área de la memoria a la que hace referencia un nombre de variable o un nombre de elemento. Para conocer detalles, consulte Referencias a variables y constantes.
El único valor disponible para callingConvention es I4GL: Para conocer más detalles, consulte la sección Componente de biblioteca de tipo nativeLibrary.
Para conocer más detalles, consulte la sección Componente de biblioteca de tipo nativeLibrary.
Para obtener más detalles, consulte VGVar.handleHardIOErrors y Manejo de excepciones.
Si la biblioteca utiliza funciones compartidas que no están en ella, la generación sólo es posible si establece la propiedad includeReferencedFunctions en yes.
Si especifica no, los identificadores se comparten en toda la unidad de ejecución. Los identificadores creados cuando las sentencias SQL de la biblioteca se invocan están disponibles en otro código que invoca la biblioteca, aunque el otro código puede utilizar localSQLScope = yes para bloquear el acceso a esos identificadores. Además, la biblioteca puede hacer referencia a los identificadores creados en el programa invocante o pageHandler, pero solo si las sentencias relacionadas con SQL se hubieran ejecutado ya en el otro código y si el otro código no bloqueara el acceso.
En cualquier caso, los identificadores disponibles cuando el programa o pageHandler accede a la biblioteca están disponibles cuando el mismo programa o pageHandler accede a la misma o a otra función de la misma biblioteca.
No puede especificar private para una función en una biblioteca de tipo nativeLibrary.
El componente actúa como un modelo de formato, tal como se describe en Typedef.
El componente actúa como un modelo de formato, tal como se describe en Typedef.
Un registro básico no tiene propiedades.
Conceptos relacionados
Proyectos, paquetes y archivos EGL
Componente de biblioteca de tipo basicLibrary
Componente de biblioteca de tipo nativeLibrary
Visión general de las propiedades de EGL
Referencias a componentes
Referencias a variables en EGL
Typedef
Consulta relacionada
Componente de registro básico en formato fuente EGL
Componente DataTable en formato fuente EGL
Formato fuente EGL
Manejo de excepciones
Componente de función en formato fuente EGL
Componente de registro indexado en formato fuente EGL
Formulario de entrada
Registro de entrada
Valores de error de E/S
Propiedades de ejecución de Java (detalles)
Componente de registro MQ en formato fuente EGL
Tipos primitivos
Componente de registro relativo en formato fuente EGL
Componente de registro serie en formato fuente EGL
Componente de registro SQL en formato fuente EGL
Componente de registro de UI en formato fuente EGL
Declaración use
VGVar.handleHardIOErrors