Get a site

pgDesigner è un programma open source per il disegno grafico di database per PostgreSQL.

Il progetto pgDesigner è stato ideato per fornire un ambiente grafico, open-source e non commerciale, come ausilio per la progettazione e la creazione di database PostgreSQL.

In effetti in commercio esistono applicazioni simili e, sicuramente più avanzate di pgDesigner, ma sono spesso commerciali, non free o soggette a licenze restrittive.

pgDesigner è nato dopo una lunga e infruttuosa ricerca in rete di programmi simili.

Come ben evidenziato dal suo autore (Benoit Misinini) sul sito ufficiale di Gambas, questo linguaggio non vuole assolutamente essere una copia di quello in ambiente Windows, e da quello che ho potuto constatare è effettivamente così.

pgdesigner

Gambas, pur mantenendo la struttura di base del linguaggio Basic, sembra essere intenzionato a correggere molti bachi e lacune del suo antagonista, mantenendo al tempo stesso snellezza e potenza, oltre al fatto che questo è nato e funziona sotto Linux.

Terminata l’osanna a questo linguaggio, parliamo dell’oggetto di questo manuale: pgDesigner.

Attualmente il programma è in uno stato sufficientemente funzionale, con le necessarie basi per sviluppare progetti per la creazione di database per PostgreSQL. L’applicazione si basa essenzialmente su un’unico ambiente (SDI), con cui è possibile disegnare la struttura di un archivio.

Lo sviluppo di PostgreSQL è in continua evoluzione, specialmente in questi ultimi tempi dove sono ben affermati RDBMS come Oracle e DB2, per cui è possibile che alcune nuove implementazioni non siano state ancora aggiunte al programma, ma non disperate…

L’ultima versione  è scaricabile dal repository SVN su sourceforge.net

Elenco caratteristiche:

Nuovo ambiente di sviluppo ottimizzato
Selezione della lingua
Gestione delle dimensioni iniziali della finestra principale dell’applicazione
Gestione della visualizzazione della toolbar
Gestione della visualizzazione del pannello di stato
Gestione della visualizzazione del pannello strumenti
Gestione della visualizzazione dei tooltip
Gestione della posizione delle tab delle schede progetti
Gestione delle impostazioni di default della stampante
Barra menu, con le principali funzioni contenute nel menu generale
Splash screen iniziale
Barra di stato, per la visualizzazione dello stato corrente del progetto e degli oggetti nel diagramma
Toolbar per la selezione e la creazione degli oggetti
Navigatore con l’elenco degli oggetti e dei display del progetto
Mini mappa interattiva del diagramma di progetto
Visualizzazione dei limiti di pagina nel diagramma
Impostazione delle dimensioni e del colore di sfondo del diagramma
Zoom del diagramma
Gestione dei colori degli oggetti nel diagramma
Gestione dei font degli oggetti nel diagramma
Gestione dei prefissi e dei suffissi per i nomi degli oggetti
Modifica manuale della posizione degli oggetti sul diagramma
Selezione del dettaglio degli oggetti nel diagramma
Selezione della modalità di disegno delle relazioni
Posizione degli oggetti nel diagramma tramite trascinamento con il mouse
Riorganizzazione grafica degli oggetti nel diagramma
Menu popup per la gestione degli oggetti nel diagramma
Configurazione generale su file XML
Formato XML unico del file progetto, con estensione personalizzata PGD
Gestione di progetti multipli
Conversione progetti da versioni precedenti
Conversione di progetti tra database diversi
Gestione di database: PostgreSQL, MySQL e SQLite
Importazione e creazione progetti da file sql o da database
Esportazione dei progetti su file sql o su database
Import/export di progetti basati su database di tipo: PostgreSQL, MySQL e SQLite
Gestione delle impostazioni di base del progetto, con la possibilità di inserire descrizione e note generali
Finestra di riepilogo, con le informazioni sullo stato corrente del progetto
Gestione display, con visualizzazione differenziata e selettiva degli oggetti nel diagramma
Finestre personalizzate per la gestione degli oggetti del progetto
Toolbox per la selezione dei tipi per la gestione dei campi di procedura/funzione
Wizard per la creazione delle viste
Possibilità di inserire oggetti di tipo grafico: rettangoli, testi, stamp, immagini
Stampa report di progetto nei formati CSV, PDF, testo e HTML
Salvataggio nel file di progetto dei parametri di connessione al database
Salvataggio automatico dei progetti, con impostazione del periodo
Elenco degli ultimi progetti aperti, con impostazione del numero di voci mostrate nel menu, e la possibilità di eliminare lo storico
Impostazione del database e della versione di default
Gestione della copia di oggetti, con la possibilità di copiare oggetti tra i progetti aperti
Query editor, per l’analisi e la creazione di viste complesse
Preview di stampa del diagramma, con la possibilità di salvare il diagramma come file immagine
Finestra di ricerca di oggetti nei progetti aperti
Funzioni di utilità, quali: configurazione generale, lista e configurazione dei progetti aperti, funzione di codifica/decodifica delle stringhe contenute nei file progetto, informazioni sul sistema e sull’ambiente, spazio disco
Finestra di visualizzazione parziale dei dati di tabella contenuti nel database collegato
Browser interno per la visualizzazione dei report
Gestione centralizzata delle impostazioni generali e dei valori di default per i nuovi progetti
Invio dei progetti e dei report via email
E altro ancora…

