< Indietro | Avanti >

Lezione 3: Creazione del servizio di calcolo del prestito ipotecario

Creare un servizio dedicato per calcolare i pagamenti mensili.

In questa lezione, verrà creata una parte Servizio EGL, che è una parte generabile. È necessario posizionare ciascuna parte generabile in un file sorgente separato ed il nome della parte deve essere uguale al nome del file.

Creazione di una parte Servizio

  1. Nella finestra Esplora progetti, fare clic con il tasto destro del mouse su MortgageServiceProject, quindi fare clic su Nuovo > Servizio.
  2. Nella finestra Nuova parte Servizio EGL, immettere le informazioni riportate di seguito:
    1. Nel campo Package, immettere il seguente nome:
      services
    2. Nel campo Nome file sorgente EGL, immettere il seguente nome:
      MortgageCalculationService
      EGL aggiunge l'estensione file .egl.
    3. Verificare che le opzioni Crea come servizio Web (SOAP) e Crea come servizio Web (REST) non siano selezionate e lasciare vuoto il campo Implementa le interfacce.
      La finestra Nuova parte Servizio EGL mostra il nome del servizio ed il package.
  3. Fare clic su Fine. EGL apre la nuova parte Servizio nell'editor.
  4. Rimuovere il codice dal file, lasciando solo le righe riportate di seguito:
    package services;
    
    service MortgageCalculationService
    
    end
  5. Aggiungere la seguente funzione prima dell'istruzione end:
    	function amortize(inputData MortgageCalculationResult inOut)
    		amt MONEY = inputData.loanAmount;
    		// converte in tasso mensile
    		rate DECIMAL(10, 8) = (1 + inputData.interestRate / 1200);
    		// converte in mesi
    		term INT = (inputData.term * 12);
    
    		// calcola l'importo del pagamento mensile
    		pmt MONEY = (amt * (rate - 1) * Mathlib.pow(rate, term)) /
    				(MathLib.pow(rate, term) - 1);
    		totalInterest MONEY = (pmt * term) - amt;
    		
    		// aggiorna il record dei risultati
    		inputData.monthlyPayment = pmt;
    		inputData.interest = totalInterest;
    	end
    Quando viene incollato il codice da tali istruzioni, la formattazione potrebbe essere modificata. Premere Ctrl+Maius+F per formattare nuovamente il codice. È possibile modificare le regole di formattazione facendo clic su Finestra > Preferenze > EGL > Editor > Programma di formattazione.
    Nota:
    EGL contrassegna gli errori del codice con una X rossa nel margine sinistro ed una linea rossa ondulata al di sotto dell'errore. Posizionare il cursore sulla X per visualizzare un messaggio di errore.
    Gli errori sono contrassegnati con linee rosse ondulate ed X rosse nel margine.

    Poiché non è ancora stato definito un tipo denominato MortgageCalculationResult, EGL non è in grado di creare la variabile inputData basata su tale tipo. Quando viene creato questo tipo Record nell'esercizio successivo, EGL rimuoverà i contrassegni di errore dalla visualizzazione.

  6. Salvare il file facendo clic su File > Salva.

Creazione di una parte Record

La funzione amortize() utilizza un record MortgageCalculationResult. È possibile definire tale record nello stesso file in cui è definita la parte Servizio.

Per creare la parte Record:

  1. Aggiungere il codice riportato di seguito dopo la funzione amortize() nel file MortgageCalculationService.egl. Il Record è una parte, per cui viene definito al di fuori della parte Servizio, dopo l'istruzione end finale nel file:
    record MortgageCalculationResult
    	// input utente
    	loanAmount MONEY;
    	interestRate DECIMAL(10,8);
    	term INT;
    
    	// campi calcolati
    	monthlyPayment MONEY;
    	interest MONEY;
    end
  2. Salvare il file. EGL non dovrebbe più visualizzare contrassegni di errore nel codice. Se vengono visualizzati errori nel file sorgente, confrontare il codice con il contenuto del file in Codice terminato per MortgageCalculationService.egl dopo la Lezione 3. Durante l'esercitazione, potrebbero essere visualizzate delle X rosse accanto al progetto o accanto ad una delle cartelle in esso contenute, ma non visualizzati errori nel file stesso. In questo caso, fare clic su Progetto > Pulisci. Nella finestra Pulisci, fare clic su Pulisci progetti selezionati in basso, quindi fare clic sul progetto appropriato, come, ad esempio, MortgageServiceProject.
    Il progetto MortgageServiceProject viene selezionato dall'elenco.
    Fare clic su OK. EGL rigenera il progetto selezionato e la X rossa viene rimossa dalla vista Esplora progetti.
  3. Chiudere il file facendo clic sulla X visualizzata accanto al nome del file nella scheda nella parte superiore dell'editor oppure facendo clic su File > Chiudi.

Riepilogo della lezione

È stato illustrato come completare le seguenti attività:
  • Creazione di una parte Servizio EGL
  • Creazione di una parte Record EGL ed aggiunta di tale parte al file sorgente per il Servizio
  • Ricerca degli errori nel codice

Nella lezione successiva, verrà creata l'interfaccia utente per il primo portlet dell'applicazione.

< Indietro | Avanti >

Feedback