Le operazioni CRUD sono la base di tutte le applicazioni orientate ai database. Con database di decine o centinaia di tabelle, un buon componente CRUD è la chiave per avere utenti soddisfatti e per migliorare i tempi di sviluppo.

Form puliti ed eleganti

Portofino fornisce form semplici ed eleganti sia per la visualizzazione che per la modifica.

Sono gestiti diversi tipi di campi: campi di testo singoli o multiriga, valori numerici con precisione e scala, date, liste di selezione, bottoni radio, e allegati.

Viste Master-detail

Le pagine CRUD possono essere organizzate in una gerarchia master-detail. Da un oggetto di primo livello, naviga gli oggetti collegati  di secondo livello. Dal secondo livello procedi con quelli del terzo e così via.

URL chiari

Portofino crea URL per gli oggeti del CRUD semplici e significativi. Per esempio una milestone con id 3 collegata ad un progetto con id 1 avrà come URL "/prj/1/milestone/3".

Validazione dei campi

I form controllano che l'utente abbia inserito i campi obbligatori e che i valori siano del tipo richiesto e nell'intervallo specificato. Se questo non accade, viene visualizzato un messaggio di errore.

Si possono definire validazioni più complesse a seconda delle tue esigenze applicative.

Campi con auto completamento

I campi con auto completamento facilitano la scelta quando si hanno un gran numero di opzioni.

Allegati

Alcuni campi richiedono il caricamento di allegati. Portofino rende questo processo molto semplice sia per l'utente, sia gestendo la complessità della memorizzazione e della gestione degli allegati sul server.

Aggiornamenti multipli

A volte puoi voler aggiornare un insieme di oggetti in una volta sola. Seleziona gli oggetti, premi su "edit", seleziona i campi che vuoi modificare (gli altri non saranno considerati), inserisci un valore e infine premi su "aggiorna".

Form di ricerca

I form di ricerca permettono all'utente di trovare l'informazione desiderata anche fra una grande quantità di oggetti.

Gli utenti possono fare apparire il form di ricerca con il pulsante mostra/nascondi mentre tu puoi configurare quali campi permetteranno la ricerca.

Risultati della ricerca

I risultati della ricerca sono mostrati in una tabella elegante. I risultati con molti oggetti sono paginati e gestiti efficentemente da un punto di vista delle prestazioni. I risultati si possono poi ordinare per una specifica colonna.

Navigazione dei risultati

Quando selezioni una riga dei risultati, per vedere i suoi dettagli, puoi continuare la navigazione dei risultati utilizzando i link a primo/precedente/successivo/ultimo.

Esportazioni in Pdf ed Excel

Puoi esportare i risultati di una ricerca in Excel e Pdf con un solo click. Utilizzando un template FOP puoi modificare come visualizzare i tuoi risultati in pdf, aggiungere un logo oppure applicare altre regole di formattazione o personalizzazioni.

Query HQL

Vediamo come funzionano i CRUD dietro le quinte tramite una configurazione che puoi modificare in modo semplice on line.

Portofino integra Hibernate per l'accesso ai dati e la persistenza. Alla base della configurazione del CRUD c'è una query HQL (Hibernate Query Language) che definisce la tabella da interrogare, eventuali criteri di filtro e l'ordinamento di default dei risultati.

Definizione delle proprietà

Una proprietà è una colonna restituita da una query HQL. Per ogni proprietà puoi definire:

  • se è abilitata (le proprietà disabilitate non sono visibili)
  • un'etichetta opzionale per sostitutire il nome di default
  • se può essere inserita dall'utente in creazione o in aggiornamento
  • se deve essere mostrata nei risultati di una ricerca
  • se è ricercabile e appare nel form di ricerca

Selection provider

Se una colonna fa riferimento ad un'altra tabella, puoi configurare come questa relazione sarà gestita dal sistema e come verrà presentata all'utente.

Permessi

Puoi decidere i permessi sul CRUD attraverso i permessi della pagina. Puoi assegnare i permessi di crezione/modifica/cancellazione ai gruppi di utenti del sistema.

Script di personalizzazione

Puoi personalizzare qualsiasi aspetto del CRUD utilizzando l'editor dello script. Modificando lo script puoi:

  • aggiungere nuovi bottoni, ad esempio per operazioni sul workflow
  • rispondere a chiamate AJAX
  • personalizzare le validazioni
  • impostare dei valori di default durante la creazione di oggetti
  • personalizzare le operazioni durante il salvataggio, l'aggiornamento e la cancellazione degli oggetti
  • aggiungere permessi e guardie
  • e molto altro...

Gli Script sono scritti in Groovy e hanno accesso a tutte le funzioni delle API di Portofino.