< Anterior | Siguiente >

Lección 3: Crear un servicio de cálculo de hipoteca

Cree un servicio dedicado para calcular las cuotas mensuales.

En esta lección, creará un componente Service de EGL, que es un componente generable. Debe colocar cada componente generable en un archivo fuente separado, y el nombre del componente debe ser el mismo que el nombre del archivo.

Crear un componente Service

  1. En la ventana Explorador de proyectos, pulse con el botón derecho sobre MortgageServiceProject y, a continuación, pulse Nuevo > Servicio.
  2. En la ventana Componente de servicio EGL nuevo, especifique la siguiente información:
    1. En el campo Paquete, escriba el nombre siguiente:
      services
    2. En el campo Nombre de archivo fuente EG, escriba el nombre siguiente:
      MortgageCalculationService
      EGL añade la extensión de archivo .egl.
    3. Verifique que los recuadros de selección Crear como servicio web (SOAP) y Crear como servicio web (REST) están desmarcados y deje vacío el campo Implementa interfaces.
      La ventana Componente de servicio EGL nuevo muestra el nombre de servicio y el paquete.
  3. Pulse Finalizar. EGL abre el componente Service nuevo en el editor.
  4. Elimine el código del archivo y deje solamente las líneas siguientes:
    package services;
    
    service MortgageCalculationService
    
    end
  5. Añada la siguiente función antes de la sentencia end:
    	function amortize(inputData MortgageCalculationResult inOut)
    		amt MONEY = inputData.loanAmount;
    // convertir a tipo mensual
    		rate DECIMAL(10, 8) = (1 + inputData.interestRate / 1200);
    // convertir a meses
    		term INT = (inputData.term * 12);
    
    // calcular importe de la cuota mensual
    		pmt MONEY = (amt * (rate - 1) * Mathlib.pow(rate, term)) /
    				(MathLib.pow(rate, term) - 1);
    		totalInterest MONEY = (pmt * term) - amt;
    		
    // actualizar registro de resultado
    		inputData.monthlyPayment = pmt;
    		inputData.interest = totalInterest;
    	end
    Cuando se pega el código de estas instrucciones, el formato podría cambiar. Pulse Ctrl+Mayús+F para volver a formatear el código. Puede cambiar las reglas de formato pulsando Ventana > Preferencias > EGL > Editor > Formateador.
    Nota:
    EGL marca los errores de código con una X roja en el margen izquierdo y una línea roja ondulada debajo del error. Mueva el cursor por encima de la X para ver un mensaje de error.
    Los errores se marcan con líneas rojas onduladas y con X rojas en el margen.

    Como todavía no ha definido un tipo denominado MortgageCalculationResult, EGL no puede crear la variable inputData en función de dicho tipo. Cuando cree este tipo de registro en el siguiente ejercicio, EGL eliminará los marcadores de error de esta pantalla.

  6. Guarde el archivo pulsando Archivo > Guardar.

Crear un componente Record

La función amortize() utiliza un registro MortgageCalculationResult. Puede definir este registro en el mismo archivo que el componente Service.

Para crear el componente Record:

  1. Añada el siguiente código después de la función amortize() en el archivo MortgageCalculationService.egl. Record es un componente y, por tanto, se define fuera del componente Service, es decir, después de la sentencia end final del archivo:
    record MortgageCalculationResult
    // entrada de usuario
    	loanAmount MONEY;
    	interestRate DECIMAL(10,8);
    	term INT;
    
    // campos calculados
    	monthlyPayment MONEY;
    	interest MONEY;
    end
  2. Guarde el archivo. EGL no debería visualizar más marcadores de errores en el código. Si ve errores en el archivo fuente, compare el código con el contenido del archivo en Código terminado para MortgageCalculationService.egl después de la Lección 3. Mientras realiza los pasos de la guía de aprendizaje, es posible que vea X rojas junto al proyecto o junto a una de las carpetas debajo del mismo y, sin embargo, es posible que no vea errores en el propio archivo. Si se encuentra con esta situación, resuélvala pulsando Proyecto > Limpiar. En la ventana Limpiar, pulse Limpiar los proyectos seleccionados más abajo y, a continuación, pulse en el proyecto apropiado, como por ejemplo MortgageServiceProject.
    El proyecto MortgageServiceProject se selecciona de la lista.
    Pulse Aceptar. EGL reconstruye el proyecto seleccionado y la X roja se elimina de la vista Explorador de proyectos.
  3. Cierre el archivo pulsando en la X que hay junto al nombre de archivo de la pestaña en la parte superior del editor o pulsando Archivo > Cerrar.

Punto de comprobación de lección

Ha aprendido a realizar las tareas siguientes:
  • Crear un componente Service de EGL
  • Crear un componente Record de EGL y añadirlo al archivo fuente para el componente Service
  • Compruebe si hay errores en el código

En la lección siguiente, creará la interfaz de usuario para el primer portlet de la aplicación.

< Anterior | Siguiente >

Comentarios