Per l’esecuzione di pgDesigner è necessario installare l’intero ambiente di sviluppo o le sole librerie di Gambas2, scaricabili dal sito ufficiale:

http://gambas.sourceforge.net

Per gli utenti di lingua Italiana è disponibile il forum sul sito:

http://www.ldrweb.net

Per creare un nuovo progetto è sufficiente selezionare la relativa voce all’interno del gruppo File del Menu Principale. Viene presentata una finestra di dialogo, in cui potranno essere impostate le proprietà di base del progetto, inclusi il nome e la versione di PostgreSQL che si desidera utilizzare o a cui indirizzare il progetto.

Come mostrato nella figura, oltre al nome e alla combo con l’elenco dei driver PostgreSQL previsti in pgDesigner, è possibile definire in anticipo l’estensione del nuovo file di progetto, inserire il nome dell’autore e una descrizione sommaria del progetto stesso. Tranne che per il nome e il tipo di database, tutti i restanti campi sono facoltativi, o verranno richiesti quando necessario.

Apertura di un Progetto esistente.

pgDesigner prevede la possibilità ripristinare un progetto, caricando le relative informazioni da appositi file strutturati, contenenti tutte le informazioni necessarie. I file sono concettualmente dei file di testo, e sono impostati in modo da contenere tutte le proprietà del progetto e degli oggetti contenuti in esso, comprese tutte le personalizzazioni a livello di display, colore e posizione all’interno del diagramma. Allo stato attuale, sono previsti due tipologie di caricamento, di seguito descritte, essenzialmente basate su file presenti nel sistema in uso.

Sempre per mezzo della relativa voce presente nel Menu Principale, sotto il gruppo File, è possibile caricare un progetto precedentemente salvato su file. Viene presentata una finestra di dialogo che permette di selezionare il file da caricare dal disco in base alla sua estensione (ini o xml). Una volta caricato, l’estensione del file viene impostata come default di progetto e utilizzata nei successivi salvataggi.

Durante il caricamento del file e la decodifica del suo contenuto, verrà visualizzata una barra di progressione, che mostrerà lo stato di avanzamento in tempo reale.

Oltre ai file di progetto standard, è anche possibile creare un progetto caricando un file contenente comandi puramente SQL (esempio l’export diretta da un database). È da tener presente che l’ordine degli oggetti contenuti nel file, e quindi le relative istruzioni SQL, deve rispettare l’ordine di creazione degli oggetti sul database, in caso contrario la funzione di caricamento potrebbe non riuscire ad effettuare i necessari collegamenti e definire correttamente le relazioni tra gli oggetti. Per la creazione verranno presi in considerazione esclusivamente i soli oggetti previsti da pgDesigner, e saranno esclusi dal caricamento tutti quelli non riconosciuti. Da tener presente anche che la complessità di decodificare comandi SQL potrebbe causare errori e quindi l’annullamento del caricamento con conseguente cancellazione del nuovo progetto.

Come per i file di progetto standard, durante il caricamento del file e la decodifica del suo contenuto, verrà visualizzata una barra di progressione, che mostrerà lo stato di avanzamento in tempo reale.

Stampa del Diagramma: Anteprima.
Selezionando la relativa voce presente nel gruppo Progetto del menu principale, viene aperta una finestra, come da figura seguente:

Come si può notare dalla figura, la finestra di anteprima si compone di alcune aree. Superiormente sono presenti alcuni campi che visualizzano la configurazione di stampa corrente, che è possibile modificare tramite il pulsante “Print Setup”. Sulla destra è presente un pannello verticale, su cui vengono visualizzate le miniature delle pagine nelle quali è scomposto il diagramma del progetto; dipendentemente dal formato, dall’orientamento e dalla risoluzione di stampa, il formato di queste miniature può essere diverso. Al centro è presente un pannello su cui viene visualizzata la pagina corrente; il disegno della pagina è per ovvi motivi dimensionato per adattarsi all’area a disposizione, ma dà un’idea di come verrà effettuata la stampa finale.

