Entità e Oggetti


Ogni elemento contenuto in un progetto viene trattato come un oggetto ben definito, con le sue proprietà e caratteristiche, che serviranno poi a costruire fisicamente l'elemento nel database. Queste proprietà vengono salvate nel file di progetto, insieme alla posizione all'interno del grafico, compresa la posizione assunta all'interno di ogni vista definita all'interno del progetto. La successiva lettura dal file di progetto, ripristinerà le proprietà e le posizioni precedentemente salvate, comprese le loro posizioni nel grafico.

Ogni singolo oggetto, a livello visivo e ad eccezione degli oggetti di tipo relazione, testo e aree, viene mostrato sul grafico come una piccola finestra, completa di titolo (nome dell'oggetto), e di eventuali altri dettagli (ad esempio i campi di una tabella). Un'apposita icona, presente alla sinistra del titolo, permette di identificare visivamente la tipologia (o gruppo) dell'oggetto.

Oltre all'icona di gruppo, per poter distinguere un oggetto da un altro, ogni elemento deve avere obbligatoriamente un nome, che deve unico all'interno dello stesso progetto. Il nome viene impostato in fase di creazione, ma può essere modificato successivamente (ovviamente rispettando la logica di obbligatorietà e unicità). Questa logica è valida anche per PostgreSQL, che non permette di avere più oggetti con lo stesso nome, anche se di diversa natura.

Per quanto riguarda gli oggetti di tipo tabella e vista, è possibile rendere visibili sul grafico anche i loro campi. Per le tabelle vengono visualizzati: nome del campo, tipo e dimensione; inoltre, se appartenenti ad un indice, il tipo di indice (unico, primary key, foreign key...). Le viste visualizzano i soli nomi dei campi. Sulla destra di ogni campo, viene visualizzata un'icona, che identifica se questo è una chiave primaria, una foreign-key oppure un normale campo.

E' possibile impostare il dettaglio del contenuto degli oggetti condizionandone l'aspetto grafico all'interno del diagramma; ad esempio per le tabelle e le viste, è possibile visualizzarne o meno i campi.

Per quanto riguarda gli oggetti di tipo relazione questi, per ovvi motivi, seguono una logica completamente diversa; la loro rappresentazione grafica è dipendente dalla presenza e la posizione delle tabelle collegate. Le relazione viene visualizzata sotto forma di una linea, che può essere continua o tratteggiata, dipendentemente dal tipo di collegamento (obbligatorio o altro) tra le due tabelle. Allo stato attuale non è possibile muovere manualmente una relazione, il cui disegno questa viene effettuato automaticamente dal programma. Sono comunque a disposizione alcune possibilità di personalizzazione, usate dal motore interno all'applicazione, che condizionano alcuni aspetti visivi e il tracciamento di una relazione: tipo di collegamento e tipo di aggancio tra le due tabelle. Tramite la prima impostazione è possibile definire come la linea viene tracciata dalla tabella padre alla tabella figlia, che può essere solo in due modalità: con una linea retta diretta o con una linea composta da segmenti orizzontali e verticali perpendicolari, i cui punti di inizio e fine vengono collegati alle due tabelle. La seconda impostazione permette come i punti di attacco alle due tabelle vengono calcolati rappresentati sul grafico: sui bordi inferiore e superiore della tabella o in corrispondenza dei campi in relazione; nel primo caso la linea viene tracciata partendo dal bordo inferiore della tabella padre e termina sul bordo superiore della tabella figlia, questi due punti vengono rappresentati in tempo reale, in corrispondenza dello spostamento di una delle due tabelle, e la loro posizione viene determinata in maniera automatica anche considerando l'esistenza di altre relazioni presenti sulla stessa tabella; nel secondo caso, i punti di aggancio partono dal lato destro della tabella padre in corrispondenza del primo campo che fa parte della relazione, e termina sul lato sinistro della tabella figlia sempre in corrispondenza del primo campo in relazione.

Il punto di partenza della linea di relazione è rappresentato da un piccolo quadratino, mentre il punto finale si presenta come una punta di freccia, questa impostazione permette di capire subito la direzione della relazione e come le due tabelle sono collegate tra loro. Come per gli altri oggetti, è possibile selezionare e rendere attiva una relazione, con il click del mouse in corrispondenza della linea o sui punti di attacco; se la visualizzazione delle Etichette è attiva, anche il click del mouse sul nome della relazione, che viene visualizzata nel punto centrale della linea, permetterà la selezione della relazione. Il doppio click su una relazione aprirà la finestra di modifica per la gestione delle proprietà dell'oggetto.