Una pagina può essere selezionata e visualizzata nel pannello centrale cliccando con il tasto sinistro su una delle miniature mostrate sul pannello laterale; la pagina selezionata verrà disegnata con dimensioni maggiore sul pannello centrale, mentre la miniatura verrà evidenziata da un bordo di colore rosso. In uno dei campi presenti superiormente alla finestra, è visualizzato il numero di pagina corrente e il numero totale di pagine cui è composto il diagramma.

Date le dimensioni del diagramma di progetto, come descritto nei precedenti capitoli, pgDesigner prevede un algoritmo che determina le zone utili alla stampa, eliminando le aree che non contengono oggetti o elementi grafici (vedi aree e linee di relazione); questo, in modo da evitare di stampare inutilmente pagine vuote e sprecare di conseguenza carta (un pò di economia… meno alberi da tagliare…).

Come detto, ogni pagina contiene una sezione del diagramma del progetto; per poter identificare le pagine, su ogni foglio viene disegnato un bordo ed, esternamente, una serie di informazioni, tra cui: il nome del progetto e la data di revisione, la data di stampa e il numero di pagina.

Come accennato, è possibile in qualsiasi momento modificare le impostazioni stampa, accedendo ad una finestra in cui è possibile determinare sia il driver e la stampante di destinazione, sia il formato e l’orientamento delle stampe. Le impostazione resteranno valide anche dopo la chiusura della finestra di anteprima, e riportate sul diagramma.

Come si può notare, nella finestra sono presenti anche due check; il primo permette di ridurre tutto il grafico in una singola pagina. Ovviamente, le dimensioni del grafico possono condizionare pesantemente questa scelta; un grafico molto grande potrebbe risultare illeggibile se ridotto e stampato su un’unica pagina, specialmente in formati di stampa molto piccoli. Il secondo check permette di salvare il grafico su un file immagine.

Altre funzioni: Statistiche del progetto.

La finestra delle statistiche contiene una serie di informazioni strettamente legate allo stato corrente di un progetto. Come si può facilmente vedere nella figura seguente, nella zona superiore della finestra sono visualizzate alcune delle informazioni che sono presenti nella finestra parametri del progetto, ovvero: il nome del progetto, il nome del file che contiene il progetto, la descrizione del progetto, l’estensione usata per il file ed un’icona (o led) ad indicare lo stato di modifica corrente (rosso = modificato).

Nell’area sottostante sono presenti una serie di cartelle che contengono alcune informazioni statistiche: Statistiche, Elenco oggetti, Campi, Display.

Nella cartella “Statistiche” sono presenti i valori corrispondenti al numero di elementi, divisi per tipologia, contenuti nel progetto.

La cartella “Elenco oggetti” contiene l’elenco nominativo e la tipologia di tutti gli oggetti presenti nel progetto. La lista ha anche una funzione attiva, il doppio click del mouse su una riga presente nell’elenco rende attivo l’oggetto corrispondente sul diagramma e apre la relativa finestra per la modifica delle proprietà dell’oggetto stesso.

La cartella “Campi” presenta una lista con il nome di tutti i campi contenuti in tutte le tabelle presenti nel progetto; oltre al nome del campo sono anche visualizzati i riferimenti alla nome della tabella di appartenenza, la tipologia e la dimensione del campo.
Come per la lista contenuta nella cartella precedente l’elenco ha anche funzione attiva, il doppio click del mouse su una riga presente nell’elenco rende attivo la tabella corrispondente sul diagramma e apre la relativa finestra per la modifica delle proprietà dell’oggetto stesso.

L’ultima cartella “Display” contiene l’elenco dei display contenuti nel progetto. Come per le due cartelle precedenti l’elenco ha una funzione attiva, il doppio click del mouse rende attivo il display corrispondente, visualizzandolo nel diagramma corrente.

La finestra delle statistiche dispone anche di un menu, con cui è possibile salvare su file o inviare su stampante gli elenchi degli oggetti descritti.

Se ti è piaciuto l’articolo , iscriviti al feed cliccando sull’immagine sottostante per tenerti sempre aggiornato sui nuovi contenuti del blog:

rss-feed-ubuntu_linux-banner

(Visited 63 times, 1 visits today)